第一章 系统概述
本章内容: 本章概括地介绍了ControlLogix 系统的基本结构和性能特点,简单地阐述了控制器和网络的基础类型,建立了相关的基本概念。
本章目的: 通过本章的学习,了解ControlLogix 系统的基本特点和功能;了解ControlLogix 系统控制器的基本类型及用途;了解ControlLogix 系统的基本网络及特点,对ControlLogix 系统有一个全局的概念。
一.ControlLogix 系统特点介绍
ControlLogix 系统是罗克韦尔自动化有限公司(艾伦布拉德利有限公司)继传统的可编程序控制器PLC2、PLC5/SLC之后推出的第三代工业控制产品,从硬件配置、通讯方式到数据结构都有根本性的变化,控制和数据传送概念也完全不同。它是高度模块化结构的、可灵活地进行任意组合和扩充的高性能控制平台;通过背板强大的网关功能完成信息层、控制层和设备层三个开放式的通讯平台之间的自由转换,并兼容DH+、RI/O、DH485/串口等传统通讯网络;IEC 1131-3 标准的结构体数据形式可完善地表达生产过程数据实体并使得控制器与外部系统的数据交换实现无缝连接。ControlLogix 系统的使用是简单而便利的,但整个控制系统硬件配置、网络组态和数据流的规划却是不可忽视的,在有大量数据交换的系统中显得尤其重要。
1. ControlLogix 系统的的编程环境
作为ControlLogix控制器编程终端的PC机或笔记本电脑,通常情况是,在Windows NT / Windows 2000/ Windows XP 操作系统下安装:
· RSLogix5000 编程软件
· RSLinx 连接软件
· RSNetWorx for ControlNet 网络组态软件
· RSNetWorx for DeviceNet 网络组态软件.
· RSNetWorx for EtherNet 网络组态软件.
RS NetWorx 软件根据选用的网络类型有不同的安装。
2. ControlLogix 系统的分类
功能强大的ControlLogix 系统广泛地适用各种不同的用途,可根据需求灵活地选择多种方案,在ControlLogx 系统中,可从应用或产品结构的不同角度进行分类。
按ControlLogix 系统的控制功能分类有:
· 顺序控制
· 过程控制
· 驱动控制
· 运动控制
按ControlLogx系统的控制器类型分类有:
· ControlLogix 控制器
· FlexLogix 控制器
· CompactLogix 控制器
· SoftLogix 控制器
· DriveLogix 控制器
按ControlLogx系统的网络类型分类有:
· EtherNet
· ControlNet
· DeviceNet
· DH+/
· DH485/串口
· 第三方通讯
二. ControlLogix 控制功能介绍
作为第三代控制器产品的ControlLogix 控制器的功能已经不限于单纯的时序逻辑控制了,它是一种综合型的控制器,所能实现的控制功能,几乎覆盖了工业控制系统的基本需求。尽管控制功能齐全,但不是替代了所有的专用型的控制系统,它是一种通用的,相对专用系统而言价格低廉的,用于常规控制的控制设备,其适应性、综合性、互通性、集成性和易于使用是其它控制系统无可比拟的。
1. 顺序控制
顺序控制主要用于完成时序逻辑的控制,在传统的可编程序控制器中已经得到了充分的发展,ControlLogix 控制器全盘引进PLC5增强型的指令系统,完全满足了时序逻辑控制的要求。在这一方面,ControlLogix 控制器无须作更大的改进,就已经相当完善了。除了一般的顺序控制,现有的控制器也有较强的数据处理能力,如复杂的算术运算功能,文件处理功能等等,简单的PID运算控制目前也放在梯形图中处理,就算一个最简单的控制器,其功能也远远不止顺序控制。
2. 过程控制
过程控制是用DCS系统实现的。小型的DCS系统改装成以微型计算机作硬件设备,微软操作系统作软件平台,通用关系数据库作实时数据库的服务器,分离出了控制器和I/O模块,这使得它跟带上位机的PLC系统的结构很相似。在ControlLogix 控制器的指令系统中引进了功能模块,即仪表控制的模式,ControlLogix系统的结构化数据形式,对应了DCS系统的仪表结构数据,所以,只要对功能模块组态,就可以实现过程控制了。值得指出的是,ControlLogix所实现的过程控制是较为简单的常规的仪表控制,对于控制要求不是太高,而系统的逻辑时序控制又大量存在的工艺过程,采用较之DCS系统便宜得多的ControlLogix控制系统,是非常好的选择。当然,大系统的高精要求的过程控制,仍然是DCS系统来完成。
1. 驱动控制
驱动控制主要指的是安放在变频器上的控制器所实现的控制,系统的逻辑控制关系及控制参数的输出极便利地直接地从控制单元送到了变频器,而集成在ControlLogix 系统的通讯结构,又使得变频器与整个系统关系紧密。在传统的控制器与变频器之间仅仅只存在通讯关系,在传统的通讯网络中传送变频器参数。显然,驱动控制在快速性和可靠性上是优于传统的通讯方式的,从而,精密准确地实现了驱动控制。同样值得指出的是,ControlLogix所实现的驱动控制是常规的驱动控制,对要求精度高,速度快的驱动控制系统,仍然是用专门的调速控制系统来实现的。
2. 运动控制
运动控制又称为伺服控制,实现对运动轴的各物理量进行控制,在传统的可编程序控制器PLC5/SLC500中,也可实现这种功能,是用特殊的伺服模块驱动轴运动,采用专用软件MML组态运行过程。ControlLogix 控制器建立了一套运动控制指令,在梯形图中直接编制运行过程,通过执行指令来实现运动控制,简洁而快速,仍然值得指出的是,ControlLogix所实现的运动控制是常规的运动控制,对精度高,速度快和有特殊要求的运动控制,还是应该选择专用的数控系统来完成复杂的运动控制过程。
二. ControlLogix 控制器类型介绍
ControlLogx系统推出的是系列产品,为了提供更多的方案选择,系统配置获得较高的性价比,且适合各个层次的应用,应该有丰富的产品类型供给选择。目前,ControlLogx平台有5种类型的控制器,针对不同的用途和功能,可以选用不同类型的控制器。下面是关于每一种类型的控制器的特点介绍。
1. ControlLogix 控制器
ControlLogix 控制器适合上千个I/O点的控制系统, 具有极强的网络功能, 通过强大的网关作用的背板可以连接AB控制器的所有的网络,是替代PLC5的第三代控制器产品,其特点是:
· 小巧尺寸的占用单槽的控制器具有极高的性能
· 所需空间比传统的控制器小20%到50%
· 允许各种模块混合使用的模块化结构
· 允许多个控制器位于同一机架中
· 每个控制器允许最多250个通讯连接
· 可寻址最多128000个离散点或4000个模拟量点
· 可扩展内存以适应各种应用尺寸
· 容易与现有的传统产品的系统(如PLC5、SLC500)集成
· 支持NetLink 网络
--- DeviceNet
--- ControlNet
--- EtherNet/IP
· 提供集成多达16个伺服模块(32轴)的同步和分布的运动控制
ControlLogix 控制器硬件的基本结构是:
· 机架 4槽、7 槽、10槽、13槽、17槽 ,每个机架自供电源。
· 控制器模块 Logix5550 Logix 5553 Logix5555
· I/O模块 离散量模块、模拟量模块、高速计数模块
--- 与控制器数据交换使用生产者/用户方式
--- 外信号回路带电子保险
--- 外信号回路隔离
--- 可对模块进行诊断
--- 模拟量可进行工程定标并可带时间标记
--- 模块的防错插入采用电子辩识
--- 可带电拔插模块
· 通讯模块 对应通讯网络的模块
--- 1756-ENET/B 1756-ENBT EtherNet
--- 1756-CNB/CNBR ControlNet
--- 1756-DNB DeviceNet
--- 1756-DHRIO DH+
2 . CompactLogix 控制器
CompactLogix 控制器适合几百个点的工作站级的小型控制系统, 是将要替代SLC500 的CXL产品,它以1769系列的I/O模块作为扩展模块,其特点是:
· 无需机架
· 能安装在导轨和面板上
· 能纵向或横向扩展
· 具有从512K到
· 支持最多960个扩展I/O点(最多可扩展30个I/O模块)
· 提供单独的供电模块
· 支持ControlNet 、EtherNet/IP和串口通讯
· 支持DeviceNet 扫描器和适配器工作方式
3. FlexLogix 控制器
FlexLogix 控制器是从1794系列的适配器发展而来的,兼容了较为丰富的1794 I/O模块,特别适合分布控制,其特点是:
· 占用很小空间的
· 能安装在导轨和面板上,并位于靠近处理过程或机器的地方
· 标准组件,允许模块混合使用
· 无需机架
· 具有64K(FlexLogix5433)和512K(FlexLogix5434)的固定内存
· 支持1或2个组合(扩展本地I/O,最多16个I/O模块)
· 支持多达512个I/O点
· 可在控制器上安装2个Net Linx网络的通讯卡
· 支持ControlNet 、EtherNet/IP和串口通讯
· 支持DeviceNet 扫描器和适配器工作方式
4. SoftLogix 控制器
SoftLogix 控制器是基于PC机微软操作平台的控制器,它适用于上位机操作和控制紧密结合的系统,其特点是:
· 将操作员站和控制器捆绑在同一台工控机中
· 当模块组态和控制时将通过映象产生一个虚拟的框架
· 兼容罗克韦尔软件和微软
· 与存在的远程I/O通讯
· 执行用户编写的C 代码
· 支持EtherNet/IP 、ControlNet 和DeviceNet
5. DriveLogix 控制器
DriveLogix 控制器是专用于变频驱动器的控制器,它可以减少控制层和变频驱动器之间的通讯,将相关的逻辑控制直接放在变频驱动器上,其特点是:
· 内置于高性能的PowerFlexTM 700S驱动器之中
· 对本地Flex I/O进行控制
· 具有高速的Net Linx 的通讯卡
6. ProcessLogix 控制器
ProcessLogix 控制器是小型 DCS系统的控制器,与ControlLogix控制器共用1756的框架及其I/O模块,这两种控制器可混和搭成一个系统,DSC系统与PLC信息交换的无缝连接,从而得以实现,前面谈到的过程控制不是指的用ProcessLogix 控制器,而是在ControlLogix控制器中使用功能块,实际上是ProcessLogix 控制器的功能块移植到ControlLogix控制器后,ControlLogix控制器才有了过程控制的功能。ProcessLogix 控制器的特性是:
· 集成了用户显示图形、报警、历史数据归档
· 标准的用户定义的监控模板
· 集成了确定性网络和现场总线
· 在控制器之间一对一发送信息
· 容易地与PLC5和ContrlLogix控制器连通
· 全局的诊断能力
· 强大的回路调节能力
· 服务器/控制器/网络冗余
· 易于和ControlLogix构成混和系统
以上是各种类型控制器的特性列举,如果稍加归纳,不难发现,其实可以归为两大类,一类是ControlLogix控制器,以模块为基本单位,基于背板ControlBus 的通讯网络互换,在通讯上是极为灵活和便利的,所有的ControlLogix产品的优势尽在其中;还有一类相似于传统的可编程序控制器,还是以一个控制器带多个专属的I/O模块,但不使用框架,也即不使用背板来实现I/O数据收集了,而是用I/O模块的挂扣来自身延伸,其集成和扩展方便是不言而喻的,通讯类型放在控制器选择,也是模块化的,可更换的。这种产品以其价格低廉应用于通讯要求不是很复杂的系统。严格地说,ProcessLogix 控制器并不属于这一个系列的产品,只是因为与ControlLogix的控制器混和使用,才在此简单介绍。
本书旨在介绍ControlLogix系统的性能,基本以ControlLogix控制器为主,掌握了这种控制器的产品特点,举一反三,学习其它类型控制器的使用应该不会太难。
四. ControlLogix 系统网络类型介绍
支持ControlLogix设备的三个开放式网络EtherNet、ControlNet和DeviceNet,具有NetLink 结构,把网络服务、CIP(控制和信息协议)及开放式软件接口结合在一起。专门设计的NetLink结构覆盖了信息网、控制网和设备网三层结构。根据特定的应用需求,可以混合搭配一层、两层或三层。无需额外的编程组态或创建路由表,就可以在网络间自由地传送数据。
ControlLogix系统同时还兼容早期PLC/SLC500的传统的DH+、RI/O和DH485网络,使用专用的接口模块和专用的通讯端口与之相连,并在数据传送上也实现了兼容。
ControlLogix系统也支持与第三方通讯的模块,传统的控制器与第三方通讯的几种模式,在此仍然兼容,且控制器与通讯模块之间的数据传送变得非常简单,这恰恰是PLC5/SLC500最难处理的部分,此外,容量也变得更大。
1. EtherNet
EtherNet /IP 是实现信息层和控制层的物理网络,当它用于控制网时,不同于ControlNet 的是不能发送或接受确定性的数据,其特点是:
· 允许系统在网上控制,组态和采集数据并连结到工厂管理系统
· 管理大量的控制数据和信息数据
· 提供多方连通给几乎所有的计算机系统和应用软件包
· 获得商用的芯片和物理媒介质的众多的优势
2. ControlNet
ControlNet 也是实现信息网和控制网的物理网络,甚至延伸到设备层。该网络是一个开放式的网络,基于有效的生产者/用户方式,它高速地在同一网络上传送下列数据:
· 预定性的数据 如I/O模块的刷新、控制器到控制器的对传数据。
· 非预定性的数据 如程序的上载和下载,信息指令的执行和上位机数
据的监控。
ControlNet 与传统的DH+和RI/O一样,是在控制器和I/O设备之间的高速数据网络,但它不同于DH+和RI/O的是:
· 高速和可靠
--- 高达 5Mbits/second 的网络速度
--- 改善了I/O性能
--- 改善了点对点的通讯
--- 可确定和可重复的数据发送
· 灵活的控制系统结构
--- 多控制器在同一网络上控制I/O
--- 同一个网络用于编程和I/O控制
--- 可从任一个节点进入网络
· 灵活的结构选择
--- 可选择网络冗余的媒介质
--- 在同一网络上的递增的节点号
· 提高用户编程能力
--- 用户可选择的控制和I/O刷新时间
--- 在线反馈的网络利用带宽
· 性能的提高
--- 通讯延迟的消除
--- 1756 远程机架不采用块传送而改用MSG指令完成
ControlNet 的网络基本技术参数如表1-1所列:
表1-1
数据包容量 | 数据传送速率 | 网络更新时间 | 电缆长度(每个段) | 最大分支长度 | 最大节点号 |
| | | | | |
512字节 | 5Mdps | 2-100ms | 99 |
3. DeviceNet
DeviceNet是全球的工业标准网络,基于生产者/用户方式,该网络被设计成由高级设备(如控制器)和智能I/O设备(如光电传感器)直接连接的界面,是一种多主(不止一个扫描器)多从(不止一个适配器)的网络结构,其特点是:
· 互用性 多主的单一设备(符合DeviceNet标准的)是可交换的,提供机动和选择
· 公共网络 开放的网络提供了公共的解决方案以满足各种各样的设备网络
· 节省的配线
--- 网络设备安装比传统的I/O配线节省
--- 一根配线同时支持通讯和24V电源
· 低维护费用 撤除或重新安装设备不需要中断其他设备的使用
DeviceNet的网络基本技术参数如 表1-2所列:
表1-2
数据包容量 | 数据传送速率 | 干线电缆长度 | 支线电缆长度 | 最大分支长度 | 最大节点号 |
| 125Kdps | | | ||
8字节 | 250Kdps | 64 | |||
| 500Kdps | | |
4. DH+/
提供1756-DHRIO通讯模块连接传统的DH+网络和RI/O链,以便于PLC5和SLC/504控制器系统的兼容。它们遵循传统控制器中使用的原则,在组态通讯口的路由表时,更像远程网的应用原则,这在传统控制器的应用中反而少见,因为传统的控制器远程网之间通讯网关的建立是比较复杂的,而ControlLogix系统中,由于背板的网关作用,远程网之间的通讯关系反而简单。
5 .串口/DH485
串口通讯是直接连接到设备的简单容易的方式,是通常采用的控制器自己的编程口。
· 控制器上的串口可连接到MODEM、通讯模块或控制器(不超过
· Logix5000控制器用1756-CP3电缆直接连接控制器的串口。
传统的DH485网络,在CompactLogix中仍然保持,以便于SLC控制器系统的SLC/503和SLC5/02的连接,保留在串口的如同SLC500的串口的组态方式中,也能找到DH485的组态选择, 亦可象SLC的串口一样可以改成DH485口使用。
此外,采用MVI(第三方兼容通讯模块)连接串口设备也是满足用户要求的选择。
6. 第三方通讯模块
与第三方的通讯,如串口、MODBUS、PROFBUS 亦有相应的第三方兼容通讯模块可以选用。目前ProSoft 技术公司提供了在ControlLogix平台与第三方通讯的模块供选择使用。这些通讯模块在ControlLogix平台上与控制器的数据交换方式跟DeviceNet的扫描器模块是相似的,几乎可以把它们看成是一个大容量的双向数据交换的I/O模块。
习题
1、 作为编程终端的PC机或笔记本电脑通常要装哪几个RA的软件?
2、 ControlLogix系统中,可完成哪些控制功能?
3、 一共有几种类型的控制器,它们分别用作于什么样的需求?
4、 ControlLogix系统中,可用哪些网络完成通讯?
5、 什么是LinkNet ? ControlLogix系统中,哪几个网络是LinkNet的结构?
- 熄灭 控制器未上电。
- 绿灯常亮 控制器工作正常。
- 绿灯闪烁 控制器正在将项目存入闪存或从闪存读出程序。
- 红灯闪烁 内存没有程序,新控制器应当是此状态,或正在更新Firmware 版本。
- 红灯常亮 控制器故障状态,需要排除故障。
· BAT 锂电池报警状态
- 熄灭 电池正常。
- 红灯亮,没有电池或电池电压偏低。
状态指示灯会因控制器类型不同而异,但指示灯状态的含义是相同的。
2. 钥匙开关
钥匙开关是用硬件来决定控制器的工作状态,又称为本地工作状态,它一共有三个选择档位:
· RUN 选择此档,令控制器工作在本地运行,编程终端不能改变控制器的工作状态。此时程序不能被修改,实用中,为保证控制器程序不被意外地修改,会选择此档并拔离钥匙。
· PRO 选择此档,令控制器工作在本地编程,编程终端可以对控制器程序进行修改,但不能改变控制器的工作状态
· REM 选择此档,令控制器处在远程状态,编程终端可远程地改变控制器的工作状态(编程、测试或运行),并可在远程运行状态下修改程序,修改过程比编程状态下更谨慎而烦杂,一定要经历测试的步骤,这种情形适合不能停机的程序修改。
3. 锂电池
用于保护内存的锂电池在面板处安装,意味着要在控制器所在框架不断电的情况下更换电池,否则有可能造成内存丢失,不可将控制器拔离框架更换电池,习惯使用SLC500 的人,有可能犯这样的错误。关于电池的寿命,请参照选型手册。
4. 串口
控制器的串口,主要是用来编程的,也可通过背板到达任何网络,当整个控制系统正常工作,各个网络的数据传送都在忙碌中,建议使用串口来下载或上载程序,ControlNet和EtherNet在网络数据传送忙碌时,会把编程软件的访问压在最后,往往导致下载或上载的操作失败。
控制器有两个CPU同时工作,分别称为背板CPU和逻辑CPU,它们担负着不同的工作,运行是相互独立的,却又紧密关联的。
1. 背板CPU
背板CPU负责外部数据交换的操作,外部数据指的是控制器通过背板发送给外部设备的数据,或者是控制器通过背板接受的外部设备的数据,它既包括预定性数据I/O模块的交换数据,I/O强制数据表,控制器的Produced/Cosumed数据交换;也包括非预定性数据缓冲区。这些外部数据都由背板CPU来进行管理,被放在作为数据缓冲区的基本内存单元。背板CPU有比逻辑CPU更高的优先级别,当背板CPU有新的外来数据要刷新数据缓冲区(基本内存)时,它可以中断逻辑CPU 正在进行的数据通讯,抢先刷新数据缓冲区,这可能使得一些多于32位的标签发生新旧数据混和的情况,如果逻辑CPU被中断的正是较大数据块的通讯的话。
2. 逻辑CPU
逻辑CPU专门负责用户程序的逻辑扫描和系统管理。这两部分工作,在CPU的时间运用上,是交替进行的,并占用不同的CPU运用的百分比值,可由用户根据运用情况自行定义。缺省值是10%,即连续任务扫描时间占CPU运用时间的90%,系统管理占用CPU运用时间的10%。
逻辑CPU进行逻辑扫描时,每当一个任务的所有的程序扫描结束,便进行一次输出数据的刷新,如果中断任务次数太多,影响到任务的执行时间,也可以令某个任务的输出数据的刷新被关闭(选项设置)。其实,输出数据的刷新,即控制器向输出模块传送数据,这也是系统管理工作的一部分。在逻辑CPU进行系统管理时,用的是片段时间,它与连续任务的逻辑扫描交替进行着,并不长时间占用。
逻辑CPU的系统管理的内容包括:
对于信息通讯的管理,有以下原则可遵循:
图2-1
1. 任务
任务分为连续型、周期型和事件触发型三种执行类型,每个项目的32个任务(或8个任务)中可以定义一个且只能定义一个连续型的任务,其余均为周期型或事件触发型任务。
· 连续型任务指的是周而复始执行的任务。
· 周期型任务指的是定时中断执行的逻辑程序,周期性的执行任务,须定义周期时间。
· 事件触发型任务指的是事件触发引起的任务调用,事件触发可以是外部输入点变化引起(如同PLC5/SLC),也可以由Consuned Tag引起或直接指令调用引起,还可以由运动控制状态引起。
周期型任务要指定执行的周期时间和中断优先级别,中断级别低的任务将被中断级别高的任务中断,中断级别共有15个(序号1-15),序号越低中断级别越高。连续型任务是连续不断执行的逻辑程序,也可以认为是中断级别最低的任务。
事件触发型任务要定义触发事件,同样也要定义中断优先级别,其中断规则和周期型任务一样。事件触发型任务与周期型任务一起判别中断,可互相中断。
每个任务可自行设置看门狗时间,以监视本程序的执行,当程序运行时间超过看门狗时间(例如出现程序死循环),即报告故障。
例如,在一个项目中有1个事件触发型任务1个周期型任务和1个连续型任务。
表2-1
任务 | 任务类型 | 中断级别 | 执行时间 |
1 | 事件触发型 | 5 | 2ms |
2 | 10ms 周期型 | 10 | 4ms |
3 | 连续型 | 无(最低) | 24ms |
执行情况:
图2-2
注意:
· 所有的周期型任务和事件触发型任务都可以中断连续型任务。
· 高优先权任务中断所有的低优先权任务。
· 高优先权任务可多次中断低优先权任务。
· 同等级优先权的任务同时触发时各轮流执行1ms,交互进行。
· 当连续型任务完成全部扫描时,立即重新开始新的一轮扫描。
2. 程序
程序是任务下的组织结构,由一个数据库和多个子程序组成。每个程序都拥有一个独立的数据库,在这个数据库建立的数据标签只能被本程序内的子程序引用,且都是内部数据,换言之,每个子程序只能引用本程序的数据库和控制器数据库,不能引用其它程序的数据库。每个程序中必须指定一个子程序为主控程序,作为本程序运行的启动程序,每个程序中还可以指定一个故障处理子程序,以解决本程序内任何子程序运行时而引起的故障,其余的子程序均由主控程序中的调子程序指令(JSR)调用。
未预定程序(Unscheduled Programs) 中存放备用或暂不运行的程序,这些程序在项目下载时,会下载到控制器中,但不会执行。
注意:
· 故障处理子程序一般用来编写清除故障的恢复程序,在本程序内由于指令执行产生的错误,或本程序引用的I/O连接故障,都有可能引起停机,定义的故障处理子程序是停机之前要调用的子程序,如能在这个子程序中清除可恢复故障的错误代码,就可避免停机。
· 主控程序和故障子程序均可重新被指定。
· 在一个程序里定义的子程序可以再分配到另外一个程序中去。
· 采用JSR指令调用子程序,可以带入和带出参数,也可以不带任何参数。
3.子程序
子程序是真正的执行程序, 所有的控制都被编写在子程序中,子程序的编写有梯形图,顺序功能流程图,文本和功能块4种编程模式。不同类型的控制器可使用的编程模式也不同,如表2-2所示:
表2-2
控 制 器 | | 编 程 模 式 | | |
类 型 | 梯形图 | 顺序功能流程图 | 语句结构 | 功能块 |
ControlLogix | a | a | a | a |
SoftLogix | a | | | a |
CompactLogix | a | a | a | a |
FlexLogix | a | a | a | a |
DriveLogix | a | a | a | a |
注意:
· 梯形图是最常采用的编程模式,是由梯级组成的程序结构,每个梯级则由输入指令和输出指令组成。丰富的指令系统满足面对生产过程的顺序控制要求、数据处理和对外信息交换。
· 顺序功能流程图实际上是编辑步的执行顺序结构,步和转换条件是执行的基本单元,可选分支(选择执行)、并行分支(同时执行)或跳转等搭成执行结构,即执行流程图,所以,顺序功能流程图实际上只是一个结构,而并非真正的编程内容,它的步和转换条件往往是梯形图程序。
· 文本编程是ASCII输入方式编写的程序,用语句来描述逻辑关系,是软件开发人员容易接受的一种编程方式。
· 功能块编程只对应过程控制,是引入的DCS系统的仪表控制组态方式,由功能块之间的连接建立程序结构,并进行参数设置,每个功能块都可以完成特定的功能,并有自己专用的结构数据。
4. 控制器的故障程序和上电程序
独立于任务之外的两个特殊的控制器程序故障程序和上电程序,它们担负着特殊的工作。
· 故障程序 当控制器发生主要故障而引起停机之前调用的程序,一般情况下,用于编写有序的停车和可恢复故障的消除,用以减少停机次数,提高系统的可靠性。
· 上电程序 只有在控制器处在RUN状态下,上电时才执行一次,可用于上电时初始化的一些操作。但有许多控制器进入运行后数据初始化的一次性操作,更多的是用特殊的关键字符S:FS 作为级条件来完成,如同PLC5/SLC中的S:1/15地址的运用。
和其他程序一样,故障程序和上电程序也拥有独立的数据库和多个子程序,也有主控程序和故障子程序的定义。
五. 控制器数据文件的结构
1.控制器的数据区域
ControlLogix系统的控制器中建立的数据库分为全局数据区域和程序数据区域。这两个数据区域的数据引用范围是不一样的,由于区域的划分,可以使得按生产过程和程序功能分类的数据在查询和运用上更为清楚和方便。
· 全局数据区域 又称控制器数据区域, 它含有全部的对外数据和公用的内部数据,其数据可被控制器内所有的子程序引用。
· 程序数据区域 全部为内部数据,其数据只能被本程序内的子程序引用。各程序之间的数据区域是隔离的,以防止标签命名的冲突。
数据的表达称为数据标签(TAG),书写方式遵循IEC 1131-3标准,即由大小写字母、0至9的数字和下划线组合而成,用来描述控制对象,它由下面要谈到的各种数据类型构成。数据标签的简洁表达亦是节约内存空间的做法之一。
2. 控制器的数据类型
ControlLogix系统的数据类型是基本数据类型和由基本数据类型构成的结构化数据类型,结构化数据类型和通常的关系数据库的记录是一样的结构方式,这使得工业系统获得的数据与管理系统处理的数据在交换时可以做到无缝连接。
2-1 基本数据类型
基本数据类型是构成结构型数据的基本元素,也是梯形图程序中或人机界面监控时引用地址的最小单位。
· BOOL 布尔数 0 --- 1 1 位
· SINT 短整数 -128 -- +127 8位