MODBUS应用层中进行通信设备地址的约定、功能码及数据内容的具体实现。仍以
控制器与触摸屏通信为例进行阐述。控制器首先检查消息帧地址是否为本机地址(本文中
控制器设备地址为02)。然后根据功能码确定应该执行哪些动作,这就是消息帧解析的过
程。控制器提取出功能码、触摸屏要查询的寄存器序号和数量等信息后,控制器就能知道
该把哪些寄存器的数据送给触摸屏。从站按照要求提取触摸屏需要的寄存器数据,按照功
能码要求的格式组织回应消息帧,也就是消息帧处理的过程。
MODBUS协议中定义了13种公共功能码,并且对各功能码的数据格式有明确要求。
由于伺服驱动器MODBUS通信协议规定,读取电机转速寄存器地址为Ox5A0,只能用03
读保持寄存器功能码。故本文中涉及到4种功能码,04, OS和06功能码主要实现触摸屏
和控制器的通信(MODBUS 1),而03功能码则实现控制器和伺服驱动器通信(MODBUS2 ) o
下面将详细介绍主站和从站针对不同功能码,查询和回应消息帧格式【56]
C1) 03 COx03)功能码:读保持寄存器值。以读取1#电机当前转速200rpm为例,
主站发送消息帧如表5.6所示,从站回应消息帧如表5.7所示。
|