1力控组态软件实时数据库点的组成及参数分析在生产监控过程中,许多情况要求将生产数据存储在分布在不同地理位置的不同计算机上,可以通过计算机网络对装置进行分散控制、集中管理,要求对生产数据能够进行实时处理,存储等,并且支持分布式管理和应用,力控实时数据库是一个分布式的数据库系统,实时数据库将点作为数据库的基本数据对象,确定数据库结构,分配数据库空间,并按照区域、单元等结构划分对点“参数”进行管理。一、数据库管理器DbManagerDbManager是定义数据字典的主要工具。通过DbManager可以完成:点参数组态、点类型组态、点组态、数据连接组态、历史数据组态等功能。在Draw导航器中双击“实时数据库”项使其展开,在展开项目中双击“数据库组态”启动DbManager(如果您没有看到导航器窗口,请激活Draw菜单命令“特殊功能[S]/导航器”),启动DbManager后,进入DbManager主窗口:数据库系统预定义了许多标准点参数以及用这些标准点参数组成的各种标准点类型,您也可以自己创建自定义类型的点参数和点类型。注意:数据库系统中预定义的标准点参数和标准点类型,是数据库运行的基础参数,不能修改或增加、删除。二、点组态及参数分析点是实时数据库系统保存和处理信息的基本单位。点存放在实时数据库的点名字典中。实时数据库根据点名字典决定数据库的结构,分配数据库的存储空间。在创建一个新点时首先要选择点类型及所在区域。可以用标准点类型生成点,也可以用自定义点类型生成点。2.1模拟I/O点模拟I/O点,输入和输出量为模拟量,可完成输入信号量程变换、报警检查、输出限值等功能。1.基本参数模拟I/O点的基本参数页中的各项用来定义模拟I/O点的基本特征,组态对话框共有4页:“基本参数”、“报警参数”、“数据连接”和“历史参数”。1)点名(NAME)唯一标识一个工程数据库中点的名字,同一工程数据库中的点名不能重名,点名全部为大写,最长不能超过15个字符。点名可以是任何英文字母,数字,可以含字符“$”和“_”,除此之外不能含有其他符号及汉字。此外,点名可以以英文字母或数字开头,但一个点名中至少含有一个英文字母。2)点说明(DESC)点的注释信息,最长不能超过63个字符,可以是任何字母、数字、汉字及标点符号。3)单元(UNIT)点所属单元。单元是对点的一种分类方法。例如,在VIEW程序的总貌窗口上,可以按照点所属单元分类显示点的测量值。4)小数位(FORMAT)2测量值的小数点位数。注意:界面数据库变量显示的小数点位数需要画面文本生成时指定。5)测量初值(PV)本项设置测量值的初始值。6)工程单位(E)工程单位描述符,描述符可以是任何字母、数字、汉字及标点符号。7)量程变换(SCALEFL)如果选择量程变换,数据库将对测量值(PV)进行量程变换运算,可以完成一些线形化的转换,运算公式为:PV=EULO+(PVRAW-PVRAWLO)*(EUHI-EULO)/(PVRAWHI-PVRAWLO)8)开平方(SQRTFL)规定I/O模拟量原始测量值到数据库使用值的转换方式。转换方式有两种:线性,直接采用原始值;开平方,采用原始值的平方根。9)分段线性化(LINEFL)在实际应用中,对一些模拟量的采集,如热电阻、热电偶等的信号为非线性信号,需要采用分段线性化的方法进行转换。用户首先创建用于数据转换的分段线性化表,力控将采集到的数据经过基本变换(包括:线性/开平方、量程转换)后,然后通过分段线性表得到最后输出值,在运行系统中显示或用于建立动画连接。10)分段线性化表如果选择进行分段线性化处理,则要选择一个分段线性化表。若要创建一个新的分段线性化表,可以单击右侧的按钮“+”或者选择菜单命令“工程/分段线性化表”后,增加一个分段线性化表。表格共三列,第一列为序号,每增加一段时系统自动生成。第二列是输入值,该值是指从设备采集到的原始数据经过基本变换(包括:线性/开平方、量程转换)后的值。第三列为该输入值应该对应的工程输出值。若要增加一段,在“分段设置”中指定输入值和输出值即可。分段线性表是用户先定义好的输入值和输出值一一对应的表格,当输入值在线性表中找不到对应的项时,将按照下面的公式进行计算:((后输出值-前输出值)*(当前输入值-前输入值)/(后输入值-前输入值))+前输出值。当前输入值:当前变量的输入值。后输出值:当前输入值项所处的位置的后一项数值对应关系中的输出值。前输出值:当前输入值项所处的位置的前一项数值对应关系中的输出值。后输入值:当前输入值在表格中输入值项所处的位置的后一输入值。前输入值:当前输入值在表格中输入值项所处的位置的前一输入值。例如,在建立的线性列表中,数据对应关系为:序号输入值输出值0481614那么当输入值为5时,其输出值的计算为:输出值=((14-8)*(5-4)/(6-4))+8,即为11。11)统计(STATIS)如果选择统计,数据库会自动生成测量值的平均值、最大值、最小值的记录,并在历史报表中可以显示这些统计值。312)滤波将超出滤波限值的无效数据滤掉,保证数据的稳定性2.报警参数报警开关(ALMENAB):确定模拟I/O点是否处理报警的总开关。1)限值报警模拟量的测量值在跨越报警限值时产生的报警。限值报警的报警限(类型)有四个:低低限(LL)、低限(LO)、高限(HI)、高高限(HH)。他们的值在变量的最大值和最小值之间,它们的大小关系排列依次为高高限、高限、低限、低低限。在变量的值发生变化时,如果跨越某一个限值,立即发生限值报警,某个时刻,对于一个变量,只可能越一种限,因此只产生一种越限报警。例如:如果变量的值超过高高限,就会产生高高限报警,而不会产生高限报警。另外,如果两次越限,就得看这两次越的限是否是同一种类型,如果是,就不再产生新报警,也不表示该报警已经恢复;如果不是,则先恢复原来的报警,再产生新报警。2)报警死区(DEADBAND)是指当测量值产生限值报警后,再次产生新类型的限值报警时,如果变量的值在上一次报警限加减死区值的范围内,就不会恢复报警,也不产生新的报警,如果变量的值不在上一次报警限加减死区值的范围内,则先恢复原来的报警,再产生新报警。3)变化率报警模拟量的值在固定时间内的变化超过一定量时产生的报警,即变量变化太快时产生的报警。当模拟量的值发生变化时,就计算变化率以决定是否报警。变化率的时间单位是秒。变化率报警利用如下公式计算:(测量值的当前值–测量值上一次的值)/(这一次产生测量值的时间-上一次产生测量值的时间)取其整数部分的绝对值作为结果,若计算结果大于:变化率(RATE)/变化率周期(RATECYC),则出现报警。4)偏差报警模拟量的值相对设定值上下波动的量超过一定量时产生的报警。用户在“设定值”中输入目标值(基准值)。计算公式如下:偏差=当前测量值–设定值。5)报警优先级定义报警的优先级别,共有3个级别,低级、高级和紧急。这3个级别对应的报警优先级参数值分别是1、2和3。3.数据连接模拟I/O点的数据连接页中的各项用来定义模拟I/O点数据连接过程。对于测量值(即PV参数),有三种数据连接可供选择:I/O设备、网络数据库和内部链接。1)I/O设备表示测量值与某一种I/O设备建立数据连接过程(见其它参考内容)。2)网络数据库表示测量值与其他网络结点上力控数据库中某一点的测量值建立连接过程,保证了两个数据库之间的实时数据传输,若要建立网络数据库连接,必须建立“数据源”。3)内部连接对于内部连接,则不限于测量值。其他参数(数值型)均可以进行内部连接。内部连接是同一数据库(本地数据库)内不同点的各个参数之间进行的数据连接过程。例如在一个控制回路中,测量点FI101的测量值PV就可以通过“内部连接”连接到控制点FIC101的目标值SP上。4注意:对于测量值PV,如果建立了某种类型的数据连接,则不能再同时进行其他类型的数据连接。如果此时进行其他类型的数据连接,DbManager会提示您是否取消原类型的数据连接,更新为新类型的数据连接。4.历史参数模拟I/O点的历史参数页中的各项用来确定模拟I/O点哪些参数进行历史数据保存,以及保存方式及其相关参数。1)保存方式保存方式有:数据变化保存和数据定时保存。(1)数据变化保存选择该项,表示当参数值发生变化时,其值被保存到历史数据库中。为了节省磁盘空间,提高性能,您可以指定变化精度,即当参数值的变化幅度超过变化精度时,才进行保存。变化精度量程的百分比。如果LIC101的量程是20~80,若精度是1,则与当前值变化超过1%即(80-20)*0.01为0.6时,才记录历史数据。数据范围从0到100。0表示只要数据变化就保存历史。(2)数据定时保存选择该项,表示每间隔一段时间后,参数值被自动保存到历史数据库中。在“每隔秒”一项中输入间隔时间,单击“增加”按钮,便设置该参数为数据定时保存的历史数据保存方式,同时指定了间隔时间。单击“修改”或“删除”按钮,可修改间隔时间或删除数据定时保存的历史数据保存设置。3.条件存储条件存储的条件是一个表达式(可使用数学公式参见下表),当表达式为真时Db将存储数据,为假时不存储数据。在条件中可用:四则运算:+、-、*、/、%移位操作:、、大小判断:、=、、=、==、!=位操作:&、^、|、!、~条件判断:&&、||、数学函数:abs、floor、ceil、cos、sin、tan、cosh、sinh、tanh、acos、asin、atan、deg、rad、exp、ln、log、logn、sqrt、sqrtn、pow、mod例如Tag0001的存储为定时存储,保存条件为Tag0002.PV0当Tag0002.PV=0或者0时,Tag0001不存储数据,当Tag0002.PV0时满足条件,Tag0001存储数据在某些应用环境下,不单单要按照存储条件保存历史数据,而且需要把满足条件的具体时间记录下来,这样需配置Db.ini中[ConfSave]字段的DoAction属性,当DoAction=1时,Db将在一个条件存储过程完成后(从保存条件满足到保存条件不满足)将开始储存和结束存储的时间记录到工程目录的DB目录下的ConfSave.mdb数据库中,如需保存到其他数据库需修改[ConfSave]字段的ConnectStr属性,ConnectStr属性是一个ODBC连接字符串,可以根据具体数据库自行生成。默认情况下不保存条件存储记录2)退出时保存实时值作为下次启动初值选择了该项的点参数,数据库在退出时自动将该参数的实时值保存到磁盘。当数据库下次启动时,会将保存的实时值作为初值。2.2数字I/O点5数字I/O点,输入值为离散量,可对输入信号进行状态检查。数字I/O点的组态对话框共有4页:“基本参数”、“报警参数”、“数据连接”和“历史参数”。1.基本参数数字I/O点的基本参数页中的各项用来定义数字I/O点的基本特征。1)关状态信息(OFFMES)当测量值为0时显示的信息(如:“OFF”、“关闭”、“停止”等)。2)开状态信息(ONMES)当测量值为1时显示的信息(如:“ON”、“打开”、“启动”等)。2.报警参数数字I/O点的报警参数页中的各项用来定义数字I/O点的报警特征。1)报警开关(ALMENAB)确定数字I/O点是否处理报警的总开关。2)正常状态(NORMALVAL)确定正常状态(即不产生报警时的状态)值(0或1)。例如,正常状态值如果设为0,则当测量值为1时即产生报警。“数据连接”和“历史参数”页与模拟I/O点的形式、组态方法相同。2.3累计点累计点,输入值为模拟量,除了I/O模拟点的功能外,还可对输入量按时间进行累计。累计点的组态对话框共有3页:“基本参数”、“数据连接”和“历史参数”。1.基本参数累计点的基本参数页中的各项用来定义累计的基本特征。1)累计/初值(TOTAL)在本项设置累计量的初始值。2)累计/时间基(TIMEBASE)累积计算的时间基。时间基的单位为秒。时间基是对测量值的单位时间进行秒级换算的一个系数