1 .什么是可编程控制器的通信?
2 .通信的方式有哪些?
3 .什么是实时性?
4 .可编程序控制器之间是如何连接的?
可编程序控制器的组网与通讯是近年来自动化领域颇受重视的新兴技术。在可编程控制器及其网络中存在两类通信:一类是并行通信,另一类是串行通信。
二、通信方法的含义
可编程控制器网络是由几级子网复合而成,每级子网中都配置不同的协议,其中大部分是公司的专用通信协议。
各级子网的通信过程是由通信协议决定的。从根本上讲,要搞清楚某级可编程控制器子网的通信就必须彻底剖析它所采用的通信协议,这个工作量很大,更何况大多数又都是各公司的专用协议。繁琐的协议规定常会掩盖问题的本质,通常会遇到这样的情况:两个公司的专用协议,从协议的规定,帧格式等表面现象看可能有明显的不同,然而它们关于如何实现通信的思路却极为相似,如出一辙。抓住它们的同一性,就会把表面上孤立无关的事情串联起来。正是基于这样一种思想,我们引入了 “通信方法”这一概念。
可编程控制器网络的各级子网无论采用总线结构,还是环形结构,它的通信介质是共享资源。挂在共享介质上的各站要想通信,首先要解决共享通信介质使用权的分配问题,这就是常说的存取控制或访问控制。
一个站取得了通信介质使用权,并不等于完成了通信过程,还有怎样传送数据的问题,这就是常说的数据传送方式。比如说采用的数据传送方式是否要先建立一种逻辑连接,然后再传送?所采用的数据传送方式发给对方的数据是否要对方应答?发出去的数据是由一个站收,或者多个站收,还是全体接收?诸如此类就是所谓的数据传送方式。
这里所谓的通信方法 = 存取控制方式 + 数据传送方式。本来存取控制方式与数据传送方式都是通信协议有关层次的内容,这里专门把它们抽出来加以介绍,是因为用它们来描述一种通信过程与人们意念上有关通信的概念非常接近。对于局域网来说,存取控制方式与数据传送方式是其通信协议最核心的内容。
三、工业局域网实时性的含义
工业局域网对实时性是有要求的,各级子网对实时性的要求不同。通常愈靠底层的子网对实时性要求愈高,愈靠上层的子网对实时性的要求愈低。
实时性通常采用“响应时间”来定量描述。响应时间是指某一系统对输入做出响应所需的时间,以 ms, s, min, h 为计量单位。响应时间越短,就标志着系统的实时性越好。
可编程控制器网络中,各站通过通信子网互连在一起,当某站对子网请求通信时,它对响应时间是有要求的。不同站对实时性的要求可能不同,同一站中不同通信任务对实时性的要求也可能不同。一项通信任务的实时性得到满足是指其响应时间小于规定的时限;一个站的实时性合乎要求是指该站提出的所有通信任务在指定的时限内都能获得响应。整个通信子网的实时性符合要求是指分布在子网上每一个站的每项通信任务的实时性均得到保证。
要保证可编程控制器网络的实时性必须满足下列三个时间约束条件:
( 1 )必须限定每个站每次取得通信权的时间上限值,以防某一站长期霸占子网而导致其它各站实时性恶化。
( 2 )应当保证在某一固定的时间周期内,通信子网上的每个站都有机会取得通信权,这将为每个站提供基本实时性。
( 3 )对于重要的站可优先服务,对于某项紧急通信任务应当给予优先处理,应当可以用静态(固定)的方式赋予某些站以较高的优先权,应当可以用动态(临时)方式赋予某些紧急任务紧急以较高的优先权。
可编程控制器网络的实时性首先是由它所选用的存取控制方式来保证的。此外提高实时性还可以通过减少通信协议的层数来实现,一般靠底层的子网采用只包含 3 层通信协议的塌缩结构,这正是为了提高实时性,另外选择适当的数据传送方式对于提高实时性有明显的效果,发送数据要求对方应答,比无应答服务慢得多,要求连接又要应答的服务则更慢,而广播式通信最快。当然不能只考虑实时性,还要考虑可靠性。
四、可编程控制器控制网络与可编程控制器通信网络的概念
可编程控制器网络包括可编程控制器控制网络与可编程控制器通信网络两种,人们常常不加以区分,把这两种可编程控制器网络当成一回事,其实它们是不同的。
1 .可编程控制器控制网络
( 1 )功能
可编程控制器控制网络是只传送 on/off 开关量,且一次传送的数据量较少的网络。例如可编程控制器的远程 I/O 链路,通过 Link 区交换数据的可编程控制器同位系统。
( 2 )特点
可编程控制器控制网络尽管要传送的开关量远离可编程控制器,但可编程控制器对它们的操作,就像直接对自己的 I/O 区操作这样简单、方便迅速。
2 .可编程控制器通信网络
( 1 )功能
可编程控制器通信网络又称高速数据公路,这类网络既可传送开关量又可传送数字量,一次通信传送的数据量较大。这类网络的工作过程类似于普通局域网。
( 2 )特点
随着通信技术的发展,可编程控制器控制网络既传送开关量又能传送数字量,其实开关量与数字量没有界限,多位开关量并在一起就是数字量。
3 . 可编程控制器控制网络与可编程控制器通信网络区别
两种可编程控制器网络的本质区别在于: 可编程控制器控制网络 工作过程就像可编程控制器对自己 I/O 区操作一样, 可编程控制器通信网络 类似于普通局域网工作过程。
还需要说明一点的是:人们常把应用系统中的可编程控制器网络控制系统称为可编程控制器控制网络,这是针对应用而言,与通信无关,一般不会造成混淆。
可编程序控制器与计算机的通信
一、问题提出:
1 )计算机端是如何编程来实现接收和发送端口的数据的?
2 )如何设置特殊寄存器 D8120 ?
3 )可编程序控制器端是如何编程来接收和发送端口的数据的?
4 )如何将计算机和可编程序控制器连接起来?
二、概述
通用计算机软件丰富,界面友好,操作便利,使用通用计算机作为可编程控制器的编程工具也十分方便,可编程控制器与计算机的通信近年来发展很快。在可编程控制器与计算机连接构成的综合系统中,计算机主要完成数据处理、修改参数、图像显示、打印报表、文字处理、编制可编程控制器程序、工作状态监视等任务。可编程控制器仍然直接面向现场、面向设备,进行实时控制。可编程控制器与计算机的连接,可以更有效地发挥各自的优势,互补应用上的不足,扩大可编程控制器的处理能力。
为了适应可编程控制器网络化的要求,扩大联网功能,几乎所有的可编程控制器厂家,都为可编程控制器开发了与上位机通讯的接口或专用通讯模块。一般在小型可编程控制器上都设有 RS422 通讯接口或 RS232C 通讯接口;在中大型可编程控制器上都设有专用的通讯模块。如:三菱 F 、 F1 、 F2 系列都设有标准的 RS422 接口, FX 系列设有 FX-232AW 接口、 RS232C 用通讯适配器 FX-232ADP 等。可编程控制器与计算机之间的通讯正是通过可编程控制器上的 RS422 或 RS232C 接口和计算机上的 RS232C 接口进行的。可编程控制器与计算机之间的信息交换方式,一般采用字符串、双工或半、异步、串行通信方式。因此可以这样说,凡具有 RS232C 口并能输入输出字符串的计算机都可以用于和可编程控制器的通讯。
运用 RS232C 和 RS422 通道,可容易配置一个与外部计算机进行通讯的系统。该系统中可编程控制器接受控制系统中的各种控制信息,分析处理后转化为可编程控制器中软元件的状态和数据;可编程控制器又将所有软元件的数据和状态送入计算机,由计算机采集这些数据,进行分析及运行状态监测,用计算机可改变可编程控制器的初始值和设定值,从而实现计算机对可编程控制器的直接控制。
三、如何采用 FX-232ADP 的连接通信
RS232C 用通讯适配器 FX-232ADP 能够以无规约方式与各种具有 RS232C 接口的通讯设备连接,实现数据交换。通讯设备包括计算机、条形码读出器、图像检测器等。使用 FX-232ADP 时,也可用调制解调器进行远程通讯。
(一)通讯系统的连接
图中是采用 FX-232ADP 接口单元,将一台通用计算机与一台 FX2 系列 plc 连接进行通讯的示意图。
(二)通讯操作
FX2 系列 plc 与通讯设备间的数据交换,由特殊寄存器 D8120 的内容指定,交换数据的点数、地址用 RS 指令设置,并通过 plc 的数据寄存器和文件寄存器实现数据交换。下面对其使用做一简要介绍。
1 .通讯参数的设置
在两个串行通讯设备进行任意通讯之前,必须设置相互可辨认的参数,只有设置一致,才能进行可靠通讯。这些参数包括波特率、停止位和奇偶校验等,它们通过位组合方式来选择,这些位存放在数据寄存器 D8120 中,具体规定如下表所示
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 指令,但在任一时刻只能有一条被执行。
( 2 ) RS 指令自动定义的软元件

