锦州西门子6GK工业交换机一级代理商
锦州西门子6GK工业交换机一级代理商
First(启动),在有新请求要发送时才打开以进行一次扫描,通过一个边沿检测元素(例如上升沿)打开,这将导致请求被传送一次。
Slave(从站地址) 从站的地址,允许的范围是0到247,地址0是广播地址,只能用于写请求。不存在对地址0的广播请求的应答。从站的实际地址范围为1-247(从站的地址(Slave)在1-247范围内任选一个数即可,但需要和从站程序中的地址对应,否则通讯失败)。主站在Modbus网络上没有地址。
RW('读写') 是用来读取还是写入该消息。'读写'参数允许使用下列两个值。
0 读
1 写
Addr (地址) 是指向读取或写入的起始Modbus地址,'地址'的取值范围基于Modbus从站支持的地址。一般都取40001。
Count (计数) 在该请求中读取或写入的数据元素的数目,MBUS_MSG指令将读取或写入*大120个字或1920个位(240字节的数据)。'计数'的实际限值将取决于Modbus从站中的限制。
DataPtr(地址指针) 指向S7-200 CPU的V存储器中与读取或写入请求相关的数据的间接地址指针。DataPtr值作为间接地址指针传递到MBUS_MSG。例如,如果要写入Modbus从站的数据从S7-200 CPU中的地址VW200开始,则DataPtr的数值将会是&VB200 (VB200的地址)。指针必须始终是VB类型,即使它们指向字数据。
Done(完成位) 输出在发送请求和接收应答时关闭。'完成'输出在应答完成或MBUS_MSG指令因错误而中止时打开。完成信息存入辅助寄存器中(如M10.1)
Error(错误) 输出仅当'完成'输出打开时有效,反馈错误代码,存入辅助位寄存器中(如MB6)
MBUS_MSG。
错误代码 说明
0 无错误
1 应答时奇偶校验错误:仅当使用偶校验或奇校验时才会发生。传输被干扰,可能会收到不正确的数据。该错误通常是由电气故障(例如错误接线或者影响通讯的电噪声)引起的。
2 未使用
3 接收超时:在'超时'时间内,没有来自从站的应答。可能有以下一些原因:与从站的电气连接有问题、主设备和从站设置为不同的波特率/奇偶校验设置,以及错误的从站地址。
4 请求参数出错:一个或多个输入参数(从站、读写、地址或计数)被设置为非法值。检查文档中输入参数的允许值。
5 Modbus主设备未启用:在调用MBUS_MSG前,每次扫描时都调用MBUS_CTRL。
6 Modbus忙于处理另一个请求:一次只能激活一条MBUS_MSG指令。
7 应答时出错: 收到的应答与请求不相关。这表示从站中出现了某些错误,或者错误的从站应答了请求。
8 应答时CRC错误: 传输被干扰,可能会收到不正确的数据。该错误通常是由电气故障(例如错误接线或者影响通讯的电噪声)引起的。
101 从站不支持在该地址处所请求的功能:请参阅'使用Modbus主设备指令'帮助主题中的所需Modbus从站功能支持表。
102 从站不支持数据地址:'地址'加上'计数'所要求的地址范围超出了从站所允许的地址范围。
103 从站不支持数据类型:该'地址'类型不被从站支持。
104 从站故障
105 从站已接受消息但应答延迟:这是MBUS_MSG的错误,用户程序应在稍后重新发送请求。
106 从站忙,因此拒绝消息:可以再次尝试相同的请求,以获得应答。
107 从站因未知原因而拒绝消息。
108 从站存储器奇偶校验错误:从站中有错误。
低位编号的错误代码(1到8)是由MBUS_MSG指令检测到的错误。这些错误代码通常指示与MBUS_MSG指令的输入参数有关的问题,或接收来自从站的应答时出现的问题。奇偶校验和CRC错误指示存在应答但是数据未正确接收。这通常是由电气故障(例如连接有问题或者电噪声)引起的。
高位编号的错误代码(从101开始)是由Modbus从站返回的错误。这些错误指示从站不支持所请求的功能,或者所请求的地址(或数据类型或地址范围)不被Modbus从站支持。
由于一次只能激活一条MBUS_MSG指令。所以在第一条MBUS_MSG指令完成后,启动第二条指令,同时必须复位第一条指令。如果启用了多条MBUS_MSG指令,则将处理所执行的第一条MBUS_MSG指令,之后的所有MBUS_MSG指令将中止并产生错误代码6。
Mode(模式) 为1,启用Modbus协议。
Addr(地址) 与主站的寻址对应一致。
Baud (波特率)一般选择9600。
Parity (奇偶校验) 参数被设为与Modbus从站奇偶校验相匹配。所有设置使用一个起始位和一个停止位。一般选择偶校验2.(和主站保持一致)
Delay('延时')参数通过将的毫秒数增加至标准Modbus信息超时的方法延长标准Modbus信息结束超时条件。该参数的典型数值在有线网络上应为0。
MaxIQ 参数将供Modbus地址0xxxx和1xxxx使用的I和Q点数设为0至128之间的数值。建议使用的MaxIQ数值是128,该数值可在S7-200中存取所有的I和Q点。
MaxAI参数将供Modbus地址3xxxx使用的字输入(AI)寄存器数目设为0至32之间的数值。
建议使用的MaxAI数值如下,这些数值可允许存取所有的S7-200模拟输入:(根据CPU型号选择数值)
0用于CPU 221
16用于CPU 222
32用于CPU 224、224XP、226和226XM。
MaxHold 参数设定供Modbus地址4xxxx使用的V存储器中的字保持寄存器数目。例如,为了允许主设备存取2000个字节的V存储器,将MaxHold 设为1000个字的数值(保持寄存器)。
HoldStart参数是V存储器中保持寄存器的起始地址,Modbus主设备可存取V内存MaxHold个字数,从HoldStart开始。
Done(完成)MBUS_INIT指令完成时,'完成'输出打开。
Error(错误)'错误'输出字节包含执行指令的结果。
0 无错误
1 内存范围错误
2 非法波特率或奇偶校验
3 非法从属地址
4 非法Modbus参数值
5 保持寄存器与Modbus从属符号重叠
6 收到奇偶校验错误
7 收到CRC错误
8 非法功能请求/功能不受支持
9 请求中的非法内存地址
10 从属功能未启用
MBUS_SLAVE指令被用于为Modbus主设备发出的请求服务。
如果'完成'关闭,错误参数不会改变。
联系方式
- 地址:上海杨浦 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
- 电话:15618722057
- 联系人:占亦
- 手机:15618722057
- 微信:AU77780
- QQ:1716560245
- Email:1716560245@qq.com