您现在所在的是:

串口通信

回帖:11个,阅读:2597 [上一页] [1] [2] [下一页]
10153
yutianhe95
文章数:3369
年度积分:488
历史总积分:10153
注册时间:2017/3/29
发站内信
2018论坛热心网友
2018春节活动(三)
发表于:2018/6/7 14:46:40
#0楼
设备资料关于通讯部分的显示:

线圈地      数据                说明
10001 通道1,AL1状态值(位1 bit) 0~1,0=断开,1=吸合
… … …
10016 通道16,AL1状态值(位1 bit) 0~1,0=断开,1=吸合
10017 通道1,AL2状态值(位1 bit) 0~1,0=断开,1=吸合
… … …
10032 通道16,AL2状态值(位1 bit) 0~1,0=断开,1=吸合
10033 公共报警,AL1状态值(位1 bit) 0~1,0=断开,1=吸合
10034 公共报警,AL2状态值(位1 bit) 0~1,0=断开,1=吸合

实际情况:10033和10034的地址应该是0020和0021吧,目前通道8处于报警状态, 我读取0~9通道的显示HEX十六进制对应的是80,也就是 (省略0000)1000 0000,没错,对应的干接点公共报警输出AL1常开,而AL2是常闭。
为什么我发01 01 00 20 00 02 BC 01时显示的相应01 01 01 03 11 89 ,那么03对应的8位二进制应该是11,那岂不是对应的20和21地址都是1 ,这是否有误? 不应该是01吗?
[此贴子已经被作者于2018/6/7 14:54:20编辑过]
27950
guanyumou 版主
文章数:10552
年度积分:1133
历史总积分:27950
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2018/6/7 15:07:51
#1楼
以下是引用yutianhe952018/6/7 14:46:40的发言:
设备资料关于通讯部分的显示:

线圈地      数据                说明
10001 通道1,AL1状态值(位1 bit) 0~1,0=断开,1=吸合
… … …
10016 通道16,AL1状态值(位1 bit) 0~1,0=断开,1=吸合
10017 通道1,AL2状态值(位1 bit) 0~1,0=断开,1=吸合
… … …
10032 通道16,AL2状态值(位1 bit) 0~1,0=断开,1=吸合
10033 公共报警,AL1状态值(位1 bit) 0~1,0=断开,1=吸合
10034 公共报警,AL2状态值(位1 bit) 0~1,0=断开,1=吸合

实际情况:10033和10034的地址应该是0020和0021吧,目前通道8处于报警状态, 我读取0~9通道的显示HEX十六进制对应的是80,也就是 (省略0000)1000 0000,没错,对应的干接点公共报警输出AL1常开,而AL2是常闭。
为什么我发01 01 00 20 00 02 BC 01时显示的相应01 01 01 03 11 89 ,那么03对应的8位二进制应该是11,那岂不是对应的20和21地址都是1 ,这是否有误? 不应该是01吗?
[此贴子已经被作者于2018/6/7 14:54:20编辑过]
10033和10034的地址应该是0020和0021吧
寄存器编号为10033和10034的实际地址是16进制的0020和0021

我读取0~9通道的显示HEX十六进制对应的是80,也就是 (省略0000)1000 0000,没错,对应的干接点公共报警输出AL1常开,而AL2是常闭。
你读取的是10个bit,那么返回数据中会有2个字节
读0-9通道(确切的说应该是读实际地址为0~9)发送的命令应该为:
01 01 00 00 00 0A ** **,这里** **为CRC校验

为什么我发01 01 00 20 00 02 BC 01时显示的相应01 01 01 03 11 89 ,那么03对应的8位二进制应该是11,那岂不是对应的20和21地址都是1 ,这是否有误? 不应该是01吗?
16进制03换算为2进制为0000 0011
即就是寄存器编号为10033和10034均为吸合状态,应该没错!
10153
yutianhe95
文章数:3369
年度积分:488
历史总积分:10153
注册时间:2017/3/29
发站内信
2018论坛热心网友
2018春节活动(三)
发表于:2018/6/7 15:15:28
#2楼
回复 #1楼 guanyumou
我刚试了下,把现有的报警给处理掉,然后相应01 01 01 00 51 88  那就是都是00 ,那先前的11应该是没错,你说得对。   那是否意味通讯时10033和10034其实都是一种类型的报警,即都是0常开类型,报警了变1.

可能是我的惯性思维题,因为设备硬线干接点输出公共报警AL1为常开和AL2为常闭,如果报警对于硬接点来说应该是AL1变常闭,AL2变常开了。
27950
guanyumou 版主
文章数:10552
年度积分:1133
历史总积分:27950
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2018/6/7 15:24:20
#3楼
以下是引用yutianhe952018/6/7 15:15:28的发言:
我刚试了下,把现有的报警给处理掉,然后相应01 01 01 00 51 88  那就是都是00 ,那先前的11应该是没错,你说得对。   那是否意味通讯时10033和10034其实都是一种类型的报警,即都是0常开类型,报警了变1.

可能是我的惯性思维题,因为设备硬线干接点输出公共报警AL1为常开和AL2为常闭,如果报警对于硬接点来说应该是AL1变常闭,AL2变常开了。
你发的不是有么:
附件 image.jpg
10153
yutianhe95
文章数:3369
年度积分:488
历史总积分:10153
注册时间:2017/3/29
发站内信
2018论坛热心网友
2018春节活动(三)
发表于:2018/6/7 15:28:10
#4楼
回复 #3楼 guanyumou
附件 微信图片_20180607152703.jpg

额,我是受了这个影响。总以为AL1和AL2状态时刻是反的
27950
guanyumou 版主
文章数:10552
年度积分:1133
历史总积分:27950
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2018/6/7 15:36:54
#5楼
再给你一些Modbus文档和调试工具,我常用的!还挺好的!
附件:
[本地下载]
附件:
[本地下载]
附件:
[本地下载]
10153
yutianhe95
文章数:3369
年度积分:488
历史总积分:10153
注册时间:2017/3/29
发站内信
2018论坛热心网友
2018春节活动(三)
发表于:2018/6/7 15:39:12
#6楼
以下是引用guanyumou2018/6/7 15:36:54的发言:
再给你一些Modbus文档和调试工具,我常用的!还挺好的!
附件:
[本地下载]
附件:
[本地下载]
附件:
[本地下载]

啥都不说了表情表情表情表情表情,感激不尽啊!
5563
yeyecun
文章数:929
年度积分:50
历史总积分:5563
注册时间:2011/9/20
发站内信
发表于:2018/6/7 16:34:07
#7楼
回复 #5楼 guanyumou
版主无私奉献,精神可嘉表情表情表情
8230
hs82463789
文章数:196
年度积分:960
历史总积分:8230
注册时间:2011/4/14
发站内信
发表于:2018/6/7 21:20:49
#8楼
好资料,谢谢分享表情
2773
guyou001
文章数:192
年度积分:124
历史总积分:2773
注册时间:2010/4/9
发站内信
发表于:2018/7/7 10:00:55
#9楼
回复 #5楼 guanyumou
虽然不太懂,但是还先下载下来看看

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

78.0005