当前位置: 主页 > PLC控制

modbus疑问?

最近用CPU226做主站和一称重仪表利用MODBUSRTU协议通讯,可以读出仪表实时数据,但是有一点不是太明白,比如写发送基本格式:地址;功能码;寄存器地址高字节;寄存器地址低字节;数据值高字节;数据值低字节;CRC校验码低字节;CRC校验码高字节。共8个字节.
格式中寄存器地址是如何理解,比如寄存器地址VW1000,如何映射MODBUS地址?是40001,40002之类吗?

最佳答案

调用Modbus从站时可以将起始地址进行设置,那么自然可以对应到4X13X1了

MaxIQ参数将供Modbus地址0xxxx和1xxxx使用的I和Q点数设为0至128之间的数值。数值0禁止所有向输入和输出的读取。建议使用的MaxIQ数值是128,该数值可在S7-200中存取所有的I和Q点。

MaxAI参数将供Modbus地址3xxxx使用的字输入(AI)寄存器数目设为0至32之间的数值。数值0禁止模拟输入的读数。建议使用的MaxAI数值如下,这些数值可允许存取所有的S7-200模拟输入:

0用于CPU221
16用于CPU222
32用于CPU224、224XP、226和226XM

MaxHold参数设定供Modbus地址4xxxx使用的V存储器中的字保持寄存器数目。例如,为了允许主设备存取2000个字节的V存储器,将MaxHold设为1000个字的数值(保持寄存器)。
HoldSTart参数是V存储器中保持寄存器的起始地址。该数值一般被设为VB0,因此HoldStart参数被设为&VB0(VB0地址)。其它V存储器地址可指定为保持寄存器的起始地址,以便在项目的其它地方使用VB0。Modbus主设备可存取V内存
MaxHold个字数,从HoldStart开始。

MBUS_INIT指令完成时,"完成"输出打开。"错误"输出字节包含执行指令的结果。请参阅Modbus从站协议执行错误代码中可能因执行指令而产生的错误条件。

提问者对于答案的评价:
OK

  • 关注微信

猜你喜欢

微信公众号