PC中必须依据所连接PLC的通信规程来编写通信协议,所以我们先要熟悉FX系列PLC的通信协议。 1)数据格式 FX系列PLC采用异步格式,由1位起始位、7位数据位、1位偶校验位及1位停止位组成,比特率为9600 bps,字符为ASCⅡ码。数据格式如图7-14所示。 
图7-14 数据格式 2)通信命令 FX系列PLC有4条通信命令,分别是读命令、写命令、强制通命令、强制断命令,如表7-2所示。 表7-2 FX系列PLC的通信命令表  3)通信控制字符 FX系列PLC采用面向字符的传输规程,用到5个通信控制字符,如表7-3所示。 表7-3 FX系列PLC通信控制字符表 控制字符 | ASCⅡ码 | 功能说明 | ENQ | 05H | PC发出请求 | ACK | 06H | PLC对ENQ的确认回答 | NAK | 15H | PLC对ENQ的否认回答 | STX | 02H | 信息帧开始标志 | ETX | 03H | 信息帧结束标志 |
注:当PLC对计算机发来的ENQ不理解时,用NAK回答。 4)报文格式 计算机向PLC发送的报文格式如下: 其中,STX为开始标志:02H;ETX为结束标志:03H;CMD为命令的ASCⅡ码;SUMH、SUML为按字节求累加和,溢出不计。由于每字节十六进制数变为两字节的ASCⅡ码,故校验和为SUMH与SUML。 数据段格式与含义如下: 
注:写命令的数据段有数据,读命令数据段则无数据。 PLC向PC发的应答报文格式如下: 
注:对读命令的应答报文数据段为要读取的数据,一个数据占两字节,分上位下位: 数据段: 
对写命令的应答报文无数据段,而用ACK及NAK作应答内容。 5)传输规程 PC与FX系列PLC间采用应答方式通信,传输出错,则组织重发。其传输过程 如图7-15所示。 
图7-15 传输过程 PLC根据PC的命令,在每个循环扫描结束处的END语句后组织自动应答,无需用户在PLC一方编写程序。 |