S7200CPU,MODBUS通讯
刘玉蓉
发布于2014-12-10 17:31
6
0
标签:
有一个S7200CPU,做MODBUS从站,要求主站读取从站VD100、VD104、VD108....十个实数值,请问在从站“INIT”指令中,MaxIQ=?,MaxAI=?,MaxHold=?,HoldStart=?应该怎么设置。这十个值对应的MODBUS地址又是什么例如:40xxx、40xxn?
次做MODBUS通讯,请说详细点!
佳答案
S7-200系统手册里讲的很清楚
MaxIQ设置可访问IO点数,设为0禁止访问所有IO点,设为128则可访问所有IO点
MaxAI设置可访问的模拟量输入个数,设为0禁止访问
MaxHold设置V区字保持寄存器的个数,对应Modbus的4XXXX
HoldStart设置V区字保持寄存器的开始地址
这里你只需要读V区10个实数,只要设置V区保持寄存器,每个实数占4个字节,所以总数为40字节=20字,MaxHold设置为20,开始地址HoldStart设置为&VB100
对应的Modbus地址就是40001~40020
MaxIQ和MaxAI不用可设置为0
如果主站读取这20个字也放在VB100开始的区域,那么这10实数对应地址和从站一样VD100、VD104、VD108......