首页 理论教育 计算机和单台PLC的1:1通信优化策略

计算机和单台PLC的1:1通信优化策略

时间:2023-06-24 理论教育 版权反馈
【摘要】:当引脚6为高电平时,表示PLC准备就绪,可以接收数据,计算机就可以发送数据了;当引脚6为低电平时,表示PLC与计算机不能通信。图8-39 多字符帧的组成在FX系列PLC与计算机之间的通信中,PLC始终处于一种被动响应的地位,无论是数据的读或写,都是先由计算机发出信号。当计算机接收到来自PLC的应答字符ACK后,就可以进入数据通信了。

计算机和单台PLC的1:1通信优化策略

1.系统连接

计算机与单台PLC的通信主要是通过RS-323C或RS-422接口进行的。计算机上的通信接口是标准的RS-232C接口,若PLC上的通信接口也是RS-323C接口,则PLC与计算机连接可以直接使用适配电缆进行连接实现通信,如图8-34所示。

若PLC上的通信接口是RS-422,则必须在PLC与计算机之间增加一个RS-232C/RS-422的接口转换适配器,再用电缆进行连接便可以实现通信,如图8-35所示。RS-232C/RS-422的接口转换适配器可实现RS-232C信号和RS-422信号进行相互交换,这类接口转换适配器常用的有SC-09和FX-232AW型通信适配器,这些适配器的结构简单、使用方便、性能可靠、价格低廉。图8-36和图8-37是SC-09及FX-232AW型与计算机通信时的接口引线连接图。

978-7-111-44696-5-Chapter03-57.jpg

图8-34 直接通过RS-232接口进行串行通信

978-7-111-44696-5-Chapter03-58.jpg

图8-35 通过适配器进行通信

978-7-111-44696-5-Chapter03-59.jpg

图8-36 SC-09型接口引线连接

978-7-111-44696-5-Chapter03-60.jpg

图8-37 FX-232AW型接口引线连接

在图8-37中,由于计算机RS-232C口的4、5引脚已经短接,所以对计算机发送数据来说,好像PLC总是处于数据准备就绪状态,计算机在任何时候都有可能将数据传送到PLC中;但由于RS-323C口的20、6引脚交叉连接,对计算机来说就必须检测PLC是否处于准备就绪状态,即检测引脚6是否为高电平。当引脚6为高电平时,表示PLC准备就绪,可以接收数据,计算机就可以发送数据了;当引脚6为低电平时,表示PLC与计算机不能通信。(www.xing528.com)

2.通信协议

FX系列PLC与计算机之间的通信,若采用RS-323C标准,则数据交换格式为字符串方式,如图8-38所示。在字符串格式中,左边第一位是开始位,中间7位是数据位,必须用字符的ASCⅡ来表示,这里所用到的字符及其ASCⅡ码的对应关系如表8-21所示,右边2位分别是奇偶校验位(采用偶校验)和停止位。

978-7-111-44696-5-Chapter03-61.jpg

图8-38 FX系列与计算机之间通信的字符串格式

表8-21 FX系列PLC与计算机之间通信所用的字符与ASCⅡ码对应关系

978-7-111-44696-5-Chapter03-62.jpg

在FX系列PLC与计算机的通信中,数据是以帧为单位发送和接收的,每一帧为10个字符。其中控制字符ENQ、ACK或NAK可以构成单字符帧,其余的字符在发送或接收时必须用字符STX和ETX分别表示该字符帧的起始标志和结束标志,否则将不能同步,产生错帧。多字符传送时构成多字符帧,一个多字符帧由字符STX、命令码、数据、字符ETX以及和校验五部分组成,如图8-39所示,其中和校验值是将命令码到ETX之间所有字符的ASCⅡ码(十六进制数)相加,取所得和的最低两位数。命令码只有0、1、7、8四个数字,对应的功能为:“0”表示读PLC软元件数据;“1”表示写PLC软元件数据;“7”表示对PLC软元件强制置1;“8”表示对PLC软元件强制置0。命令码的主要操作对象是PLC的X、Y、M、S、T、C等软元件,“0”、“1”还可以对数据寄存器D操作。

978-7-111-44696-5-Chapter03-63.jpg

图8-39 多字符帧的组成

在FX系列PLC与计算机之间的通信中,PLC始终处于一种被动响应的地位,无论是数据的读或写,都是先由计算机发出信号。开始通信时,计算机首先发送一个控制字符ENQ,去查询PLC是否做好通信的准备,同时也可检查计算机与PLC的连接是否正确。当PLC接收到该字符后,如果它处于RUN状态,则要等到本次扫描周期结束(即扫描到END指令)时才应答;如果它处于STOP状态,则马上应答。若通信正常,则应答字符为ACK;若通信有错,则应答字符为NAK。如果计算机发送一个控制字符ENQ,经过5s后,什么信号也没有收到,此时计算机将再发送第二次控制字符ENQ,如果还是什么信号也没有收到,则说明连接有错。当计算机接收到来自PLC的应答字符ACK后,就可以进入数据通信了。

当计算机发送数据时,其RS-232C接口上的ER端为高电平,与其相连接的FX-232AW型接口模块上的DR端也为高电平,表示计算机的数据就绪,PLC可以接收数据了。此时,PLC被强制处于接收数据状态。当计算机发送完数据后,必须将ER端置为低电平,保证计算机处于接收数据的状态,以读取PLC的应答信号。当计算机收到PLC的应答信号后,复位通信电路,表示本次通信完成。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈