登录
首页 运动控制 运动控制
回帖 发帖
正文

主题:伺服或步进在触摸屏上的距离显示

点击:3187 回复:7

最近接到两个“案子”,一个用伺服电机,一个用步进电机,都要求用触摸屏调整运行距离。第一次用伺服及步进(汗!),最后程序到是出来了,但是在屏上面距离只能用PLC输出的脉冲数来调整,用户自己要用“脉冲数╳每脉冲对应的距离”(手算)才知道实际调整的距离,使用起来很不方便。
因为<每脉冲对应的距离>应该是用<丝杠转动1圈的移动距离>除以<电机转动1圈所用脉冲数>. 这个好象要用到浮点数运算,所以要直接用距离来表示的话,在PLC内部就要用到浮点数运算,而我用的FX1N不支持浮点数,很郁闷,就去请教一个同行,问他是否一定要用浮点数运算,此人“嗯”一声不作回答。过了两天突然想起可以用下面的方式解决,根本不用浮点数运算。
设丝杠与步进电机直联,每转动1圈移动5mm,步进电机转动1圈为1600个脉冲(驱动器上的细分设置),则0.1mm就对应1600/50=32,也就是说每32个脉冲就对应丝杠移动0.1mm,这样,我只要把屏上设定的距离数╳32就是PLC要输出的脉冲数,只用整数乘法运算就行了。
比如屏上设定距离为:0.5mm,要输出的脉冲数为:5╳32=160(注意:屏上的数据输入格式设为带小数点的整数,用户看到的是有一个小数,输入到PLC的实际上是没有小数的整数!).
不知其他同行是不是也是用这种方式,如果有其他方式能否告知一下?
10-08-29 12:42
一般都是这样做
10-08-29 15:36
如果显示要求精确到0.01mm.
电机每转一圈的脉冲数为1600脉冲
丝杆螺距=5
如上:每0.01mm=3.2个脉冲
上述计算,PLC是无法运行的了。因为脉冲只是整数。因此把所有的数据都放大10倍
即16000/5000=32
设定距离为=L
计算方式:L*32/10=实际输出数。
因此屏上标称单位为=um (微米)
精度误差为1个脉冲数
10-08-29 17:33
可以用1PG单元试试。
10-08-29 20:38
多谢三楼指教!
10-08-29 20:47
可以采用运动控制卡,采用PC 就非常简单了!
10-09-08 20:33
我和3楼的一样!也这样用的!
10-09-08 21:16
用到伺服,数据处理是经常有的事,只要算法对了,那种方式处理都OK。
10-09-09 18:07

工控新闻

更多新闻资讯