PC与三菱PLC之间的RS232通讯协议
本文主要介绍了PC与三菱PLC之间的RS232通讯协议,涵盖了VC与PLC的串口通讯主要操作、IPC读取PLC内部数据时的地址计算、数据通讯举例等多个方面。
一、VC与PLC的串口通讯主要操作
VC与PLC的串口通讯主要操作包括读位元件和字元件状态操作、写位元件和字元件状态操作。读操作的命令通用格式为STX CMD0 ADD LEN EXT CHK,其中STX为起始符,CMD0为读命令,ADD为读位元件或字元件的起始地址,LEN为读取位元件或字元件的个数,EXT为停止符,CHK为校验码。写操作的命令通用格式为STX CMD1 ADD LEN DATA EXT CHK,其中STX为起始符,CMD1为写命令,ADD为写位元件或字元件的起始地址,LEN为写入的数据个数,DATA为写入的数据,EXT为停止符,CHK为校验码。
读操作中,CMD0为0x30,ADD为读位元件或字元件的4位起始地址,LEN为读取位元件或字元件的个数,CHK为两位和校验。写操作中,CMD1为0x31,ADD为写位元件或字元件的4位起始地址,LEN为写入的数据个数,DATA为写入的数据,CHK为两位和校验。
二、IPC读取PLC内部数据时
IPC读取PLC内部数据时,需要首先找到需要读取的PLC内部元件的地址。主要内部元件地址如下:D:m_address*2+1000H,T:m_address+00C0H,C:m_address*2+01C0H,S:m_address*3,M:m_address*2+0100H,Y:m_address+00A0H,X:m_address+0080H。
数据通讯举例中,读D0的值需要计算CHK校验码,LEN表示我们需要读字节的个数,数据通讯举例中 LEN=30H 32H。计算CHK校验码=CMD0+ADD+LEN+EXT=30H+31H+30H+31H+30H+30H+32H+03H=157H。所以校验码为35H 37H。得到完整的数字命令格式为:02H 30H 31H 30H 30H 30H 30H 32H 03H 35H 37H。将这段数字代码发送给PLC,返回代码:02H 30H 30H 30H 30H 03H 43H 33H。得到数据段DATA为30H,31H,30H,30H=0001B(低位先发,高位后发)=1D。至此得到D0=1。
PC与三菱PLC之间的RS232通讯协议是基于RS232串口通讯协议的,VC与PLC的串口通讯主要操作包括读位元件和字元件状态操作、写位元件和字元件状态操作。IPC读取PLC内部数据时需要首先找到需要读取的PLC内部元件的地址,并计算CHK校验码,最后将数字命令格式发送给PLC,获取需要的数据。