例:转动电子手轮,向正方向转,步进电机正转,向反方向转,步进电机反转。步进电机的转速与电子手轮的转速成正比。
编码器的A、B相信号送入PLC,PLC带一个脉冲模块,脉冲模块输出的脉冲给步进电机驱动器。
以S7-200为例: 1、方向判别:A的上升沿“置位”中间继电器M0.0,B的上升沿“复位”M0.0;M0.0导通一个自加1(从0开始)的加法运算,输出给VD100(选VD字节长以免数据溢出),,,同样B的上升沿“置位”M0.1,A的上升沿“复位”M0.1;M0.1导通一个自加1(从0开始的)加法运算,输出给VD104。。。最后用A的上升沿触发比较VD100>VD104?输出的结果给方向输出,同时A的上升沿对VD100和VD104清零(赋值0给他们)。。。利用系统程序运算周期作为基本周期虽然精度不准确,但作为判断方向足够了,如果自加1出现数据溢出,适量改为自加10或100。。。将M0.1换为M0.0取非去触发VD104的自加也可以。。。
2、速度判别:在方向判别后,速度的判别就可以只采样A相或B相了,其实这就是个频率和数字量之间的转换了,客观的说,无论您的PLC的CPU运算能力多快,采样周期多短,速度必然会出现延迟和失真,因为您只能让PLC发出单位时间内的平均速度脉冲。。。如果做倍频,可以这
如何设计电子手轮的编程
最新推荐文章于 2024-07-10 16:43:54 发布
本文介绍了如何通过编程控制电子手轮实现步进电机的正反转及速度控制。利用编码器的A、B相信号输入到PLC,结合脉冲模块输出控制步进电机。详细阐述了方向判别、速度判别的方法,并探讨了位置控制的复杂性,提供了一些实用的编程技巧和注意事项。
摘要由CSDN通过智能技术生成