modbus从站库中,MBUS_INIT的Holdstart端具体指的是什么?一定要输入&VB0吗?
西门子工程师说从站无法决定把主站发送过来的数据保存在哪里?也就是说,主站写到从站的数据地点,是由主站库上的Addr端决定的
那么从站的Holdstart端是干什么用的呢?
请解释的通俗一点,我是新手,谢谢
问题补充:
00001 - 00128:Q0.0-Q15.7
10001 - 10128:I0.0-I15.7
30001 - 30032:模拟量AIW0-AIW62
40001 - 49999:V区
最佳答案
你没有列出保持寄存器V的起始地址和结束地址,HoldStart和MaxHold决定这个地址的范围。
HoldStart处填写的就是保持寄存器V起始地址,
如果是&vb100, 那么保持寄存器(V)第一个地址就是VW100,
如果是&vb1000,那么保持寄存器(V)第一个地址就是VW1000,
MaxHold处填写的是可供主站读写的保持寄存器VW的数量
如果HoldStart=&vb100,MaxHold=10,那么地址对应如下:
VW100 40001
VW102 40002
VW104 40003
VW106 40004
VW108 40005
VW110 40006
VW112 40007
VW114 40008
VW116 40009
VW118 40010
共10个
如果HoldStart=&vb300,MaxHold=100,那么地址对应如下:
VW300 40001
VW302 40002
VW304 40003
...
VW498 40100
共100个
如果你做modbus从站,那么你可以将主站需要的数据,存放在保持寄存器里(HoldStart=&vb300)
如果VW300是A相电压,VW302是B相电压,VW304是C相电压,VW306是A相电流,VW308是B相电流,VW310是C相电流,那么你告诉对方如下的通讯协议:
40001 A相电压
40002 B相电压
40003 C相电压
40004 A相电流
40005 B相电流
40006 C相电流
其他的字符格式以及从站地址和对方约定一下即可。
提问者对于答案的评价:
谢谢啊,很详细.
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc316874.html