楼宇自控系统现场控制站软件系统
摘要:楼宇自控系统现场控制站要求具有很高的可靠性和实时性。KMC公司的KMDigtal系统除了对现场控制站的硬件进行适当地选择(如高可靠的结构、较高档的器件)以外,所使用软件也备有高可靠性和实时性。此外,现场控制站一般无人机接口,KMC公司的现场控制站软件还设计成可保证避免死机发生,并且具有较强的抗干扰能力和容错能力。
关键词:楼宇自控,系统,现场控制
KMC公司现场控制站软件采用模块化结构设计,不用操作系统。软件分为执行代码部分和数据部分。执行代码部分固化在EPROM中,而数据部分则保留在RAM存储器中,在系统复位或开机时,这些数据的初始值从网络上装入。
早期的现场控制站的软件一般都是专用的。它们大都采用数组的形式来定义数据结构,而且数据和代码部分密切相关。现场控制站的软件一般都采用通用形式,可以应用于不同的控制对象。对于不同的对象,只需生成不同的数据库和应用图形及控制回路即可。KMC公司为了使现场控制站能够应用于不同的对象,它的软件设计成代码部分与对象无关,而不同的应用对象只会影响存在RAM中的数据。各控制回路的执行代码也与具体的控制对象无关,它的执行只取决于存在RAM中的回路信息。1、现场控制站的数据结构
现场控制站的RAM中的数据是随着控制对象变化而变化。这些数据信息与数据结构一般称为实时数据库。它在系统的运行过程中不断地刷新,它的内容直接反映了所控制对象的运行状况。实时数据库可以将它理解成一个仓库,从各通道采集来的数据,以及网络上传给此现场控制站的数据存在实时数据库中,而其他模块(如输出模块,控制算法模块等)需要数据时,可以不直接到硬件上去取,而是直接从实时数据库中去取就可以了,同时运算的中间结果也存放在实时数据库中。实时数据库的另一个作用是实现数据共享,如几个控制算法都需要某一个输入信号,只需要一个输入模块周期性地输入该点的信息,并完成转换,将结果放在数据库中,这样不论有多少控制算法需要此点,只要去实时数据库拷来即可。楼宇自控系统现场控制站的实时数据库结构千差万别,各具特色。但一般都包括系统中所处理的各种点(包括采集点,输出控制点,计算中间变量点,控制算法结构)的几方面的信息:点索引标识,点字符名称(又称仪表号),说明信息,报警管理信息,显示用信息,转换用信息以及一些算法的计算用信息。系统中不同的点所对应的信息是不同的,有的很长,如一般一个模拟量点需要100多个字节,而一个开关量只需要60个字节的信息。为了节约内存,通常在系统的实时数据库中定义几种不同的数据结构,但又不能过于琐碎,否则会增加访问的难度和时间。系统硬件支持以下几种类型的信号:模拟量输入,模拟量输出,开关量输入,开关量输出。同时目标系统中还存在大量的计算,且产生的中间结果也要存入数据库,以方便管理。一般定义模拟量输入和输出信号为一种数据结梅定义开关量的输入和输出为一种数据结梅定义模拟计算量为一种数据结构;此外,为了节约开关量记录占据的内存空间,还可以定义一种开关量点组合结构。
(1)模拟点(包括模拟输入和输出量)信号数据结梅一个模拟点数据记录中应该包括该点的通道信息(包括信号类型和通道地址等)、转换信息、采样周期控制信息及极限检测信息。此外,它还应包括其它一些供显示和参考等用的说明信息。为了方便检索,每个点记录中还应包括一些索引信息。
(2)计算点和设定量点的数据结构是一种中间模拟量数据结构。在一个计算监控或闭环控制系统中,有相当多的一批数据是由采集得到的物理量进行计算得出的。例如,可以利用每秒钟采集的瞬时流量累积得到累积流量,功率可以由电压和电流的乘积得到等。另外,还有一些数据是操作员从键盘输入的数据参与一些计算,我们为这类数据定义一种数据结构。该记录中没有硬件和信号转换信息,而且报警也很简单。
(3)开关型输入和输出量数据结构基本上与模拟点信号数据结构相同,但有些项稍有些区别。
(4)以上举了几种常用信号的记录类型,在实际工业控制应用中往往还会遇到许多别的信号类型,例如脉冲累积量,还有后边再介绍的算法记录等。在KMDi91tal系统中,用户可依照给出的记录格式,自行定义任务和自己所需要的数据格式。
2现场控制站数据库的存取功能
这一数据结构的大小与实际的点数有关,这些数据信息一般存储在现场控制站的RAM中,该RAM通常为带电池保护,以防掉电后数据丢失。该数据区通常为一个公共数据区,各输入、输出模块和控制算法都可直接访问。该数据区的存储地址一般是固定的。
对该数据区的访问一般有以下几种形式:
(l)输入模块和输出模块取得通道信息和转换信息,进行相应的运算,并将执行结果存回数据库。输入模块存回实时值,报警检验结果等,输出模块则存回执行输出的结果状态。
(2)控制算法从数据库中取得它计一算所用到的输入变量的值,如PID算法的PV值等,而将控制结果写回数据库。
(3)广播数据模块每周期从数据库中取出各记录的实时值广播到网上,刷新其它各站的数据库。
(4)网络接收模块接到网上的控制信息包之后,将该信息(如果为某点的改变信息写回到该点记录中)。如接收下装数据库信息后,则直接将接收的信息依次写回各点记录。
3现场控制站的输入、输出软件
在楼宇自控系统中,现场控制站的执行代码(包括输入、输出处理模块,控制处理模块,控制回路运算模块和顺序逻辑控制模块等)都固化在EPROM中。而且,各算法均是以模块的形式编程的。各个模块的调用顺序按系统生成的数据结构和算法进行执行。
现场控制站一般固化有下列几种输入和输出处理模块:
(1)开关量输入处理模块是对输入开关量进行处理。开关量的输入一般是分组进行的,即一次输入操作可以输入8位或16位开关状态,然后分别写入这些位所对应的实时数据,并进行报警检测。报警检测就是判别当前值与系统所设的报警值是否一样,如果一样,则置报警位。
(2)模拟量输入处理模块对模拟输入量进行处理。模拟量输入信号的处理要复杂很多。首先是送出通道地址,选中所输入的通道,接着启动A/D转换,延时,读入A/D转换的结果,然后软件要进行一系列的处理。首先抑制尖峰信号:在连续性模拟量信号的输入中,真正的物理信号一般不应出现尖峰信号。但电感性电气设备(如电焊,大的电动机等)在附近突然启停、雷电、电源故障、仪表或电缆故障,都可能在信号传输线上产生尖峰干扰。尖峰信号如果恰好出现在采样时刻,就会造成较大的失真。KMDi91tal系统采用的办法是将每个周期的A/D转换结果与上周期的值进行比较。其次进行数字滤波。现场控制站所直接处理的大部分信号,一般不会产生突变。但由于各种电气干扰的存在或设备不稳,信号输入计算机时,不可避免地会引入一些微小的波动。有时,电源的波动也会在信号上产生一个周期性的波动。KMDi91tal系统不但在硬件线路中都有滤波措施,而且在软件中也通过一些软件技术来得到较好的信号值。经过处理后,还要对输入信号进行转换。A/D转换输入的是电压信号,需要根据各I/0通道对应的信号,将电压信号转换成信号的工程单位所对应的物理量。
(3)模拟量输出模块对模拟输出量进行处理。输出模块多为线性变换,目前输出信号一般为4-ZOmA的电流信号或1一5V的电压信号,输出转换是输入线性变换的逆运算。
(4)开关量输出模块对开关量输出量进行处理。开关量的输出极为简单,取出该位的值,和其它各输出位一同输出即可。除了上述几种处理之外,在现场控制站还可能存在其它输入/输出处理模块,如中断开关量输入,脉宽调制输出等。
4现场控制站的反馈控制
现场控制站一般装有一个控制算法模块库。用这些算法模块,可以生成绝大多数的控制功能,KMDi91tal系统还容许用户生成自己所需的控制规律,再下装到现场控制站去执行。
常用算法模块存
(1)加法、减法、乘法、除法算法这四种基本算法主要实现四则运算,它们还能提供一些与控制有关的功能。如在每个算法中,一般都设有上限、下限两个参数,当算法的输出结果越过上限或下限时,就利用上限值或下限值来作输出结果传给下一个连接算法或控制输出。
(2)PID调节模块PID调节是连续控制系统中应用最多的一种控制调节规律。它本身不但可以根据需要分解成P、PI、PD调节模块,而且很多复杂的控制规律(如串级调节,比值控制等)中均采用了PID调节。
(3)选择控制选择控制算法一般包括高选通、低选通和高低选通。这几种算法主要用来实现不同控制策略之间的切换。我们可以通过选择算法来实现优化控制和安全控制。
(4)现场控制站的其它控制算法不同的楼宇控制系统,其现场控制站支持的控制算法模块数也不相同。而且,同一种控制算法具体实现的功能也有所差别。在连续控制中,要得到较为满意的控制特性,简单地应用PID算法有时是不够的。所以,KMDigital系统的现场控制站上,还设置了其他控制算法,可以实现较为复杂的控制功能,如超前一滞后补偿控制,前馈控制,串级控制等功能。
(5)采样周期的选择计算机控制系统是离散控制系统。采样周期对控制性能的好坏起着很重要的作用。一般地说,要保证采样信号的真实性,采样频率必须大于信号所含的最高频率的二倍,但采样周期也不宜太长,频率太高既增加计算量,又要增加内存容量,提高成本,而且,频率高到一定的程度后,再高也不会提高信号的真实度。
5现场控制站的逻辑控制
反馈控制是根据输入给定与反馈信息的信号大小差别(连续量)来进行调节的,而且控制输出和执行机构也是连续调整的,所以反馈控制有时也称为连续控制。
而逻辑控制则突出顺序的作用,即控制执行是根据预先规定的顺序进行信息处理而产生控制输出。逻辑控制的主要功能大致可以分为:设备工作顺序的控制及全工序的管理联锁、紧急停车顺序自动计数功能;这两种控制结合起来,便可实现功能极强的组合控制功能。