S7200与伺服电机进行Modbus通讯控制

我通过modbus给第三方伺服电机的命令触发器(参数编号:P5-07) ,见图6,写数据来对伺服电机进行位置控制,首先能确定的是我在伺服调试软件里直接写1执行第一段路经,写2执行第二段路经,都没有问题,但是我通过PLC以modbus方式发数据给P5-07,却没有动作,我的程序思路是:0对应伺服原点复归,1对应伺服执行第1段预设路径,2对应伺服执行第2段预设路径,3对应伺服执行第3段预设路径..我在西门在PLC程序里,我把0赋给VW0,1赋给VW2,2赋给VW4....,然后我调用PROT0主站程序,对伺服子站进行写操作,见图片1到5是我写的程序,如程序中的把&VB2地址的值写给41295,让伺服走预设的第一段路经,把&VB2地址的值写给41295,让伺服走预设的第二段路经...,但是却一直没有实现,调了好几天了,也没调试出来,很是郁闷,我的问题如下:
1:第三方命令触发器的地址为050EH,映射到modbus地址为:40001+1294 (050E转化为十进制为1294),首先,这个地址41295对不对?
2:我发送的是1个字长度对不对,还是应该发送2个字的长度?
3:我抓图中的modbus写子站程序对不对? M1.3是伺服定位完成并且气缸动作完成后自动给出来的下一次启动信号。
4:我看到MB15也没有报错信息,怎么判断PLC的数据是否已经发出来了?是否可以用软件仿真一下,需要什么连接线呢
5:顺便说一句,伺服是台达A2系列的,哪里可以找到用modbus方式控制伺服的参考案例呢?
废话有点多,要是大家有跟台达伺服modbus相关经验,请不吝施教,谢谢!

图片说明:

S7200与伺服电机进行Modbus通讯控制    S7200与伺服电机进行Modbus通讯控制    S7200与伺服电机进行Modbus通讯控制    S7200与伺服电机进行Modbus通讯控制    S7200与伺服电机进行Modbus通讯控制    S7200与伺服电机进行Modbus通讯控制   

最佳答案

1.你的触发器的地址为050EH,并不代表它映射到modbus的地址就是简单的累加关系,你需要查询伺服驱动器的手册来确定它的modbus的地址;按照你这个,有可能地址是41294和41295;
2.你发送的字的长度确实是一个字,至于到底要发几个字取决于你需要几个字
3.从站字程序是写在从站CPU的,你这里对应的是驱动器,应该不需要写子站程序;
4.只能通过DONE位,或者你可以用第三方modscan软件检测自己的程序;
5.我之前用的台达A2,是用金鼎旺的DP转modbus网关实现的,不过你这个就没办法这么用了

提问者对于答案的评价:
thanks

专家置评

已阅,最佳答案正确。
Modbus地址 = 40000 + (T/2+1) ; T为偶数;单独用modbus测试软件分别和plc和变频器测试通信问题。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年10月29日
下一篇 2017年10月29日

相关推荐