当前位置:
三菱485通讯如何读写参数到台达B3L伺服驱动器
回复 | 人气 | 打印
五五wu 个人主页 给TA发消息 加TA为好友 悬赏80分-已结帖 发表于:2020-04-16 11:12:01 楼主

本人买了一台三菱FX3S带有485通讯口的PLC以及一套台达B3L驱动器电机,想通过485对PLC进行读写,查了三菱手册,RS指令可以进行数据的读写,但是有的没搞懂,比如我想对伺服的转数P1-009(地址0112H)和扭矩P1-012(地址0118H)进行设置,RS指令是S(发送首地址),m(传送笔数),D(接收首地址),n(接收笔数),那我这样写可以么,请大神指点一下

RS D100 K8 D200 K8

我把转数数值1000和扭矩20分别提前写入D100和D102里,但是如何把这些参数写入对应的伺服参数地址呢,读取也该如何读取呢,请大神们指点一下,万分感谢


分享到: 关注收藏 邀请回答 回复 举报

关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 12:24:09 1楼
 

这款伺服支持Modbus RTU协议

你PLC用RS指令

那么就要对Modbus RTU报文熟悉了


  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 12:24:59 2楼
 

我记得这款伺服参数都是占用2个寄存器的

那么你要写操作的话,就要用10功能码

那么在8位模式情况下,发送点数为8显然是不对的

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 12:25:30 3楼
 

先熟悉Modbus RTU报文

再考虑编程!

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 15:54:50 4楼
 

1.png
P1-09数据大小为32bit,那么如果可以执行写操作,一般也应该使用Modbus的10功能码,那么在PLC的8位模式情况下,发送点数也应该是13个字节、接收字节数为8个,这才符合Modbus RTU协议规范。

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 15:56:53 5楼
 

1.png
假设伺服地址设置为1,那么

PLC发送:01 10 01 12 00 02 04 ** ** ** ** ## ##

伺服返回:01 10 01 12 00 02 ## ##

上面的** ** ** **就是你要给寄存器赋的数据、## ##是CRC校验。

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 15:58:24 6楼
 

关于CRC校验,如果使用RS指令,那么一般CRC校验也是要单独编写一个子程序来实现的,这个在我以前发的帖子里有,你可以参考:
http://bbs.gongkong.com/d/201912/816210_1.shtml

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:00:22 7楼
 

可以在伺服通信参数设置正确的情况下,先用一些调试助手或者Modbus调试助手测试一下伺服,待伺服测试通过后再行编写PLC程序,如下是常用的一些调试助手,你可以去我以前发布的帖子中下载:
http://bbs.gongkong.com/d/202001/818520_1.shtml

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:01:56 8楼
 

比如使用串口调试助手:
就可以直接在发送区填写响应的Modbus RTU命令,设置好通信参数,打开串口即可进行发送:
3.png

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:03:37 9楼
 

比如Modbus TCP/RTU/ASCII调试助手:
在读寄存器里设置好起始地址和个数,联机后即可测试。
4.png

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:04:56 10楼
 

比如使用串口调试助手和以太网调试助手二合一:
左侧发送区以16进制方式发送命令即可:
5.png

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:06:42 11楼
 

这个参数也是一样的道理,如果可写的话,应该是06功能码和10功能码都是可行的,因为它数据位是16bit,但是具体还是要用上升调试助手进行测试。
2.png

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:08:14 12楼
 

2.png比如使用06功能码,记不清是高位有效还是低位有效,具体可咨询台达客服

PLC发送:01 06 01 18 ** ** ## ##

伺服返回:原样返回

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:09:14 13楼
 

2.png使用10功能码:

PLC发送:01 10 01 18 00 01 02 ** ** ## ##

伺服返回:01 10 01 18 00 01 ## ##

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:10:08 14楼
 

2.png这个测试方法也是一样的,都可以用上升调试助手。比如串口调试助手、Modbus调试助手或者Modbus Poll调试助手也可以。

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 16:11:26 15楼
 

我这里给你发一个我最近发的有关三菱FX系列PLC无协议RS指令的实例,你可以参考,打开后找里面有关三菱的就可以:
http://home.gongkong.com/Topic/?uid=172273

  回复 引用 举报
lingwei2 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 21:17:43 16楼
 

有学习了,理论与实践的结合,高手。

  回复 引用 举报
关育谋 个人主页 给TA发消息 加TA为好友 发表于:2020-04-17 22:09:30 17楼
 


引用 lingwei2 的回复内容: 有学习了,理论与实践的结合,高手。

-------------------------

有问题欢迎一起交流。

  回复 引用 举报
wth19861116 个人主页 给TA发消息 加TA为好友 发表于:2020-05-16 11:27:51 18楼
 

三菱无协议通讯RS指令就可以

  回复 引用 举报
Smile-lyc 个人主页 给TA发消息 加TA为好友 发表于:2020-05-27 10:17:01 19楼
 

感谢诸位答疑求助。温馨提醒:求助者请在一个月内及时把悬赏积分结贴发放。如果自己已经解决问题,还请到帖子跟帖分享为好

  回复 引用 举报

周点击排行
周回复排行
最新求助