关于MODBUS功能码05、15的问题

功能码05是写单个线圈
功能码15是写多个线圈
手册里有句话:输出点不是被强制,用户程序可以重写由modbus的请求而写入的值
PLC做从站,计算机发送01 0F 00 00 00 08 01 FF BE D5
这时发现输出点,凡是用到的都没点亮,没用到的都点亮了
比如我程序里就用了Q0.0,其余都没没用,就发现Q0.0是灭灯的,其余都亮灯了
怎么去重写modbus请求呢?比如怎么选择性去输出Q0.0?

问题补充:
是试验程序,就用I0.0去点Q0.0,I0.0不闭合,Q0.0输出条件不满足,计算机发送01 0F 00 00 00 08 01 01 CRC码,依旧点不亮Q0.0,PLC返回代码正常

最佳答案

程序问题,见另帖
http://www.ad.siemens.com.cn/service/answer/tobe_solution.aspx?Q_ID=100500&cid=1028

提问者对于答案的评价:
谢谢 醋工,如果想区分出上位和程序的要求,地址如I0.1或其他任何地址作为程序赋值和上位赋值的切换开关。当该开关为0时,程序赋值,当开关为1时,上位赋值。我用的是MODBUS指令库,库程序上锁啊,我不知道上位赋值在哪,该怎么处理?能详细指点下吗?谢谢

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc252336.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月6日 上午1:10
下一篇 2018年12月6日 上午1:10

相关推荐