Modbus协议将寄存器分成了4个区域,但每一个寄存器都是16位的数据存储器,00000~09999代表线圈(DO)类地址,10000~19999代表触点(DI)类地址、 30000~39999代表输入寄存器(AI)类地址、40000~49999代表输出寄存器(AO)类地址。
当PLC主站和变频器、私服驱动器、温控器或其他遵照MODBUS的从站通讯时,会呈现3种状况:
(1)比方”台达”,它没有才能自己开发专用协议,就用Modbus作为自己的协议,这样的话,它有Modbus指令,只需要设置通讯格局字后,用指令直接读从站寄存器地址就可以了。(台达主站)
(2)比方“西门子”,它有自己开发的PPI、MPI、Profibus、工业以太网等专用协议,但为了和支撑MODBUS的设备通讯,它就开发了Modbus通讯协议库,咱们只需要初始化“通讯格局字”,不需要知道“通讯数据信息帧”的格局,直接读写从站寄存器的地址就可。(西门子主站)
(3)比方“三菱”,它有自己开发的"CC-LINK"专用协议,但没有支撑和MODBUS设备通讯的协议库,那和支撑MODBUS协议的设备通讯就要编写通讯程序了,这便是“自在口通讯”,在确保硬件通讯口衔接正确的状况下,遵照“从站的通讯格局字”和“从站的数据信息帧”。在PLC中不但要设置通讯格局字,还要编写数据发送帧的通讯程序,比较长。(三菱主站)
PLC经过指令写程序发送帧”01H 03H 21H 02H00H 02H 6FH F7H”中,03H(功用码)和21H 02H(数据开始地址)就决议对从站4区寄存器中的48451进行处理
当PLC为从站时,上位或组态软件为主站时,软件一般添加了相应PLC的驱动程序,PLC厂家界说了PLC变量地址和MODBUS寄存器的映射联系,读和写相应MODBUS的寄存器地址就可读写plc相应变量的参数。