PLC与PC通讯应用实例
发表时间:2018-09-08
1) 通讯系统的连接
图1 RS232转RS485通讯结构图
图中是采用 FX-232ADP 接口单元,将一台通用计算机与一台 FX2 系列 plc 连接进行通讯的示意图。
2) 通讯操作
FX2 系列 plc 与通讯设备间的数据交换,由特殊寄存器 D8120 的内容指定,交换数据的点数、地址用 RS 指令设置,并通过 plc 的数据寄存器和文件寄存器实现数据交换。下面对其使用做一简要介绍。
(1)通讯参数的设置
在两个串行通讯设备进行任意通讯之前,必须设置相互可辨认的参数,只有设置一致,才能进行可靠通讯。这些参数包括波特率、停止位和奇偶校验等,它们通过位组合方式来选择,这些位存放在数据寄存器 D8120 中,具体规定如下表1所示
表1串行通讯数据格式
D8120 的位 |
说明 |
位状态 |
|
0 ( OFF ) |
1(ON) |
||
bo |
数据长度 |
7 位 |
8 位 |
b1 b2 |
校验( b2 b1 ) |
( 00 ):无校验 ( 01 ):奇校验 ( 11 ):偶校验 |
|
b3 |
停止位 |
1 位 |
2 位 |
b4 b5 b6 b7 |
波特率( b7 b6 b5 b4 ) |
( 0011 ): 300bps ( 0100 ): 600bps ( 0101 ): 1200bps ( 0110 ): 2400bps ( 0111 ): 4800bps ( 1000 ): 9600bps ( 1001 ): 19200bps |
|
b8 |
起始字符 |
无 |
D8124 |
b9 |
结束字符 |
无 |
D8125 |
b10 |
握手信号类型 1 |
无 |
H/W1 |
b11 |
模式(控制线) |
常规 |
单控 |
b12 |
握手信号类型 2 |
无 |
H/W2 |
b13~b15 |
可取代 b8~b12 用于 FX-485 网络 |
使用说明如下:
1)如 D8120 = 0F9EH 则选择下列参数。
E = 7 位数据位、偶校验、 2 位停止位
9 =波特率为 19200bps
F =起始字符、结束字符、硬件 1 型( H/W1 )握手信号、单线模式控制
0 =硬件 2 型( H/W2 )握手信号为 OFF
2)起始字符和结束字符可以根据用户的需要自行修改。
3)起始字符和结束字符在发送时自动加到发送的信息上。在接收信息过程中,除非接收到起始字符,不然数据将被忽略;数据将被连续不断地读进直到接到结束字符或接收缓冲区全部占满为为止。因此,必须将接收缓冲区的长度与所要接收的最长信息的长度设定的一样。
(2)串行通讯指令
该指令的助记符、指令代码、操作数、程序步如下表所示。
RS 指令用于对 FX 系列 PLC 的通讯适配器 FX-232ADP 进行通讯控制,实现 PLC 与外围设备间的数据传送和接收。 RS 指令在梯形图中使用的情况如下图所示。
[S] 指定传送缓冲区的首地址
[m] 指定传送信息长度
[D] 指定接收缓冲区的首地址
[n] 指定接收数据长度,即接收信息的最大长度
1) RS 指令使用说明
( a )发送和接收缓冲区的大小决定了每传送一次信息所允许的最大数据量,缓冲区的大小在下列情况下可加以修改。
发送缓冲区――在发送之前,即 M8122 置 ON 之前。
接收缓冲区――信息接收完后,且 M8123 复位前。
( b )在信息接收过程不能发送数据,发送将被延迟( M8121 为 ON )。
( c )在程序中可以有多条 RS 指令,但在任一时刻只能有一条被执行。