日期::2022-06-10作者:网友整理人气:
通讯地址(通讯地址怎么填?)
快速推算西门子PLC Modbus通信地址对应的PLC实际地址
以下说明都是应用于西门子PLC 通信MODBUS的场合。
我们知道Modbus地址有4类:
00001---09999是离散输出地址,对应PLC的Q线圈。
10001---19999是离散输入地址,对应PLC的I输入点。
30001---39999是输入寄存器地址,对应PLC模仿量输入AIW
40001---49999是保持寄存器地址,对应PLC的V存储器
它们与PLC S7-200的地址对应关系如下:
一、以0开头的离散输出地址0XXXX--------Qaa.b
00001-------Q0.0 00002-------Q0.1 00003-------Q0.2
…………………………..
00126------Q 15.5 00127--------Q15.6 00128--------Q15.7
快速写出它们对应关系呢?用以下公式推算:
(XXXX-1)/ 8=商---作为字节号aa
余数---作为位号b
如地址126 (00126-1)/8=商15---余5 则对应Q15.5
地址4 (4-1)/8=0 余3 则对应Q0.3
反过来,知道Qaa.b,对应地址:
地址号=aa*8+(b+1)
如:Q15.7-----地址=15*8+(7+1)=128---则地址00128
Q1.7------地址=1*8+(7+1)=16------则地址00016
二、以1开头的离散输入地址1XXXX--------Iaa.b
10001-------I0.0 10002-------I0.1 10003-------I0.2
…………………………..
10126------I15.5 00127--------I15.6 10128--------I15.7
公式计算同上。地址要加上开头的10000
如地址10009,则对应(9-1)/8=1--余0--------I1.0
I1.1---------地址=1*8+(1+1)=10---地址为10010
以上每一个MODBUS地址对应一个位
三、30001---39999是输入寄存器地址 3XXXX-------AIWaa
30001-------AIW0 30002-------AIW2 30003-------AIW4
…………………………..
30030------AIW58 30031--------AIW60 30032--------AIW62
对应公式
AIW aa=(XXXX-1)*2
如30004 aa=(0004-1)*2=6------对应AIW6
如30030 aa=(0030-1)*2=58----对应AIW58
反过来 地址=(aa+2)/2 再加上开头30000
如AIW62 则地址=(32+2)/2=32------地址30032
注重每一个3XXXX地址对应一个字
四、40001---49999是保持寄存器地址,
它对应-----从站指定的供MODBUS地址使用的V存储器。以VBa开头的起始地址(间接寻址方式)
如下图,是PLC从站设定,HoldStart---设定起始地址是VB0
则:对应关系
40001--------VW0(VB0、VB1) 40002-----VW2(VB2、VB3)
40003--------VW4(VB4、VB5) 40100 VW198(VB198、VB199)
假如HoldStart---设定起始地址是VB50
则对应关系:
40001---VW50 40002---VW52 40003---VW54
40050---VW148 40051-----VW150
因此可得公式,HoldStart---设定起始地址是VBa
则对应关系
4XXXX对应 VW=(XXXX-1)*2+a
举例:HoldStart---设定起始地址是VB11
则40001对应 (0001-1)*2+11=11,对应vw11
40010对应 (0010-1)*2+11=29,对应VW29
反过来 已知VWb---对应地址
地址={(b-a)+2}/2
如VW29-----对应{(29-11)+2}/2=10-----对应地址40010
VW51------对应{(51-11)+2}/2=21------对应地址40021
来源:日常生活网