签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
1: 第三方设备通迅协议选择为
8位数据位, 无校验,2停止位 ,波特率9600 ,地址1。
数据格式 : 地址*1 命令码*1 起始地址*2 数据个数*2 CRC校验*2(高低字节交换)16进制
2:PLC XMT RCV 收发参数设置.
8位数据位,无校验,波特率9600 地址 100.
.
3: PLC于串口助手通迅 收发数据正常。
4: 串口助手与第三方设备通迅,收发数据正常。
5: PLC发送数据给第三方设备,第三方设备接受正常,且有反馈信息。
备注: a ,通过串口助手能监测到第三方设备返回数据信息。
b,第三方设备能按照PLC控制信息动作。
6:现存问题,PLC接受不到第三方设备的信息。
请各位大佬指点一下,问题出在什么地方,谢谢!
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1770235&b_id=64&s_id=0&num=4
多方查阅资料发现西门子Smart PLC停止位是1位,第三方设备停止位是2位,很疑惑是不是此原因造成的PLC没有接受到第三方设备信息。
不要选0;选1或2
想过选1和2,就是奇偶校验我没整明白是怎么回事。
奇偶校验是底层机制和底层时序有关和你程序无关(O/E就是校验每个字节里硬件1或0的个数得出布尔量判断值),设置对就行了,建议你用Modbus官方库,当然你的读写参数很少的话,自己用自由口搭建也是很简单的,自己写就是自己算校验码.
自己搭建自由口也只能自由操控到字节层面,真正想操控到每个硬件Bool量位比如停止位是更进一步固件底层的事,不是应用层面机电自动化工程师的事.
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录