S7-200读取三菱伺服电机ABS绝对位置?

三菱的ABS绝对位置系统用S7-200如何编程读取?

问题补充:
三菱的ABS数据是这样发送的(共发送32位二进制ABS数据+6位二进制和效验数据):
   ① PLC在内部伺服开启的上升沿,将ABS传送模式(ABSM)和伺
   服开启(SON)置ON。
   ② 伺服放大器收到ABS传送模式信号,检测并计算绝对位置后,将ABS发送数据准备完毕信号(ABST)置ON,并告诉PLC发送数据已经准备完毕。
   ③ PLC收到ABS发送数据准备完毕(ABST)信号后,将ABS请求(ABSR) 置ON。
   ④ 伺服放大器收到ABS请求信号(ABSR)后,输出ABS低2位数据并将ABS发送
   数据准备完毕(ABST) 置OFF。
   ⑤ PLC确认ABS发送数据准备完毕信号(ABST)为OFF(已经输出ABS 2位数据)
   后,读取ABS低2位,随后将ABS请求信号(ABSR)置OFF。
   ⑥ 伺服放大器将ABS发送数据准备完毕信号(ABST)置ON后,准备下一次传送。
   随后重复3~6的操作,直到完成32位数据和6位和校验数据的发送为止。
   ⑦ PLC和校验后,将ABS传送模式信号(ABSM)置OFF。如果在数据发送过程
   中ABS传送模式信号(ABSM)已经为OFF,ABS传送模式中断。

  补充:也就是说PLC要分16次收完一个32位的1111010101010……
  然后把16个2位二进制数相加,再跟伺服放大器发送的和效验数据作比较,如果相同表示绝对位置输出正确。把这个32位的二进制数转换为十进制数,就是想要的的ABS绝对位置数据了。

最佳答案

读取什么?

  我倒是写过读数据的例子,和你的有点差别吧
  给个信号,上位给个响应信号,读低2位数据,读完复位信号,将数据左移2位
  再次按上面方法读取,读了64位的数据
  感觉和你的差不多

  补充:
 程序已经发给你了

提问者对于答案的评价:
多谢兄弟了!!!!

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc358616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论