发表于:2023/5/29 10:36:24
#10楼
以下是引用HSC316在2023/5/29 9:17:39的发言:
大神你好:
你的回复意思是不是最后在将5000个脉冲存放在断电保持寄存器中,比如D220 ,然后就可以定位了。DDRVA D220 D222 Y0 Y1 。
触摸屏上只需要将要走的距离做进去即可? 那我的D8340是不是就不需要了?或者可以不可以直接将D8340 DMOV D200 ,D200 DMOV D220 中开始定位,这样可以吗?
大神你好:
你的回复意思是不是最后在将5000个脉冲存放在断电保持寄存器中,比如D220 ,然后就可以定位了。DDRVA D220 D222 Y0 Y1 。
触摸屏上只需要将要走的距离做进去即可? 那我的D8340是不是就不需要了?或者可以不可以直接将D8340 DMOV D200 ,D200 DMOV D220 中开始定位,这样可以吗?
[此贴子已经被作者于2023/5/29 9:32:52编辑过]
不一定要放在断电保持寄存器,随便哪个都可以
DDRVA D220 D222 Y0 Y1 这条指令 D220是距离,也就是电机转多少圈。D222是速度。
一般的做法是速度D222直接放在触摸屏上面,距离大部分是要转换的,
因为工艺上我们输入的是工程量比如多少毫米,但定位指令只认识脉冲数量,所以需要转换。大概怎样转换7楼已经说了。
你需要做的是在触摸屏上做一个浮点数的输入,假设D200,在程序里面先用D200除以0.001,(DEDIV D200 E0.001 D300),
结果在D300,这个D300是浮点数,定位指令不能用,需要用DINT转成整数,(DINT D300 D220)
D8340是一个脉冲显示,相当于是一个实际位置,可用可不用,有些需要在触摸屏上显示实际位置就需要用上
但要求显示的也是工程量单位,所以也需要进行转换
DMOV D8340 D400 先把它传给一个普通寄存器
DFLT D400 D410 转成浮点数
DEMUL D410 E0.001 D420 乘以转换系数
最后把D420显示在触摸屏上即可
大家一起学习