为什么尽管输入了正确的 Modbus TCP 授权,仍然输出 A090(HEX) 状态值?

尽管输入了正确的授权,仍然输出 A090(HEX) 状态值,这有不同的原因。

原因 解决
仅在授权数据块的数据视图下输入了授权密钥 如果在授权数据块的数据视图下输入授权密钥,它会在CPU重启时被初始值覆盖。所以,必须在声明视图中作为初始值输入授权密钥。之后在数据视图中授权密钥可以被初始化。
在REG_KEY中使用了数字 0 (零) 而不是字母 O。 确定字符串 REG_KEY 只包含字母。

授权DB指针忘记填写或不正确。

确保授权DB指针正确。

打开在线Modbus块背景DB。数据视图中检查“REG_KEY”参数。

Modbus块初始化错误。 只要Modbus块初始化错误,则输入状态值16#A080 (hex),无法评估 REG_KEY。

OB121中调用Modbus块

删除OB121中的Modbus块调用。
没有在项目中插入功能 FC10 "EQ_STRNG" ,或是功能 FC10 "EQ_STRNG"具有不同的 FC 号.

以下产品受影响

  • S7 OpenMODBUS/TCP (V4.0和 V4.1)
  • S7 OpenMODBUS/TCP PN-CPU
    (V2.0, V2.1, V2.2, V2.3 和 V2.4)
  • SIMATIC Modbus/TCP RED V2 (V2.0)

注意
FC10不影响上述产品的后续版本和下面产品:SIMATIC Modbus/TCP SENTRON PAC和 SIMATIC Modbus/TCP PN CPU Redundant。

确定在项目中插入了功能FC10 "EQ_STRNG" 。这可在STEP 7标准库的 "IEC Function Blocks -> Blocks"下找到.
如果在用户程序中已经使用了该 FC号,必须在Modbus块中对功能FC10 "EQ_STRNG" 重新布线为新的FC号。

表1

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

(2)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论