DCS 是分散控制系统(Total Distributed Control System)的英文简称,指的是控制危险分散、管理和显示集中。60 年代末有人研制了作逻辑运算的可编程序控制器(Programmable Logic Controller),简称 PLC,主要应用于汽车制造业。70 年代中期以完成模拟量控制的 DCS 推向市场,代替以 PID 运算为主的模拟仪表控制。首先提出 DCS 这样一种思想的是原制造仪表的厂商,当时主要应用于化工行业,后又有计算机行业从事 DCS 的开发。
70 年代微机技术还不成熟,计算机技术还不够发达,操作站、控制器、I/O 板和网络接口板等都是 DCS 生产厂家自行开发的,也就是所有部件都是专用的。
70 年代初,有人用如 PDP/1124 这样的小型机代替原来的集中安装的模拟仪表控制,连接到中央控制室的电缆很多;如用小型机既作为控制器、同时把连接小型机的 CRT 又作为显示设备(即人机界面),一台小型机需接收几千台变送器或别的传感器来的信号,完成几百个回路的运算——很显然其危险有点集中:和模拟仪表连接的电缆一样多,并且一旦小型机坏了,控制和显示都没有了,数字控制没有达到预期的目的。
后有人提出把控制和显示分开:一台计算机完成控制计算任务,另一台计算机完成显示任务。另外,一个工艺过程作为被控对象可能需要显示和控制的点很多,其中有一些还需要闭环控制或逻辑运算;工艺过程作为被控对象的各个部分会有相对独立性,可以分成若干个独立的工序,再把在计算机控制系统中独立的工序上需要显示和控制的输入、输出的点分配到数台计算机中去,把原来由一台小型机完成的运算任务由几台或几十台计算机(控制器)去完成,其中一台机器坏了不影响全局——所谓"狼群代替老虎"的战术,这就是危险分散的意思。把显示、操作、打印等管理功能集中在一起,用网络把上述完成控制和显示的两部分连成一个系统,当时有人把这种系统称为集散系统。
危险究竟要分散到多少算合适呢?这与当时的计算机技术的发展水平有关。70 年代中期,彻底分散就是一个控制器完成一个回路的运算。当时由于人们对数字技术不太熟悉、习惯于模拟仪表,70 年代末、80 年代曾经风行回路控制器:把数字控制器做成和原来模拟仪表在外观上几乎完全一样,不改变操作习惯,内部把 PID 运算数字化,一块仪表(一台计算机)完成一个回路的控制任务。其价格较为昂贵,但危险是分散了。然后用通讯网络把各个控制器和以 CRT 为基础的人机界面连成一个系统,这时网络结构通常都是星形结构。回路控制器的制作成本太高,价格/性能比不好;后来为了减低成本,就有两回路的、四回路的控制器,它的价格/性能比稍好一些。对于一个大中型系统来说,DCS 的价格/性能比比回路控制器组成的系统要好,有些特殊地方还是要用到一些回路控制器。
如果所要完成的回路太多(如一个控制器采集几千点、完成几百个回路的运算),危险又太集中,在这种情况下危险必需分散。随着计算机技术的发展,计算机的运算能力、存储容量和可靠性不断提高,一台计算机所完成的任务也可以增加,完成的任务也可集中一点;另外控制器、网络等冗余技术也得到了发展,控制运算也可集中一些。
从目前的 DCS 来看,一个控制器完成几十个回路的运算和几百点的采集、再加适量的逻辑运算,经现场使用效果是比较好的。这就产生控制器升级的问题了。有时控制器和检测元件的距离还是比较远,这就促进现场总线的发展:如 CAN、LONWORKS、FF 等现场总线以及 HART 协议接收板等都用到 DCS 系统中。
DCS 分为三大部分:带 I/O 板的控制器、通讯网络和人机界面(HMI)。由 I/O 板通过端子板直接与生产过程相连,读取传感器来的信号。I/O 板有几种不同的类型,每一种 I/O 板都有相应的端子板:
每一块 I/O 板都接在 I/O 总线上。为了信号的安全和完整,信号在进入 I/O 板以前要进行整修,如上下限的检查、温度补偿、滤波——这些工作可以在端子板完成,也可以分开完成,完成信号整修的板现在有人称它们为信号调理板。
I/O 总线和控制器相连。80 年代的 DCS 由于控制器的运算能力不强,为了增加 I/O 点数把控制器的任务分开,实际上是有三种类型的控制器:完成闭环运算的控制器、模拟量数据采集器和逻辑运算器。它们分别有自己的 I/O 总线,各种 DCS 的 I/O 总线各不相同。如果要求快速最好采用并行总线,一般采用串行总线比较多,尤其是 RS485 总线较多;模拟量数据采集器和逻辑运算器的 I/O 点数可以多一些。
闭环控制器、模拟量数据采集器和逻辑运算器可以和人机界面直接连在通讯网络上,在网络上的每一个不同的控制器作为网络上的一个独立结点,每一个结点完成不同的功能,它们都应有网络接口。有的 DCS 为了节省网络接口,把所有的过程控制用的设备(即闭环控制器、模拟量数据采集器和逻辑运算器)预先连在控制总线上,称为过程控制站——这可以增加过程控制站能接收的 I/O 点数又能节省接口,然后再通过接口连到网络上与人机界面相连。随着计算机技术的发展,控制器的运算能力不断增强,如 PC 机做的一个控制器能力很强,既可接收模拟量运算也接收开关量逻辑运算,一个控制器成为网络上的一个结点,通过网络与人机界面相连。
控制器是 DCS 的核心部件,它相当于一台 PC 机(有的 DCS 的控制器本身就是 PC 机)。它主要有 CPU、RAM、E²PROM 和 ROM 等芯片,还有两个接口:一个向下接收 I/O 总线来的信号,另一个接口是向上把信号送到网络上与人机界面相连。ROM 用来存贮完成各种运算功能的控制算法(有的 DCS 称为功能块库)。库中存有功能块:如控制算法 PID、带死区 PID、积分分离 PID;算术运算加、减、乘、除、平方、开方;函数运算一次滤波、正弦、余弦、X-Y 函数发生器、超前-滞后;比较先进的算法有史密斯预估、C 语言接口、矩阵加、矩阵乘;逻辑运算有逻辑与、逻辑或、逻辑非、逻辑与非等。通常用站功能块不仅把模拟量和开关量结合起来,还与人联系起来。功能块越多,用户编写应用程序(即组态)越方便。组态按照工艺要求把功能块连接起来形成控制方案,把控制方案存在 E²PROM 中——因为 E²PROM 可以擦写,组态要随工艺改变而改变,所以把组态存在 E²PROM 中。不同用户有不同组态。组态时用户从功能块库中选择要的功能块、填上参数、把功能块连接起来形成控制方案存到 E²PROM 中,这时控制器在组态方式,投入运行后就成为运行方式。控制器中安装有操作系统、功能块组态软件和通讯软件。
为了系统安全运行,闭环控制器一定是冗余运行的:一用一备,并且是热备。为了使冗余成功应注意以下几点:两个控制器的硬件、软件版本必需一致;检查发送-接收的芯片是否完好;冗余的芯片是否完好;两个模件的设定是否一样;还要检查有没有带手操站等。
通讯网络把过程站和人机界面连成一个系统。通讯网络有几种不同的结构形式:如总线式、环形和星形。总线形在逻辑上也是环形的;星形的只适用于小系统。不论是环形还是总线形一般都采用广播式,其它一些协议方式已用的较少。通讯网络的速率在 10M 和 100M 左右。
人机界面有 4 种不同形式的结点:操作站、工程师工作站、历史趋势站和动态数据服务器。
DCS 和 PLC 的设计原理区别较大。PLC 是由模仿原继电器控制原理发展起来的,70 年代的 PLC 只有开关量逻辑控制,首先应用的是汽车制造行业。它以存储执行逻辑运算、顺序控制、定时、计数和运算等操作的指令,并通过数字输入和输出操作来控制各类机械或生产过程。用户编制的控制程序表达了生产过程的工艺要求,并事先存入 PLC 的用户程序存储器中;运行时按存储程序的内容逐条执行,以完成工艺流程要求的操作。PLC 的 CPU 内有指示程序步存储地址的程序计数器,在程序运行过程中每执行一步该计数器自动加 1,程序从起始步(步序号为零)起依次执行到最终步(通常为 END 指令),然后再返回起始步循环运算。PLC 每完成一次循环操作所需的时间称为一个扫描周期,不同型号的 PLC 循环扫描周期在 1 微秒到几十微秒之间。程序计数器这样的循环操作是 DCS 所没有的,这也是使 PLC 的冗余不如 DCS 的原因。
DCS 是在运算放大器的基础上得以发展的,把所有的函数、各过程变量之间的关系都作成功能块(有的 DCS 系统称为膨化块)。70 年代中期的 DCS 只有模拟量控制,如 TDC2000 系统,一个控制器一秒钟内能完成 8 个 PID 回路的运算,首先应用的是化工行业。
DCS 和 PLC 表现的主要差别是在开关量的逻辑解算和模拟量的运算上,即使后来两者相互有些渗透还是有区别。80 年代以后 PLC 除逻辑运算外也有一些控制回路用的算法,但要完成一些复杂运算还是比较困难;PLC 用梯形图编程,模拟量的运算在编程时不太直观、编程比较麻烦,但在解算逻辑方面表现出快速的优点——在微秒量级,解算 1K 逻辑程序不到 1 毫秒。它把所有的输入都当成开关量来处理,16 位(也有 32 位的)为一个模拟量;而 DCS 把所有输入都当成模拟量,1 位就是开关量,解算一个逻辑是在几百微秒至几毫秒量级。对于 PLC 解算一个 PID 运算在几十毫秒,这与 DCS 的运算时间不相上下;大型 PLC 使用另外一个 CPU 来完成模拟量的运算,把计算结果送给 PLC 的控制器。不同型号的 DCS 解算 PID 所需时间不同,但都在几十毫秒的量级(如早期的 TDC2000 系统一秒钟内完成 8 个回路的控制运算)。随着芯片技术的发展,解算一个算法的时间在缩短;解算一个算法所需时间与功能块的安排方式和组态方式有关。
在接地电阻方面,对 PLC 也许要求不高,但对 DCS 一定要在几欧姆以下(通常在 4 欧姆以下)。模拟量隔离也是非常重要的。在有爆炸危险的地方应配置本质安全栅。
相同 I/O 点数的系统用 PLC 比用 DCS 其成本要低一些(大约能省 40% 左右)。PLC 没有专用操作站,它用的软件和硬件都是通用的,所以维护成本比 DCS 要低很多。一个 PLC 的控制器可以接收几千个 I/O 点(最多可达 8000 多个 I/O),DCS 的控制器只能几百个 I/O 点(不超过 500 个 I/O)。如果被控对象主要是设备连锁、回路很少,采用 PLC 较为合适;如果主要是模拟量控制、并且函数运算很多,最好采用 DCS。DCS 在控制器、I/O 板、通讯网络等的冗余方面,一些高级运算、行业的特殊要求方面都要比 PLC 好得多。PLC 由于采用通用监控软件,在设计企业的管理信息系统方面要容易一些。
特别要指出的是,DCS 的专用操作站不是天经地义的,它是由历史原因形成的。DCS 厂家如再不开放操作站、与工厂的管理信息系统连网,个别 DCS 就有从市场中消失的危险。随着新技术的诞生,负面影响也跟着而来:新操作站的开放使病毒和黑客容易侵入到系统。在作设计时,在操作站上设置密码、系统多加隔离和防火墙,把负面影响减到最小。