西门子代理|赣州PLC模块总代理西门子代理|赣州PLC模块总代理
北京回收西门子数控主板/板子重庆回收西门子数控主板/板子
天津回收西门子数控主板/板子上海回收西门子数控主板/板子河北回收西门子数控主板/板子石家庄回收西门子数控主板/板子
唐山回收西门子数控主板/板子秦皇岛回收西门子数控主板/板子邯郸回收西门子数控主板/板子
邢台回收西门子数控主板/板子保定回收西门子数控主板/板子
1、用编码器测量电机转速与频率
主程序:
子程序:
中断程序:
以上的程序中,在主程序中,用I0.7的上升沿调用高速计数器初始化子程序,做一个高速计数器初始化的子程序,是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,这里没有写入初始值和预设值,定义的是高速计数器HSC0和HSC模式1,激活高速计数器,还做了高速计数器中断,我们设置定时中断0的时间间隔为100ms,因为SMB34的定时中断0为中断事件号10,我们建立中断程序0和中断事件10的中断连接,并全局允许中断。
再看一下中断程序,因为是100ms的定时中断,每100ms执行一次中断程序。我们就用100ms计算的脉冲个数,再乘以600化成1分钟的脉冲个数,再除于分辨率就是等于转速,程序中的500就是编码器的分辨率。而对于编码器的频率的计算,我们有这样一个公式,频率/工频50Hz=转速/工频下的转速,频率=(转速/工频下的转速)*工频50Hz,这里我们先把双整数的转速转换成实数,再除以工频下的转速1488.0,再乘以工频50.0Hz,那么就得到了编码器的频率了。
2、用编码器测量机床位置,不论机床朝正方向移动或朝反方向移动,都能知道机床的当前位置,有一原点位置感应开关I0.7,当原点位置感应开关接通时,机床的当前位置为0。假设编码器的分辨率为1024,丝杆的进给量即转1圈移动的位置为10,计算公式是当前值除以分辨率,再乘于进给量。
主程序:
子程序:
以上的程序中,做一个高速计数器初始化的子程序,是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,这里没有写入初始值和预设值,定义的是高速计数器HSC0和HSC模式1,激活高速计数器。
在主程序中,用I0.7的上升沿调用高速计数器初始化子程序。是做机床朝正方向移动的控制,做个起保停程序,当I0.3接通时,Q0.0接通并自锁,在Q0.0接通的上升沿传送16#B8到SMB37(加计数不更新当前值),激活高速计数器。是做机床朝反方向移动的控制,做个起保停程序,当I0.4接通时,Q0.1接通并自锁,在Q0.1接通的上升沿传送16#B0到SMB37(减计数不更新当前值),激活高速计数器。
后面还做了一个用SM0.1常闭触点的上升沿来调用高速计数器初始化的子程序,并且用SM0.1的常开触点来驱动传送指令传送VD1000的值到SMD38,用SM0.1的常闭触点来驱动传送指令传送HC0的值到VD1000,这里是为了实现停电保持功能。PLC从STOP拨向RUN时,在个扫描周期之后会传送HC0的计数值到VD1000里面进行存储,当PLC断电后再从STOP拨向RUN时,SM0.1接通一个扫描周期,把VD1000存储的计数器传到到SMB38,那么当前值就是存储在VD1000里面的值。再做一个计算,把双整数HC0的当前值转换成实数,再进行HC0的当前值除以分辨率1024.0,再乘于进给量10.0,这样就可以测量出机床位置。
西门子代理,赣州PLC模块,总代理,DP电缆,交换机,西门子代理,赣州PLC模块,总代理,DP电缆,交换机,西门子代理,赣州PLC模块,总代理,DP电缆,交换机,西门子代理,赣州PLC模块,总代理,DP电缆,交换机,西门子代理,赣州PLC模块,总代理,DP电缆,交换机
西门子代理,赣州PLC模块,总代理,DP电缆,交换机
西门子代理,赣州PLC模块,总代理,DP电缆,交换机