hu33333
学不能停
级别: 探索解密
精华主题: 0
发帖数量: 17 个
工控威望: 106 点
下载积分: 621 分
在线时间: 6(小时)
注册时间: 2016-07-17
最后登录: 2021-07-14
查看hu33333的 主题 / 回贴
楼主  发表于: 2018-11-01 13:36
图片:
通讯协议是RTU485 ,9600 ,无校验,8,1,读取地址的代码01 03 01 84 85 DE,返回码01 03 04 43 29 E6 CA F448,台达plc读出的数据为发送码。不知道该如何解决
附件: RS485通讯问题.rar (9 K) 下载次数:103
网站提示: 请不要用迅雷下载附件,容易出错
tingfenghu
级别: 工控侠客

精华主题: 0
发帖数量: 2793 个
工控威望: 3565 点
下载积分: 3409 分
在线时间: 3717(小时)
注册时间: 2007-11-04
最后登录: 2024-05-16
查看tingfenghu的 主题 / 回贴
1楼  发表于: 2018-11-01 19:53
01 03 01 84 85 DE
总觉得读取地址代码有问题,
01 站号
03 指令
01 84 应该是地址,
85 DE是读取数量(感觉这里不对)
后面跟着是CRC校验,
这个rtu通讯报文的格式,不知道你的设备是否相同

二手PLC,触摸屏,伺服驱动,各类气动设备
http://shop58129605.taobao.com/
zhangqi_1234
级别: 略有小成
精华主题: 0
发帖数量: 336 个
工控威望: 487 点
下载积分: 4001 分
在线时间: 246(小时)
注册时间: 2013-03-22
最后登录: 2024-05-14
查看zhangqi_1234的 主题 / 回贴
2楼  发表于: 2018-11-01 21:42
功能码03H,要求是8个字节,而你的是输出6个字节,其中保持寄存器的起始地址是H0184,读取的寄存器个数是H85DE(这么多个寄存器?你不觉得奇怪吗?),就算个数正确,那么缺少的是CRC校验码!如果你发送的报文真的是这样,居然还能收到返回的报文!返回报文:01 03 04 43 29 E6 CA F448,可以这样解读:站号01,功能码03,读取的保持寄存器数据字节数4个,第1寄存器数据是H4329,第2个是HE6CA,CRC校验码是H48F4。
会这个的人,看到这样的查询报文,居然还能收到这样的应答报文,一定吃惊不小!
wanruilon08
级别: 略有小成
精华主题: 0
发帖数量: 104 个
工控威望: 253 点
下载积分: 7302 分
在线时间: 213(小时)
注册时间: 2013-05-23
最后登录: 2024-05-16
查看wanruilon08的 主题 / 回贴
3楼  发表于: 2018-11-03 08:03
可能是你发送代码贴错了吧,正确的完整发送代码是:01 03 01 84 00 02 85 DE
wanruilon08
级别: 略有小成
精华主题: 0
发帖数量: 104 个
工控威望: 253 点
下载积分: 7302 分
在线时间: 213(小时)
注册时间: 2013-05-23
最后登录: 2024-05-16
查看wanruilon08的 主题 / 回贴
4楼  发表于: 2018-11-03 08:13
返回码01 03 04 43 29 E6 CA F448,已经是正确的,怎么说是错误?你要的数据是:43 29 E6 CA
hu33333
学不能停
级别: 探索解密
精华主题: 0
发帖数量: 17 个
工控威望: 106 点
下载积分: 621 分
在线时间: 6(小时)
注册时间: 2016-07-17
最后登录: 2021-07-14
查看hu33333的 主题 / 回贴
5楼  发表于: 2018-11-09 14:04
问题解决了,是台达plc坏了,程序是没有问题的
hu33333
学不能停
级别: 探索解密
精华主题: 0
发帖数量: 17 个
工控威望: 106 点
下载积分: 621 分
在线时间: 6(小时)
注册时间: 2016-07-17
最后登录: 2021-07-14
查看hu33333的 主题 / 回贴
6楼  发表于: 2018-11-09 14:05
谢谢大神门的帮忙