登录
首页 串口通信 串口通信
回帖 发帖
正文

主题:【话题】三菱FX3U-485-ADP-MB模块与Modbus Slave通讯测试问题请教(20240428)

点击:133 回复:14

目的:用ADPRW作为主站,CH2口参数设置完毕(前段有FX3U-422-BD作为CH1口),程序编写:读取1号从站线圈,从Modbus地址0开始读取1位,存入M100中。
问题:使用Modbus Slave从站串口调试助手测试,发现无法通讯,查看Communication Traffic未接收到报文。
请教:是不是PLC设置有什么问题导致的报文未发出?还有没有其他可能的问题?感谢指导
附件 3.jpg
附件 4.jpg
附件 5.jpg
附件 6.jpg
附件 7.jpg
最后修改:2024/4/29 9:40:05
24-04-28 10:54
PLC及拓展模块,UBS转485模块
附件 1.jpg
附件 2.jpg
最后修改:2024/4/28 11:04:55
24-04-28 11:04

引用 516596794 在 2024/4/28 10:54:51 发言【内容省略】

三菱FX3U-485-ADP-MB模块:
附件 workpicture1.jpg
Good Luck~
24-04-28 11:09
使用FX3U-485ADP-MB模块做ModbusRTU主站时,参数需要如此设定:
附件 image.jpg
24-04-28 16:02
D8420:通信格式字
b0:数据长度 为0时7位 为1时8位
b1、b2:奇偶校验,00:无校验 01:奇校验 11:偶校验
b3:停止位  为0时1位 为1时2位
b4 b5 b6 b7:波特率
b8-b11 保留 不用设置
b12:H/W  如果是RS485的时候 为1  如果是RS232为0
b13-b15 保留 不用设置
24-04-28 16:03
D8421:协议
b0: 为1时候 作为MODBUS RTU协议
   为0时候 其他协议
b1-b3:保留
b4:主从站选择  为0:主站  为1:从站
b5-b7:保留
b8:RTU或者ASCII码选择 为0:RTU  为1 :ASCII码模式
b9-b15:保留
24-04-28 16:04
D8429:从站超时时间,单位ms
24-04-28 16:04
ADPRW  S·  S1·  S2·  S3·  S4·/D·
S·、S1·、S2·、S3·、S4·中的S代表这里使用的软元件作为数据的来源(Source)
D·的D代表这里使用的软元件作为数据的目标(Destination)
数据的来源是我们给定的,数据的目标则是指令执行后得到的结果。
S·代表从站的站号,例如要与1号站通信,S·的位置就填写H1。
S1·是MODBUS的命令代码。
S2·是MODBUS软元件的地址。现在从站是另一台FX3G,它的MODBUS软元件地址分配查看手册9.3章节第3和第4个表格。
S3·是设置从S2·设置的MODBUS软元件地址开始的几个地址。
   S1·如果使用写的命令代码,就代表从S2·地址开始写入S3·个地址;
   S1·如果使用读的命令代码,就代表从S2·地址开始读取S3·个地址。
S4·/D·:S1·如果使用写的命令代码,标记S4·,表示把S4·设置的软元件的数据写给从站;如果使用读的命令代码,标记D·,表示把从站的数据读到D·设置的软元件中。
24-04-28 16:05
特殊标志位方面,主要用到M8029和M8422。
M8029是指令完成标志位,ADPRW指令需要在处理完成前一直保持导通,如果在这之前ADPRW指令断开则不能完成通信功能。
那么在ADPRW指令下一行编写M8029的常开触点,ADPRW指令处理完成后,M8029就会动作。
如果只需要某条ADPRW指令执行一次,就是用M8029来断开ADPRW的驱动条件。
如果需要ADPRW指令一直执行,则可以一直导通ADPRW指令。(之间讲到过也可以同时驱动多条ADPRW指令。)
M8422是MODBUS通信错误标志位,当MODBUS通信出现错误时,M8422会自动置ON。
24-04-28 16:06
手册中只对D8430(Turn Around Delay)有要求,要求设置大于等于从站PLC的扫描时间。
不过Turn Around Delay默认就是400ms,400ms肯定会大于FX PLC的扫描时间,因此一般也不需要人为设置。
24-04-28 16:06

上一页下一页

工控新闻

更多新闻资讯