modbus疑问?

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

最佳答案

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

 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用于CPU 221
 16用于CPU 222
 32用于CPU 224、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

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月24日
下一篇 2017年6月24日

相关推荐