2024年5月4日发(作者:)
目录
第四章 绘制现场画面 ......................................................................................................................................... 2
第一节 认识图形编辑器 ................................................................................................................................. 2
第二节 制作精灵图 ......................................................................................................................................... 8
第三节 制作图形模型 ................................................................................................................................... 16
第四节 制作现场流程图 ............................................................................................................................... 25
第五章 动画连接与脚本程序 ........................................................................................................................... 29
第一节 基本动画连接 ................................................................................................................................... 30
第二节 脚本程序 ........................................................................................................................................... 36
第六章 报警与事件 ........................................................................................................................................... 39
第一节 报警记录及输出 ............................................................................................................................... 39
第二节 事件记录及输出 ............................................................................................................................... 50
第八章 趋势曲线 ................................................................................................................................................. 51
概述 ......................................................................................................................................................................... 51
第一节 定义变量的记录属性 ....................................................................................................................... 51
第二节 趋势曲线图素 ................................................................................................................................... 51
第三节 趋势曲线方法 ................................................................................................................................... 55
第八章 与数据库连接 ......................................................................................................................................... 56
第一节 创建数据源及数据库 ....................................................................................................................... 57
第二节 创建表格模板及记录体 ................................................................................................................... 57
第三节 对数据库的操作 ............................................................................................................................... 60
第九章 工程安全和用户管理 ........................................................................................................................... 63
概述 ......................................................................................................................................................................... 63
第一节 用户管理 ........................................................................................................................................... 64
用户登录与注销 ..................................................................................................................................................... 67
动态修改用户 ......................................................................................................................................................... 67
设置对象的安全属性 ............................................................................................................................................. 67
第二节 工程加密 ................................................................................................................................................... 68
第四章 绘制现场画面
本章内容
认识图形编辑器
制作精灵图
制作图形模型
制作现场画面
第一节 认识图形编辑器
在本章我们将利用KingSCADA3.1强大的绘图工具来制作现场的流程画面,画面的组成包括管道、
阀门、水泵、反应釜、储藏罐等等。在制作过程中我们还会用到图库精灵、图形模型等功能。
KingSCADA3.1图形编辑器中即绘制现场的画面,包括监控画面、趋势画面、报警画面、现场流程图
等,还可以为画面中的图素设置连接动画,编写按钮的控制程序等等。图形编辑器为您提供了强大的绘图
工具,不仅提供了基本绘图工具、扩展绘图工具、Windows UI绘图工具还提供了精灵图库,大大提高了工
程开发的效率。
启动图形编辑器的方法如下:
在KingSCADA3.1工程开发环境(KingMake)中单击“编辑”菜单中的“图形系统”命令,即可弹
出画面编辑器,如图4-1所示:
图4-1画面编辑器
画面编辑器包括:菜单栏、工具栏、工具箱、编辑界面、动画连接窗口、内容窗口、对象浏览窗口、
属性配置窗口。
在画面编辑器中开发画面时,可以随时切换到运行环境,测试画面效果,提高生产率和缩短开发周期。
图形系统的绘图工具:
图形系统的绘图工具有三部分组成:基本工具、扩展工具和Windows UI。
每种图素都包含一系列的对象属性,属性窗口中包括图素的名称、大小、位置等外观通用属性,用户
可以对这些属性进行修改。同时每种图素还有自己的独特的属性。详细的图素属性说明请参考KingScada3.1
操作手册,下面简单介绍几种图素的制作。
新建画面:
在KingSCADA3.1图形编辑器中执行“文件”菜单中的“新建画面”命令,弹出如图4-2所示:
输入画面名称,例如“学习”,设置画面大小,然后点击“确定”。
如图4-2所示:
图4-2 新建画面
1、 圆角矩形框:
选择基本图形工具的圆角矩形框,然后将图素放置在画面上。圆角矩形的属性如图4-3所示:我
们主要用到的属性为:
Pen:矩形边框属性;
Brush:矩形画刷属性;
DrawOption:矩形框显示属性;
现在我们先设置Pen属性,点击弹出设置线属性对话框,如图4-4所示,我们选择线的宽度为
弹出设置画刷对话框,选择“线性”如图4-5所示,3,其他不变。然后我们设置Brush属性,点击
设置画刷的属性。DrawOption属性可以设置显示的方式,其他属性的设置请参考操作手册。
图4-4 线属性设置
图4-5 画刷属性设置
图4-3 圆角矩形属性
2、文本:
文本用来显示一个文本字符串,只能进行单行显示,该文本的大小随图素的尺寸而变化,非常适用于
值输出的显示;对于多行文本的显示,建议使用Windows控件中的文本框或超级文本,文本框部分属性如
下:
Text:显示的文本内容;
TextFont:显示的文本的字体;
TextBrush:显示的文本的颜色画刷;
选择基本图形工具的文本T,然后将图素放置在画面上。可以通过属性设置文本的内容、文本字体、
文本颜色等等属性。
我们将文本“Text”修改为“##”,然后使用动画连接“添加连接”选择模拟值输出,如图4-5,4-6
所示使用模拟值输出动画连接,连接变量“localliquid_level”。
图4-5 动画连接
图4-6 模拟值输出
需要注意的是:当文本对象在开发状态下,输入带有“#”的字符,即为数值类型的通配符,即当该
字符串进行数值类型输出动画连接时,将文本中第一次遇到的#显示得到的数值,按照动画连接中设定的
数值格式显示,例如:
1、当文本内容为“# 米”时,而值输出动画连接要显示的数据为20.4,则运行时,该文本显示“20.4
米”;
2、当文本内容为“此时液位高度为 # 米”时,而值输出动画连接要显示的数据为20.4,则运行时,
该文本显示“此时液位高度为 20.4 米”;
3、当文本内容为“### 米 ###”或者在单个#,则显示“20.4 米 ###”,包括当输入文本为“##.##”
时,也会将遇到的第一个不为#的字符替换为当前的数值显示,即显示为“20.4.##”,因此不需要使用该
通配符进行格式化;
4、当文本内容中不含有#号,却关联了数值输出类型的动画连接时,则在文本后面显示值输出,例
如:原文本内容为“Text”,关联动画后,显示“Text20.4”;
3、管道:
管道是表示带有外壁并内部可以进行流动的特殊图素。管道部分属性如下:
OOutterWidth:设置管道外壁的宽度,以像素为单位;
OutterColor:设置管道外壁的颜色;
InnerWidth:设置管道内部的宽度,以像素为单位;
InnerColor:设置管道内部的颜色;
选择基本作图工具的管道,在画面中按照要求画一条管道,然后根据需要设置相关的宽度、颜色属性,
双击画面上的管道,“添加连接—基本—管道流动”,离散值输入中选择“localwater_pump”,如果
“localwater_pump” 变量为1,管道流动,如图4-6。
图4-6 管道流动
4、按钮
按钮可以设置成普通的按钮,也可以设置成多态按钮,按钮部分属性如下:
(1)FlatStyle:置按钮外观风格;
(2)Font:设置按钮文本的字体;
(3)Background:设置按钮的背景颜色;
(4)Foreground:设置按钮的前景颜色,即文本的颜色;
(5)Style:两种选择,常态和多态,当按钮处于常态时,使用Background属性进行按钮背景的填充;
当选择多态时,可使用以下属性配置对按钮进行操作时相应的按钮背景颜色:
² PressedBackground:当按钮按下时,按钮显示的背景颜色
² FocusedBackground:当按钮处于焦点时,按钮显示的背景颜色
² DisabledBackground:当“Enable”属性设置为false时有效,即按钮不可操作时,按钮显示
的背景颜色
(6)Caption:设置按钮上显示的文本;
(7)ShapeStyle:设置按钮的形状
我们制作一个按钮,并且将此按钮的控制功能与前面的管道结合起来使用,通过按钮来控制管道是否
流动。
选择扩展工具的按钮,然后在画面上画出一个按钮,设置按钮的颜色、文本、字体等等属性,如图4-7
所示:我们设置按钮的文本为“阀门控制”,设置正常色、按下时颜色、获得焦点的颜色等等属性。
图4-7 按钮属性设置
设置按钮的鼠标左键按下的动画连接,如图4-8,4-9所示,我们将管道的流动动画与前面建立的变量
valve_gate1结合起来,通过按钮控制阀门1的开通、闭合状态,以及控制管道的流动与停止。脚本程序如
下:
if(localvalve_gate1==false)
{
}
else
{
}
localvalve_gate1=false;
localwater_pump =false;
localvalve_gate1 =true;
localwater_pump =true;
图4-8 按钮动画连接
图4-9 按钮脚本
保存画面有进行运行系统,我们就可以通过点击按钮来控制管道的流动啦。
其他作图工具可以参考KingScada3.1的操作手册。
第二节 制作精灵图
所谓精灵图就是在外观上类似于组合图素,但内嵌了丰富的动画连接和逻辑控制,工程人员只需把它
从精灵图库中调出来放在画面上,再做少量的修改,就能完成复杂的控制功能。
KingSCADA3.1的精灵图库中提供了大量工程中常用的精灵图,用户可以直接使用,如果精灵图库中没
有适合您的精灵图,您也可以自己开发精灵图,然后将其放到图库中,以备日后使用。
我们下面就制作一个液位指示精灵图在这个工程中使用,这个精灵图即能够显示液位数值,也能够动
态显示液位的高低。
认识精灵图开发界面
在KingSCADA3.1图形编辑器中执行“文件”菜单中的“新建—精灵图”命令,弹出精灵图开发界面,
如图4-10所示:
图4-10精灵图开发界面
精灵图开发界面与图形开发界面很相似,由菜单栏、工具栏、工具箱、图形编辑区、属性窗口等组成,
操作方法也基本相似。
创建精灵图
第一步:制作精灵图外观:
在图4-10所示的图形编辑区编辑我们要做的精灵图形的外观,我们先利用前面讲的圆角矩形图素以及
直线图素、文本图素,画出精灵图的各个组成部分,各个部分的颜色需要通过调色板进行设置,设置出我
们需要的绚丽的颜色。如图4-11所示:这个精灵图的外观有6部分组成,我们用字母A、B、C、D、E、
F表示。然后将各个组成部分一起组合成我们需要的精灵图形,如图4-12所示:这样精灵图的外观就做好
了。在组合精灵图的时候我们会用到图素上下层的调整,可以选中图素,点击右键,通过右键菜单“位置”
来调整,如图4-13所示。
图4-11 精灵图的组成部分
图4-12 精灵图的外观 图4-13 右键菜单
第二步:建立精灵图的属性、变量:
我们要考虑好精灵图在使用中需要暴露出那些属性需要在使用中进行修改以及精灵图具备那些功能。
在我们这个精灵图中我们可以考虑暴露到外面的属性包括:整体的背景颜色、需要动态显示的液位的颜色、
液位高度的最大值、最小值。需要关联液位高度的变量。
属性定义:单击右侧“内容”选项卡,选中“属性”点击右键在弹出的右键菜单中执行“添加属性”
命令,弹出图4-14所示属性定义对话框,我们先定义背景颜色,属性名称:BackColor,属性类型:Brush。
点击“默认”后面的弹出调色板,通过调色板设置默认的画刷类型与图4-11我们设置的画刷类型一致。
图4-14 属性定义
按照这种方式我们再定义液位颜色:fluidcolor,类型:Brush。
液位高度最大值:Max,最小值Min,类型:float。
如图4-15所示,四个参数定义完成。
图4-15 参数定义
变量定义:在这里建立的变量是局部变量,只能应用在精灵图中,不能用在工程的其它地方。参数定
义完成后我们定义关联液位高度的变量。如图4-16所示:选中“变量”,点击右键增加变量, 弹出图4-17
所示的变量定义对话框。
图4-16 增加变量
图4-17 变量定义
变量名称为:fluidValue,变量类型:float,初始值:0。
精灵图的属性、变量定义完成。下面我们定义精灵图的动画关联。
第三步:建立精灵图的动画关联:
精灵图的动画关联主要是将我们前面定义的属性、变量与精灵图的具体图素关联起来。
首先我们关联液位指示精灵图的面板(图素A)的背景颜色,选中作为背景的圆角矩形,设置Brush
属性,点击Brush属性后面的按钮,弹出如图4-18所示对话框,选择我们前面定义的BackColor属性,
点击“确定”完成此属性的关联。
图4-18 Brush属性设置
同样的方法,我们设置液位(图素D)的颜色属性,选中作为液位的圆角矩形,设置Brush属性,点
击Brush属性后面的按钮,弹出如图4-18所示对话框,选择我们前面定义的fluidColor属性,点击“确
认”完成此属性的关联。
其次再设置液位(图素D)的缩放的动画连接,选中作为液位的圆角矩形,选择“连接”,点击“增
加连接”增加动画连接,如图4-19所示,选择缩放的动画连接。弹出如图4-20所示的对话框。然后进行
相关设置:
图 4-19 动画连接
选择关联的变量:fluidValue,此处只能够选择定义的精灵图的内部变量。
选择缩放比例为:线性缩放。选择缩放的参考点:下。
图 4-20 动画连接
设置最小时对应的数值:点击
设置最大时对应的数值:点击
弹出如图4-18所示的对话框,选择属性Min,然后确定。
弹出如图4-18所示的对话框,选择属性Max,然后确定。
设置完成后如图4-21所示。点击确定完成设置。
图4-21 缩放动画连接定义
第四步:保存精灵图:
至此所有的动画连接完成了,精灵图的开发也就完成了。单击“文件”菜单中的“保存”命令,弹出
精灵图库对话框如图4-22所示:我们选中最上面的“Genius Graphy Folders”,点击右键弹出菜单,选择创
建一个新的文件夹,给文件夹命名,例如:my genius。然后给这个精灵图命名,例如:genius1。这样一个
精灵图就完成了。保存之后再打开,如图4-23
精灵图的制作不仅仅是用基本作图工具来绘制,我们也可以利用现有的精灵图通过修改来生成新的精
灵图。
我们在后面的工程画面的制作中也会用到此精灵图的。
图4-22 保存精灵图1
图4-23 保存精灵图2
第三节 制作图形模型
图形模型:模拟现实中的生产设备,如锅炉、电机设备的图形展示、动画连接、安全设置、脚本语言
等,把这些功能组合在一起形成图形模型,用户在使用时只需要将模型实例化,即对图形模型进行一系列
配置,可以快速把图形展示及动态效果部署到工程中。
图形模型相对于图库精灵的优势在于不仅仅具有动画连接,还可以编写脚本程序,同时当模型重新编
辑后,会把产生变化的内容更新到已经实例化的模型对象中。
我们将前面做的精灵图与罐结合起来制作一个图形模型来在本培训工程中使用。制作过程如下:
第一步:制作图形模型的外观:
在KingSCADA3.1开发环境的目录中选择“视图”→“图形模型”选项,在右侧编辑区中单击“新建”
按钮,弹出对话框,如图4-24所示:
图4-24创建图形模型对话框
在图4-24中输入图形模型的名称如:罐,并根据需要设置该模型的其他选项,如:模型描述、创建者、
等。
设置完毕后,单击“确认”按钮,该模型出现在开发环境的右侧编辑区中,如图4-25所示:
图4-25编辑区中的图形模型
在图4-25中选中模型图标,双击图形模型图标,弹出对话框,如图4-26所示:
图4-26图形模型开发界面
图形模型开发界面与图形编辑器界面具有相同的布局,由菜单栏、工具栏、图形编辑区、属性窗口和
连接窗口等构成。
我们利用基本作图工具椭圆、矩形框来制作罐体的外观,罐体(椭圆、矩形框)使用过渡色来体现金
属质感,以增加罐体的美观程度。过渡色的设置可以通过Brush属性来设置。我们在罐体上添加一个可以
显示液位高度的图素,利用圆角矩形和文本来实现。圆角矩形通过设置Pen,Brush来设置提高图素美观程
度。文本T可以修改文本的颜色、字体。
如图4-27所示:为了以后在说明时简单一些,我们将罐体设为A图素,圆角矩形设为B图素,文本
设置C图素。
图4-27 图素制作
罐体设置完成后我们将精灵库中前面已经做好的精灵图取出来放置在罐体上面。点击工具栏图标
弹出精灵图库对话框,选择我们前面定义的精灵图文件夹“my genius”,如图4-28所示,选择右侧区域的
液位指示的精灵图,双击此精灵图,然后放置在图形编辑区域。精灵图我们就叫图素D。
然后我们将精灵图与前面画的各种图素组合起来就制作完了了一个罐的图形模型的外观了。如图4-29
所示的罐的图形外观。在组合图素的时候我们会用到图素上下层的调整,可以选中图素,点击右键,通过
右键菜单“位置”来调整,如图4-13所示。
图4-28 精灵图库
图4-29 图形模型外观
第二步:建立图形模型的属性、变量:
制作属性、变量的方法与前面制作图库精灵的方法相似,具体操作可以参考前面讲解精灵图的属性、
变量定义部分。
定义的图形模型的属性为:罐体颜色(图素A的颜色)、面板颜色(精灵图D背景色)、液位指示颜色
(精灵图D液位指示颜色)、文本框颜色(图素B的背景色)、字体大小(图素C的字体)、Max、Min(对
应精灵图D的Max、Min属性,也就是液位的最大值、最小值),其中颜色类型选择Brush,字体类型选择
Font,Max、Min选择float类型。如图4-30所示:
图4-30 图形模型属性设置
定义图形模型的变量为:液位高度。此变量主要是与液位指示的精灵的变量进行关联显示液位,以及
与文本(图素C)进行模拟值输出的关联。
第三步:建立图形模型的动画连接:
图形模型的动画连接与前面讲解的精灵图的动画连接相似,主要是将我们前面定义的属性、变量与图
形模型的具体图素关联起来。
建立图形与属性的关联:
首先我们将罐体(图素A)的颜色与“罐体颜色”属性关联起来,选中作为罐体的圆角矩形,在右侧
的属性栏中设置Brush属性,点击Brush属性后面的按钮,弹出如图4-31所示对话框,选择我们前面定
义的“罐体颜色”属性,点击OK完成此属性的关联。同样的方式选择作为罐体一部分的椭圆,进行Brush
属性的设置。
图素B的颜色设置,选中圆角矩形然后设置右侧属性的Brush属性,点击Brush属性后面的
出如图4-30所示对话框,关联图形模型的“文本框颜色”属性。
文本图素C选择“##”,然后设置右侧属性的TextFont属性,点击TextFont属性后面的按钮弹出如
按钮弹
图4-30所示对话框,关联到图形模型的“字体大小”属性。
图4-30 选择属性
设置精灵图D的属性,选中精灵图,右侧精灵图的属性如图4-31所示,首先设置“BackColor”属性,
点击BackColor属性后面的按钮弹弹出如图4-30所示对话框,关联图形模型的“面板颜色”属性。同样
的方式设置“fluidcolor”属性,关联图形模型的“液位指示颜色”属性。设置“Max”属性,关联图形模
型的“Max”属性。设置“Min”属性,关联图形模型的“Min”属性。属性设置完成后,图形模型的属性
变为如图4-32所示。
4-31 精灵图属性 图4-32 精灵图属性
建立图形与变量的关联:
属性设置完成后我们再进行变量的设置。变量的设置主要有两个地方需要设置,一个是文本(图素C)
的模拟量输出,一个是精灵图(图素D)的液位高度。实际上两者关联的是同一个变量,即“液位高度”
变量。
选中文本“##”,然后双击弹出如图4-33所示对话框,点击“添加连接”,弹出下拉菜单,如图4-34
所示,选择“值输出-模拟值输出”,弹出关联变量对话框,选择,弹出选择变量对话框,然后我们
选择变量“液位高度”,设置显示的整数位数、小数位数分别为2位,点击确定完成此动画连接的设置。
图4-33 动画连接
精灵图变量的关联比较简单,选中精灵图,选择右侧的“连接”,显示如图4-35所示图形,点击弹
出变量选择对话框,如图4-36所示,此处即可以选择图形模型的变量,也可以选择系统变量。我们点击左
侧的“This”,在右侧即可显示我们前面定义的图形模型的变量“液位高度”,选择此变量,点击“OK”即
可完成精灵图变量的关联。
图4-34 下拉菜单
图4-35 连接
图4-36 选择变量
这样我们图形模型变量的关联就完成了。
建立图形模型的脚本程序:
我们前面讲精灵图的时候可以知道精灵图是包含动画连接的,而图形模型不仅仅包含动画连接,还有
脚本程序。那么下面我们就举例说明图形模型脚本程序的使用方法。
我们假定在通过文本“##”显示液位高度的时候让此文本根据不同的数值显示不同的颜色,例如当液
位高度超过90%或者低于10%时用报警色(例如红色)显示,在10%-90%之间时用正常色(例如绿色)
显示,我们就可以使用图形模型的脚本程序了。
图形模型脚本主要有三种,分别为“打开时”、“存在时”、“关闭时”三种。
我们要设置文本的颜色,需要先设置文本颜色的属性,属性的设置与前面讲过的操作方式相同。参考
如图4-37所示:我们增加属性参数“报警色”、“正常色”,他们的类型都是“Brush”类型。默认的颜色通
过调色板进行设置。
图4-37 定义参数
参数设置完成后我们进行脚本程序的编写:注意不要选择任何图素,然后在右侧的“连接”,通过点
击“添加连接—基本”弹出如图4-38所示,我们先编辑“打开时”脚本。如图4-39所示:脚本程序如下:
float HAlarm;
float LAlarm;
HAlarm=Max*0.9;
LAlarm=Max*0.1;
if(液位高度
else
同样的方式增加“存在时”脚本,脚本程序与“打开时”相同,默认的执行周期为3000毫秒,我们
修改为1000毫秒。如图4-40所示:
ush=正常色;
ush=报警色;
图4-38 增加脚本
图4-39 打开时脚本
图4-40 存在时脚本
我们这里用不到“关闭时”,所以就不进行“关闭时”脚本的设置啦。
这样图形模型的脚本程序就完成了。
第四节 制作现场流程图
我们利用前面讲的基本图素、亚控公司提供的精灵图和我们前面制作的图形模型来制作
现场的流程画面。
新建画面
在KingSCADA3.1图形编辑器点击“文件”菜单的“新建画面”命令,弹出对话框,如图4-41所示:
图4-41新建画面对话框
对话框设置如下:
名称:监控画面
画面位置:左边:0 顶端:0
显示宽度:1024
显示高度:700
画面宽度:1024
画面高度:700
画面类型:覆盖式
其他选项可根据需要设置。
设置完毕后单击“确认”按钮,该画面被建立在图形编辑器中,我们还可以通过画面的属性进行相关
的设置,例如选择Backgroud属性,单击“
的渐变效果等。
除了画面属性对话框外,凡是在画面中添加的任何图素或控件,在对其进行编辑时,都会有相应的属
性对话框,如:按钮属性对话框、报警控件属性对话框、趋势曲线控件属性对话框等等,某些属性不仅可
以在开发时进行修改,在运行环境中也可以动态修改。
”按钮,在弹出的画面背景颜色对话框中可以设置背景颜色
制作现场画面:
第一步:在图形编辑器中单击“对象”菜单中的“图形模型”命令,弹出图形模型选择对话框,选择
我们前面建立的罐的图形模型,并将其添加到画面中,我们添加两个图形模型的罐,效果如图4-42所示:
图4-42 流程画面
第二步:在图形编辑器中单击“对象”菜单中的“精灵图”命令,在精灵库中选则具有搅拌器的反应
罐“custom-test”,并将其添加到画面中,效果如图4-42所示:此反应罐可以通过控制电机来控制罐内
搅拌器的搅拌运行,同时开可以通过仪表的表头显示一个模拟量数值,当在运行状态下鼠标移动到表头位
置时表头会自动放大显示。
同样的方式我们从精灵图中将泵、阀门添加到画面中。效果图如图4-43所示:
第三步:进行管道的连接,利用基本画图工具中的管道,将各个泵、阀门、罐、搅拌器等连接起来。
第四步:进行文字标注,利用基本画图工具中的文本T,对系统的各个图素进行命名。
完成的系统流程画面如图4-43所示:
图4-43 流程画面
这样我们就把一个基本的流程图画完了,如果为了画面美观,我们也可以做一些进一步的细致的美化
工作,例如我们从精灵图中将墙壁的背景放到画面上,再利用基本图素的多边形做地板,可以设置多边形
Brush属性的“Texture”。
基本的流程图画面完成后,我们就可以根据工程要求的功能对图素进行属性设置以及动画连接了。
对图素进行设置:
我们根据工程的功能要求对画面上的图素进行相关设置:
首先设置原料罐,选择原料罐的图形模型对象,修改右侧的属性对话框,如图4-44所示,前面我们制
作图形模型时设置的属性在图4-45中可以显示出来,我们通过点击进行设置即可。
图4-44 属性设置
催化剂罐的属性设置与原料罐相似。
我们设置原料罐动画连接,选中原料罐图素,点击右侧的“连接”对话框,显示如图4-45所示,点击
,弹出现在变量对话框,如图4-46所示,选择前面定义的数据模型变量:_level,
将此变量与图形模型对象的“液位高度”关联起来即可。
同样的方式设置催化剂罐的“液位高度”关联的变量:local液位。
图 4-45 连接对话框
图4-46 选择变量
设置管道的属性,为了区分不同的物质在不同管道中的颜色,我们可以将管道设置为三种不同的流动
颜色,通过修改管道的“Innercolor”属性来设置流动的颜色。如图4-47所示,这是运行环境下面显示的
管道流动颜色。启动或者停止管道的流动是通过控制管道的“连接—基本—管道流动”属性来实现的。至
于如何控制管道根据根据水泵、阀门状态来流动我们在下面章节中会介绍的。
图4-47 管道流动
至此,一个完整的流程画面就建立起来了,它是个静态的画面,在下面一章中我们将介绍如何让图素
动起来。
第五章 动画连接与脚本程序
本章内容
基本动画连接
系统脚本
自定义脚本
概述
为了使设计的画面与现场设备情况同步动起来,就要进行动画连接。动画连接主要实现监视与控制功
能。
所谓动画连接就是建立画面的图素与数据库变量的对应关系,使得变量数值的改变会反应到图形对象
的外观的变化,这就是监视;将用户的动作与系统的行为联系起来,以便改变某些监控变量的值或执行一
段动作,这就是控制。
第一节 基本动画连接
前面一章我们在讲精灵图和图形模型的制作时已经用到了动画连接了,不同的图素动画连接也不一
样。下面我们就有选择的介绍几种动画连接,在这里没有介绍到的动画连接请大家课后参考操作手册自己
练习使用。
水泵以及阀门的状态指示:
本培训工程中有三个水泵,我们以水泵1为例,在水泵上制作一个指示灯来动态显示水泵的启停状态。
我们在水泵上面画一个圆作为指示灯的图素,设置画刷属性,属性设置完成后我们设置动画连接,选
择右侧连接,点击 ,如图5-1所示,选择“属性-画刷”
图5-1 动画连接
弹出如图5-2所示动画连接画面,选择变量类型为离散类型变量。
图5-2 动画连接设置
点击选择变量localvalve_gate1。然后进行配置,条件为“true”时,选择颜色为绿色,为“false”时,
选择颜色为红色。如图5-3所示。配置完成后点击“确定”完成水泵状态的颜色指示设置。
同样的方式我们可以设置其他的水泵以及阀门的状态指示。注意关联的变量不要错了。
图5-3 动画连接设置
液位的报警指示:
我们做一个原料罐与催化剂罐的液位的报警指示灯。我们利用闪烁与隐含的动画连接来实现。
首先画一个圆作为报警灯的图素,然后选择右侧的连接,点击
出动画连接配置画面,点击
,选择“闪烁—画刷闪烁”,弹
选择变量,如图5-4,选择变量localvalve_gate1,然后点击变量域,选择
变量的报警域Alarm,选择完成后点击OK,这样动画连接关联的变量为localvalve_,然后配
置闪烁的速度,闪烁时画刷的颜色改变,配置完成后动画连接如图5-5所示:
图5-4 选择变量域
图5-5 画刷闪烁动画连接
配置完闪烁动画连接后我们再配置隐含的动画连接,选择右侧的连接,点击连接,选择“基本—可见
性”,弹出动画连接对话框,然后选择关联的变量local液位.Alarm。配置条件为真时显示即可。
同样的方式设置催化剂罐的液位报警指示。
水泵启停控制:
我们做一个按钮来控制水泵的启动停止控制,例如控制水泵3,要求是:当前为启动状态时按钮颜色
为“绿色”,按钮文本为“停止”,当前为停止状态时按钮颜色为“红色”,按钮文本为“启动”。
选择UI控件中的按钮。按钮的文本修改是“Caption”属性,按钮的颜色修改是“Background”属性。
为了修改“Background”属性,我们需要先定义两个颜色的内部参数。点击画面的空白处,然后选择
右侧的“内容”,然后选择“内容”下面的“属性”,点击右键,弹出“添加属性”菜单,添加一个新的属
性,如图5-6所示:属性名称为“红色”,类型为“画刷”,默认的颜色选择为“红色”。
点击“添加属性”同样的方法增加绿色属性。
图5-6 增加属性对话框
颜色属性定义完成后我们在水泵3的图素旁边画一个按钮,选中按钮,然后选择右侧的“属性”,选
“MemberAccess”,改为“true”,保存画面。双击“按钮”,在鼠标左键按下时的脚本编辑对话框。如图
5-7所示,在脚本编辑框中编写脚本程序如下:
if(localwater_pump==1)
{
n="停止";
ound=绿色;
localwater_pump=0;
}
else
{
n="开启";
ound=红色;
localwater_pump=1;
}
}
图5-7 鼠标左键脚本程序
点击确定即可完成此脚本程序的编写。这样水泵启停控制就完成了。
阀门开闭控制:
我们下面也通过按钮做一个控制阀门开闭的功能。这次使用的动画连接方法与前面水泵控制的不同,
这个不需要进行脚本程序的编写,直接关联变量然后进行设置即可。通过讲解也给大家提供另外一种实现
方式的思路。
我们在阀门3旁边做一个按钮,然后修改“Caption”属性为“控制”,完成后选择右侧的“连接”,点
击增加连接,选择“值输入—按钮输入”动画连接,弹出如图5-8所示动画连接,表达式类型选择离散类
型,选择变量localwater_pump,动作选择“触变转换”。
下面介绍一下各个操作表示的意思:
直接设定:当鼠标按下时将表达式中变量值设置为True;当鼠标弹起时将表达式中变量值设置为False。
选择该动作时,数据发送方式中只能选择“鼠标按下时连续发送”方式。
取反设定:当鼠标按下时将表达式中变量值设置为False;当鼠标弹起时将表达式中变量值设置为True。
选择该动作时,数据发送方式中只能选择“鼠标按下时连续发送”方式。
触变转换:当表达式中变量值为True时,则通过鼠标按下动作,将表达式中变量值设置为False;当
表达式中变量值为False时,则通过鼠标按下动作,将表达式中变量值设置为True。选择该动作时,数据
发送方式中只能选择“鼠标释放时”方式。
置位:当鼠标按下时将表达式中变量设置为True。选择该动作时两种数据发送方式都可以选择。
置反:当鼠标按下时将表达式中变量设置为False。选择该动作时两种数据发送方式都可以选择。
图5-8 动画连接
设置完成后点击确定即完成了此动画连接的设置。这样阀门开闭控制就完成了。
注释文本显示:
我们可以利用鼠标的触敏特效来实现当鼠标移动到一个物体上面后显示我们规定好的一串文本提示
信息。我们以原料罐为例来说明实现的方式。
在“对象—精灵图—Retors-General—SpecialRetors001”,选择右侧的属性窗口,将属性“EnableTooltip”
设置为“True”。需要注意的是图素此属性默认值为“False”。
选择右侧的连接,选择“F-Level”,输入“液位变量”;添加连接“动作—ToolTip”动画连接,弹出如
图5-9所示动画连接对话框
图5-9 动画连接
我们可以在表达式编辑框中直接输入字符串变量或者通过双引号引起来的字符串内容,也可以将字符串
内容与非字符串变量结合起来使用。例如我们输入: "当前液位高度:"+local液位 。则在运行系统下,
当鼠标移动到原料罐上面后会显示:当前液位高度:67,如图5-10所示:
图5-10 运行状态显示
画面切换:
我们在一个工程中会有许多画面,可以通过按钮来实现各个画面的切换。我们前面定义的“监控画面”
的大小为1024*700,我们新建一个切换画面,起始位置为Left:0,Top:700,Width:1024,Height:
68。新建画面完成后,我们在画面上面做一个按钮,修改按钮的“Caption”属性为“监控画面”,然后
选择右侧的“连接”,选择“左键按下”,弹出脚本编写对话框,在脚本编辑区输入:ShowPicture("监控
画面"); 。这样就可以在运行环境下点击此按钮切换到“监控画面”画面了。我们在执行某些功能的时候
会经常用到软件系统提供的各种函数,具体函数的意义请参考函数手册。
以上介绍了部分动画连接的设置方法,关于其他没有介绍的动画连接请参考KingSCADA3.1用户手册。
第二节 脚本程序
KingSCADA3.1除了在定义动画连接时支持连接表达式,还允许用户编写脚本程序来扩展应用程序的功
能,KingSCADA3.1提供的脚本是一种在语法上类似C语言的程序,工程人员可以利用这些程序编写逻辑控
制程序,从而增强应用程序的灵活性。
一、脚本语法:
KingSCADA3.1支持的数据类型、运算符以及控制语句。
一、支持的数据类型
1、布尔类型:
布尔常量: True,False
布尔变量:布尔变量的类型符为bool,取值True和False
2、整数类型
整型常量:十进制整数,如123,-456,0。
整型变量:有符号短整型和有符号长整型
3、实数类型
实型常量:十进制小数形式,如0.123、123.0、0.0。
实型变量:单精度实型和双精度实型
4、字符串类型
字符串常量:使用双引号括起来的若干字符,如“kingview”,“script”等。
字符串变量:字符串变量的类型符为String,定义形式如下:
string str1,str2;
5、引用类型
定义引用变量:
变量类型 变量名,如:IntTag a; // 定义整型引用变量
使用引用变量:
a = &intTag; // 将引用变量a指向工程中定义的整型变量intTag。
6、数组类型
一维数组定义:
类型说明符[常量表达式] 数组名
一维数组引用:
数组名[下标]
二、支持的运算符
支持的运算符包括:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符等,具体介绍请
参见用户手册
三、支持的脚本语句
支持的脚本语句包括:
赋值语句:变量(变量的可读写域)= 表达式;
跳转语句:Return、Break、Continue
分支语句:If语句、switch语句
循环语句:while语句、do-while语句、for语句
二、脚本分类:
KingSCADA3.1脚本从可见性上可以分成全局和局部事件脚本;
全局事件脚本包括:
1、应用程序脚本:指在工程启动时、关闭时或在程序运行期间周期执行的脚本程序。
2、报警事件脚本:指当报警事件产生时执行的脚本程序。
3、用户事件脚本:指当用户操作事件(包括:用户登录和用户注销)产生时执行的脚本程序。
4、数据改变脚本:指链接的变量或变量域,在变量或变量域变化到超出数据字典中所定义的变化灵
敏度时,被触发执行的脚本程序。
5、事件脚本:指在某件事情发生时、消失时或存在期间周期执行的脚本程序。
6、热键脚本:被链接到指定的热键上,工程运行期间,用户随时按下热键都可以执行这段脚本程序。
7、自定义函数脚本:提供用户自定义函数,用户可以根据KingSCADA3.1的基本语法及提供的函数自
己定义各种功能更强的函数,通过这些函数能够实现工程特殊的需要。
8、定时脚本:指在工程运行期间,根据指定的时间,定时触发的脚本程序。
局部事件脚本包括:
1、画面脚本:指画面打开时、画面关闭/隐含时或画面运行时周期执行的脚本程序。
2、画面图素脚本:指鼠标触敏该图素时执行的脚本程序。
3、控件的事件脚本:指Windows通用控件和ActiveX控件的事件所触发的脚本程序。
三、脚本应用:
我们在本章主要介绍前面监控画面动态功能实现所用到的脚本程序,其他脚本程序例如报警事件脚
本、用户事件脚本等我们会在以后介绍其他功能的时候来讲解。
管道的流动:
首先我们要确定管道的流动有那些控制点来控制。例如水泵1、阀门1控制原料罐进料管道的流动状
态。当水泵1、阀门1都打开的时候管道就会流动起来。我们在前面定义数据模型时已经定义了液位与阀
门、水泵的逻辑关系:液位低于报警低限值时自动开启水泵与阀门开关,高于报警高限值时停止水泵,关
闭阀门。
我们用事件脚本来实现水流的控制,当水泵与阀门都为true时水流开始,都为false时水流停止。
我们选择事件脚本“脚本-自定义脚本-条件事件脚本”,如图5-11所示,在右侧点击“新建”新建
一个事件脚本程序,写:_gate==1&&_pump==1
第六章 报警与事件
本章内容
定义报警组
设置变量的报警属性
报警配置
报警输出
报警画面自动弹出
事件记录及输出
概述
下面我们讲解报警的相关功能,包括报警的定义、报警的存储以及查询等等。
在工业现场,为了保证系统的安全运行,报警和事件的产生和记录是必不可少的,KingSCADA3.1提
供了强有力的报警和事件系统。KingSCADA3.1中的报警和事件主要包括:变量的报警事件、操作事件、
用户登录事件和工作站事件,通过这些事件信息用户可以轻松地了解系统的运行情况。为了分类显示产生
的报警信息,可以把报警信息划分到不同的报警组中,在指定的报警窗口中显示报警信息。
第一节 报警记录及输出
定义报警组
划分报警组的作用就是为了将不相关的报警信息显示在不同的报警窗口中,将相关的报警信息显示在
同一个报警窗口中,便于用户查询。
在KingSCADA3.1开发环境树型目录区中选择“数据词典”→“报警组”选项,单击鼠标右键,在弹出
的右键菜单中执行“新建报警组”命令,弹出对话框,如图6-1所示:
图6-1新建报警组对话框
在编辑框中输入:“温度报警”报警组,单击“确认”按钮该报警组建立完了,同样的方式我们再新
建一个“液位报警”报警组。您也可以根据工程需要建立更多的报警组,或在已建立的报警组下定义二级
报警组或三级报警组,在这里我们定义两个报警组:温度报警、液位报警。
设置变量的报警属性
在使用报警功能前,必须先要对变量的报警属性进行定义。
在KingSCADA3.1工程开发环境的“数据词典”中选择“temperature”变量并双击,在弹出的“变量
属性”对话框中选择“报警属性”选项卡,如图6-2所示:
图6-2报警属性设置对话框
对话框设置如下:
低报警:10 温度低报警 优先级:1
高报警:90 温度高报警 优先级:1
报警组:温度
设置完毕后单击“确认”按钮,定义完成。
我们再定义数据模型中液位的报警。点击数据模型实例中的“activator”,弹出如图6-3所示画面,然
后点击“liquid_level”弹出此变量的编辑框,在“Alarm”选项卡中选择报警组为:液位报警。
同样的方式定义数据模型实例中的“material”的“liquid_level”变量的报警组也设置为:液位报警。
这样变量的报警组就定义完成了。
报警还可以按照报警优先级来区分,当发生多个报警时,优先级高的报警信息先提示。
当KingSCADA3.1进入运行环境时,如果变量的值低于报警低限或者高于报警高限时都会发生报警信
息,通知相关工作人员。
图6-3 数据模型实例
报警配置
在KingSCADA3.1开发环境的树型目录中选择“系统设置”→“报警与事件库服务设置”选项并双击,
弹出配置对话框,如图6-4所示:
图6-4报警与事件配置对话框
在该对话框中不仅可以对报警事件的存储方式、打印方式、转发方式进行配置外,还可以对操作事件、
登录事件和工作站事件的存储方式、打印方式、转发方式进行配置,配置方法基本上一致,下面就以报警
事件为例以进行介绍。
“存储配置”对话框设置如下:
图6-5存储配置对话框
其他设置项默认即可。
“报警数据库配置”对话框设置如下:
图6-6报警数据库配置对话框
其他设置项默认即可。
上述设置的含义是:满足条件的报警信息、报警恢复信息和报警确认信息产生后,系统自动将这些信
息保存到KingSCADA3.1默认的报警数据库。
KingSCADA3.1默认的报警数据库不需要用户建立(默认是Access数据库),是系统自动生成的并生成
四个表格文件,保存在工程目录下:
Alarm:报警事件表格,记录所有的报警事件。
Operate:操作事件表格,记录所有的操作事件。
Enter:登录事件表格,记录所有的登录事件。
Station:工作站事件表格。记录所有的工作站事件。
报警输出
KingSCADA3.1工程在运行时产生的报警信息是通过报警窗口来显示的,KingSCADA3.1提供的报警
窗口可以实现如下功能:
1、显示变量的当前报警状态,同一个变量的报警记录只显示最新记录。
2、显示当前缓存区中的所有历史报警记录,包括报警、恢复、确认三种记录。
注:当系统退出后,当前缓存中的报警记录将随之消失,重新运行后将新生成的报警记录存入缓存区。
1、 可以按照条件查询报警数据库中的报警记录。
报警窗口配置过程如下:
第一步:在KingSCADA3.1图形编辑器中新建一个画面,画面名称为:报警。
第二步:在KingSCADA3.1图形编辑器中,执行“对象”菜单 → “扩展图素”→“报警窗口”命令或
者单击工具箱中的快捷键 → 鼠标移到画面中,光标呈‘+’状,按住鼠标左键并拖动到报警画面中,
绘出一报警窗口,如图6-7示:
图6-7警窗口
同时弹出报警窗口属性对话框,如图6-8示:
属性窗口设置如下:
WindowType:实时
WindowStyle:选中显示标题、显示状态、显示工具箱
Filter:单击此选项,弹出对话框,设置如图6-8所示:
其他属性参考使用手册根据需要设置。
图6-8警窗口属性对话框
图6-9时报警窗口Filter对话框设置
第三步:选中图6-7报警窗口 → 单击鼠标右键 → 在弹出的菜单中执行“编辑”命令 →鼠标单击标
题栏(位于报警窗口的上面)→ 弹出标题栏属性对话框,对话框设置如下:
图6-10实时报警标题栏属性设置
修改“Text”属性为“实时报警窗口”,效果如6-11所示:
图6-11实时报警窗口
进入运行环境时,当低限报警或者高限报警产生时报警信息就在此窗口中显示。
说明:在实时报警窗口中只显示当前报警信息和被确认的报警。报警信息一旦被恢复,即会从窗
口中消失。
第四步:利用同样方法,在报警画面中添加一个历史报警窗口,属性窗口设置如下:
WindowType:历史
WindowStyle:选中显示标题、显示状态、显示工具箱
Filter:单击此选项,弹出对话框,设置如下:
图6-12历史报警窗口Filter对话框设置
第五步:选中报警窗口 → 单击鼠标右键 → 在弹出的菜单中执行“编辑”命令 →鼠标单击标题栏
(位于报警窗口的上面)→ 弹出标题栏属性对话框,对话框设置如图6-10:修改“Text”属性为“历
史报警窗口”,效果图如下:
图6-13历史报警窗口
工程运行时在历史报警窗口中不仅显示历史报警信息还会显示报警确认和报警恢复信息,它的数据来
源是报警缓存区。当系统退出后,窗口中的信息将随之消失,重新运行后将生成新的信息。
第六步:利用同样方法,在报警画面中添加一个报警查询窗口,属性窗口设置如下:
WindowType:查询
WindowStyle:选中显示标题、显示树、显示状态 、显示工具箱
Filter:单击此选项,弹出对话框,设置如下:
图6-14报警查询窗口Filter对话框设置
第七步:选中报警窗口 → 单击鼠标右键 → 在弹出的菜单中执行“编辑”命令 →鼠标单击标题栏
(位于报警窗口的上面)→ 弹出标题栏属性对话框,对话框设置如下:
图6-15报警查询标题栏属性设置
效果图如下:
///////////////////////////////////////////////////////////////////////////////////////////
图6-16报警查询窗口
第八步:选中报警窗口 → 单击鼠标右键 → 在弹出的菜单中执行“编辑”命令 →鼠标单击左侧空
白处→ 单击鼠标右键 → 在弹出的右键菜单中执行“新建查询条件”命令 → 弹出对话框,如图6-17所
示:
图6-17报警查询条件对话框
对话框设置如下:
条件名:报警查询条件1
分类:SQL查询
在该对话框中输入SQL查询条件,如图6-18所示:
图6-18 SQL查询条件
单击“确认”按钮后,该查询条件显示在报警窗口左侧的空白区中,如图6-19所示:
图6-19报警查询窗口
工程运行时,单击报警查询窗口中的“报警查询条件1”后,在该窗口中显示报警数据库Alarm表格
中报警类型是低报警的所有报警信息。
///////////////////////////////////////////////////////////////////////////////////////////
报警画面自动弹出
使用系统提供的$NewAlarm变量可以实现当系统产生报警信息时将报警画面自动弹出,操作步骤如下:
第一步:在KingSCADA3.1开发环境树型目录中选择“脚本”→ “用户自定义脚本”选项 → 单击右
侧显示区中的“新建”按钮,弹出事件脚本编辑框,编辑框设置如下:
图6-20报警画面弹出脚本程序
第二步:单击“确认”按钮关闭编辑框。当系统有新报警产生时即可弹出报警画面。
第二节 事件记录及输出
事件是不需要用户来应答的,KingSCADA3.1中根据操作对象和方式的不同,分为以下几类:
1、操作事件:用户对变量的值或变量其它域的值进行修改。
2、登录事件:用户登录到系统,或从系统中退出登录。
3、工作站事件:单机或网络站点上KingSCADA3.1运行系统的启动和退出。
下面以操作事件为例进行讲解。
操作事件配置过程如下:
第一步:在KingSCADA3.1开发环境的数据词典中选中“valve_gate1”变量并双击,弹出变量属性设
置对话框,在“基本属性”选项卡中,设置“安全”属性,如下所示:
图6-21设置变量安全属性
同样的方法设置变量“valve_gate2”、“valve_gate3”、“water_pump”的操作事件。
第二步:在开发环境树型目录中选择“配置”→ “报警与事件配置”选项并双击弹出对话框,设置
如下:
图6-22记录操作事件选项
图6-23 操作事件默认的数据库
第三步:操作事件可以在事件窗口中查询,事件窗口与报警窗口的使用方法一致,请参考报警窗口的
介绍,在此不再赘述。
这样当进入运行系统后操作反应釜的三个阀门和水泵的时候就会有操作事件产生并被记录下来。
第八章 趋势曲线
本章内容
定义变量的记录属性
趋势曲线控件
趋势曲线控件方法
概述
趋势曲线是用来反应变量随时间的变化情况,趋势曲线有两种:实时趋势曲线和历史趋势曲线。
KingSCADA3.1提供的趋势曲线控件既可以显示实时趋势曲线又可以显示某一时间段的历史趋势曲线,并且
提供了丰富的控件方法和控件事件,使趋势曲线的查询显得更加灵活、方便。
第一节 定义变量的记录属性
要想查询变量的历史趋势曲线,就需要定义变量的记录属性。
在KingSCADA3.1开发环境的数据词典中双击“液位”变量,弹出变量属性对话框,选择“历史”选项
卡,设置变量的记录属性,如图8-1所示:
图8-1记录属性设置对话框
当“液位”值变化时,系统自动保存该数值。
第二节 趋势曲线图素
趋势曲线的展示是通过趋势曲线图素来实现的,图素的使用方法如下:
第一步:在KingSCADA3.1画面编辑器中打开已建立好的画面:趋势曲线画面。
第二步:在图形编辑器中,执行“对象”菜单 → “扩展图素”→ “趋势曲线”命令或者单击工具
箱中的图标 → 鼠标移到画面中,光标呈‘+’状,按住鼠标左键并拖动绘出一趋势曲线窗口,如图8-2
所示:
图8-2趋势曲线窗口
同时弹出窗口属性对话框,对话框设置如图8-3所示:
图8-3曲线窗口属性对话框
其他属性可根据需要设置。
第三步:选中图8-2曲线窗口 → 单击鼠标右键 → 在弹出的菜单中执行“编辑”命令 →鼠标单击标
题栏(位于曲线窗口的上面)→ 弹出标题栏属性对话框,对话框设置如下:
图8-4标题栏属性设置
第四步:选中图8-2曲线窗口 → 单击鼠标右键 → 在弹出的菜单中执行“编辑”命令 → 鼠标单击
网格区(位于曲线窗口中间)选中此区域 → 在该区域中单击鼠标右键 → 在弹出的右键菜单中执行“添
加曲线”命令 → 选中添加的曲线后同时弹出曲线属性对话框,如图8-5所示:
图8-5曲线属性对话框
在DataSource属性中连接“液位”变量,曲线颜色设置为:绿色。
其他属性可根据需要设置。
第五步:利用同样方法,在网格区中添加一条曲线,连接变量temperature,曲线颜色分别为:蓝色。
最后的效果图如下:
图8-6实时趋势曲线窗口
第六步:利用同样方法,在趋势曲线画面添加一个历史趋势曲线窗口,窗口属性设置如下:
图8-7窗口属性设置
第七步:选中曲线窗口 → 单击鼠标右键 → 在弹出的菜单中执行“编辑”命令 →鼠标单击标题栏
(位于曲线窗口的上面)→ 弹出标题栏属性对话框,对话框设置如下:
图8-8标题栏属性设置
第八步:添加的曲线与实时趋势曲线窗口中一样,最后的效果图如下:
图8-9历史趋势曲线窗口
第三节 趋势曲线方法
以上是开发环境下的趋势曲线设置,在运行环境下要想查询、打印曲线必须通过KingSCADA3.1提供的
图素方法来实现,下面具体介绍方法的使用。
在KingSCADA3.1图形编辑器中打开“趋势曲线画面”,并在历史趋势曲线窗口下添加5个按钮,按钮
属性设置如下:
1、按钮文本:曲线查询
“按钮左键弹起”动画链接:
eAxisDialog("TimeAxis1")
;
执行此方法后弹出对话框,如图所示:
图8-10曲线查询对话框
在此对话框中设置时间轴显示的开始时间、结束时间、时间轴跨度及时间轴的单位。
2、按钮文本:曲线打印
“按钮左键弹起”动画链接:hart();
3、按钮文本:获取曲线最大值
“按钮左键弹起”动画链接:
Max = veStatisticInTimeAxis("Curve1",2,1);
执行此方法,得到Curve1对应的变量的最大值,即“temperature”变量的最大值,并将该值赋予变
量Max(其中Max是在数据词典中添加的内存实型变量)。
4、按钮文本:获取曲线最小值
“按钮左键弹起”动画链接:
Min = veStatisticInTimeAxis("Curve1",1,1)
执行此方法,得到Curve1对应的变量的最小值,即“temperature”变量的最小值,并将该值赋予变
量Min(其中Min是在数据词典中添加的内存实型变量)。
5、按钮文本:获取曲线平均值
“按钮左键弹起”动画链接:
Average = veStatisticInTimeAxis("Curve1",3,1);
执行此方法,得到Curve1对应的变量的平均值,即temperaturee变量的平均值,并将该值赋予变量
Average(其中Average是在数据词典中添加的内存实型变量)。
GetCurveStatisticInTimeAxis 函数用法
Float GetCurveStatisticInTimeAxis (string CurveName, int iStatisticType,int iValueType)
CurveName:曲线名称。
iStatisticType:获取统计值类型:
参数值
1
2
3
含义
获取时间轴范围内趋势的最小值
获取时间轴范围内趋势的最大值
获取时间轴范围内趋势的平均值
iValueType:获取值类型, 1表示获取实际值, 2表示获取百分比值。
返回值说明:返回时间轴范围内的曲线最小值、最大值或平均值。iValueType=1:返回实际值,
iValueType=2:返回百分比值(按变量的实际量程范围计算)。无论数据轴是实际值模式,还是自适应模
式,还是百分比模式,实际值、百分比值都可以获取。-1=输入参数非法。也有可能算出来的统计值=-1,
无法区别。
效果图如下:
第八章 与数据库连接
本章内容
创建数据源及数据库
创建表格模板
创建记录体
对数据库的操作
概述
本章我们将讲解如何将阀门的状态变化记录到数据库中并进行查询。数据库我们选择Access数据库,
记录的内容包括:日期、时间、阀门描述、阀门状态四个字段。我们利用KingSCADA3.1的SQL访问功
能来实现。
KingSCADA3.1 SQL访问功能主要实现KingSCADA3.1和其他外部数据库(通过ODBC访问接口)
之间的数据传输,它包括SQL访问管理器和相关的SQL函数。
SQL访问管理器用来建立数据库字段和组态王变量之间的联系,包括“表格模板”和“记录体”两部
分。通过表格模板在数据库表中建立相应的数据表;通过记录体建立数据库字段和组态王变量之间的联系。
同时允许组态王通过记录体直接操作数据库中的数据。
第一节 创建数据源及数据库
首先外建一个数据库,这里我们选用Access数据库(路径:d:培训,数据库名为:)。
然后,用Windows控制面板中自带的ODBC Data Sources (32bit)管理工具新建一个Microsoft Access
Driver(*.mdb)驱动的数据源,名为:mine,然后配置该数据源,指向刚才建立的Access数据库(即
),如图8-1所示:
图8-1ODBC数据源的建立
第二节 创建表格模板及记录体
创建表格模板
表格模板是在数据库表中创建数据表的模板,利用此模板在数据库中创建我们需要的数据表。
第一步:在KingSCADA3.1开发环境树型目录中选择“通用数据源”→“表格模板”选型,在右侧内
容显示区中单击“新建”按钮,在弹出的创建表格模板对话框中建立四个字段,如图8-2所示:
图8-2创建表格模板对话框
四个字段的数据类型都为字符串/文本类型。
第二步:单击“确认”按钮完成表格模板的创建。
建立表格模板的目的是定义数据库格式,在后面用到SQLCreatTable()函数时以此格式在Access数
据库中自动建立表格。
如果我们在数据库中只需要建一次表就可以,那么可以直接在数据库中创建表即可,而无需利用表格
模板创建表,也就是说在使用KingSCADA的数据库功能的时候表格模板并不是一定要用的。
创建记录体
记录体是建立数据库中数据表的字段和KingSCADA的变量之间的联系。
我们在建立记录体之前先在数据库中定义两个字符串变量:阀门描述、阀门状态。定义完成后我们再
进行记录体的定义。
第一步:在KingSCADA3.1开发环境树型目录中选择“通用数据源”→“记录体”选型,在右侧内容
显示区中单击“新建”按钮,弹出创建记录体对话框,对话框设置如下:
图8-3创建记录体对话框
记录体中定义了Access数据库数据表字段与组态王变量之间的对应关系,对应关系如下所示:
Access数据库表格字段
日期
时间
阀门描述
阀门状态
组态王变量
local$Date
local$Time
local阀门描述
local阀门状态
即:将KingSCADA3.1中local$Date变量值写到Access数据库表格日期字段中;将local$Time变
量值写到Access数据库表格时间字段中;将local阀门描述值写到Access数据库表格阀门描述字段中;
将local阀门状态值写到Access数据库表格阀门状态字段中。
local$Date、local$Time变量为系统变量,表示计算机系统当前的日期和时间。
第二步:单击“确认”按钮完成记录体的创建。
注:记录体中的字段名称必须与表格模板中的字段名称保持一致,记录体中字段对应的变量数据类型
必须和表格模板中相同字段对应的数据类型相同。
第三节 对数据库的操作
1、连接数据库
第一步:在KingSCADA3.1开发环境数据词典中定义一个内存整型变量
变量名:DeviceID
变量类型:内存整型
第二步:在图形编辑器中新建一画面,名称为:数据库操作画面,并在画面上添加一按钮,按钮属性
设置如下:
按钮文本:数据库连接
“按钮左键弹起”动画链接设置如下:
图8-4数据连接脚本程序
上述命令语言的作用是使组态王与mine数据源建立了连接(即与数据库建立了连接)。
在实际工程中将此命令写入:开发环境树型目录 → 脚本 → 系统脚本 → 应用程序脚本→应用程序
启动时,即系统开始运行就连接到数据库上。
2、断开数据库的连接
在数据库操作画面中添加一按钮,按钮属性设置如下:
按钮文本:断开连接
“按钮左键弹起”动画链接设置如下:
图8-5断开数据库连接脚本程序
在实际工程中将此命令写入:开发环境树型目录 → 脚本 →应用程序脚本→应用程序关闭时,即系
统退出后断开与数据库的连接。
3、创建数据库表格
在数据库操作画面上添加一按钮,按钮属性设置如下:
按钮文本:创建数据表
“按钮左键弹起”动画链接设置如下:
图8-6创建数据表格脚本程序
上述命令语言的作用是以表格模板“Table1”的格式在数据库中建立名为“KingTable”的表格。在生
成的KingTable表格中,将生成三个字段,字段名称分别为:日期,时间,原料油液位值,每个字段的变
量类型、变量长度及索引类型与表格模板“Table1”中的定义一致。
此命令语言只需执行一次即可,如果表格摸板有改动,需要用户先将数据库中的表格删除才能重新创
建。如果只需要建立一次数据表就可以,建议直接在数据库中建立或者在调试时将此函数执行一次建立成
功后将脚本程序删除即可
。
4、插入记录
我们要将阀门的状态变化记录到数据库中,因此利用数据改变命令语言编写脚本程序即可。
新建一个数据改变命令语言,选择变量:local液位.Value,编写脚本程序如下:
图8-7插入记录脚本程序
上述命令语言作用是当变量local液位.Value改变时在数据表KingTable中插入一条新的记录。
同样的方式我们可以通过数据改变命令语言将其他阀门变量的状态变化信息记录到数据库中。
5、查询记录
用户如果需要将数据库中的数据调入到KingSCADA3.1中来显示,需要另外建立一个记录体,此记录
体的字段名称要和数据库表格中的字段名称一致,连接的变量类型与数据库中字段的类型一致,操作过程
如下:
第一步:在KingSCADA3.1开发环境的数据词典中定义四个内存字符串变量:
a、变量名:记录日期
变量类型:内存字符串
b、变量名:记录时间
变量类型:内存字符串
c、变量名:阀门描述1
变量类型:内存字符串
c、变量名:阀门状态1
变量类型:内存字符串
第二步:在数据库操作画面上添加四个文本框,在文本框的“字符串输出”动画中分别连接变量记录
日期、记录时间、阀门描述1、阀门状态1,用来显示查询出来的结果。
第三步:在KingSCADA3.1开发环境中定义一个记录体,记录体窗口属性设置如图8-8所示:
图8-8记录体属性设置对话框
第四步:在画面中添加一按钮,按钮属性设置如下:
按钮文本:全部查询
“按钮左键弹起”动画链接设置如下:
图8-9记录查询脚本程序
此命令语言的作用是:以记录体Bind2中定义的格式返回KingTable表格中第一条数据记录。
进入运行系统,运行此画面,单击“全部查询”按钮数据库中的数据记录显示在文本框中。
第五步:在画面上添加四个按钮,按钮属性设置如下:
a、按钮文本:第一条记录
“按钮左键弹起”动画链接:SQLFirst( DeviceID );
b、按钮文本:下一条记录
“按钮左键弹起”动画链接:SQLNext( DeviceID );
c、按钮文本:上一条记录
“按钮左键弹起”动画链接:SQLPrev( DeviceID );
d、按钮文本:最后一条记录
“按钮左键弹起”动画链接:SQLLast( DeviceID );
上述命令语言的作用分别为查询数据中第一条记录、下一条记录、上一条记录和最后一条记录从而达
到了数据查询的目的。
第九章 工程安全和用户管理
本章内容
用户管理
用户登录与注销
动态修改用户
设置对象的安区属性
工程加密
概述
在一个正在运行的控制系统中,为了保证系统的安全可靠运行,进行人机交互操作时,并不是所有的
人都可以对控制系统进行操作。对系统进行相应的安全保护是必须的,对于多个用户共同使用的控制系统,
必须要根据事先规定的用户的使用权限和使用范围允许或禁止其对系统进行操作。KingSCADA3.0提供了一
个强有力的先进的基于用户的安全管理系统,来解决上述问题,此外系统还提供了工程加密的功能,使系
统安全方面得到了进一步保障。
第一节 用户管理
1、用户权限
KingSCADA3.1为用户提供了权限属性用来限制用户的操作范围。用户权限分如下几种:
1、修改配置权限:拥有此权限的用户可以在线进行用户管理的配置和配方管理的配置。
2、变量访问权限:拥有此权限的用户可以操作修改变量的值,无此权限的用户不可以修改变量的值。
2、用户优先级
KingSCADA3.1提供的优先级有1~999,1级最低,999级最高,在工程运行时,只有用户的优先级大于
等于操作对象的优先级时,才可以对该对象进行操作。
3、用户安全区
KingSCADA3.1提供的安全区最多为64个,一个用户可以包含1个以上的安全区操作权限,一个操作
对象可以属于1个以上安全区,工程运行时,只要用户拥有的安全区与操作对象所属安全区有重合的,即
可进行访问操作。安全区作用优先于优先级。
4、用户与角色
用户指组态王运行系统中的所有合法使用者,用户只具有个人信息与密码信息,而无任何操作权限。
一个用户可以关联多个角色,并且只有关联了角色后才具有访问操作权限。
角色标识了一类具有相同操作权限、优先级、安全区的用户,组态王的用户可关联某个或某些角色,
关联某个角色的用户就自然拥有该角色的权限。
5、新建角色和用户
第一步:在KingSCADA3.1开发环境的树型目录中选择“安全配置”选项并双击,弹出对话框,如图
9-1所示:
图9-1安全管理系统对话框
第二步:选中对话框中的“角色”选项,单击鼠标右键,在弹出的右键菜单中执行“新建角色”命令,
弹出新建角色对话框,在该对话框中新建三个角色,对话框设置如下:
角色1设置如下:
图9-2角色1设置对话框
角色2设置如下:
图9-3角色2对话框设置
角色3设置如下:
图9-4角色3对话框设置
第三步:在图9-1中选中“用户”选项,单击鼠标右键,在弹出的右键菜单中执行“新建用户”命令,
弹出新建用户对话框,在该对话框中新建三个用户,对话框设置如下:
用户1设置如下:
图9-5用户1对话框设置
用户2设置如下:
图9-6用户2对话框设置
用户3设置如下:
图9-7用户3对话框设置
完成上述步骤后,为培训工程添加了3个用户,进入运行环境后,我们可以使用这三个用户进行登录。
用户登录与注销
用户登录和注销操作可以使用组态王提供的用户管理函数来实现。
在KingSCADA3.1图形编辑器中打开“监控画面”,并在画面顶部添加2个按钮,按钮属性设置如下:
1、按钮文本:用户登录
“按钮左键弹起”动画链接:LogOn();
2、按钮文本:用户注销
“按钮左键弹起”动画链接:LogOff();
动态修改用户
只有拥有变更权限的用户,登录后才能够动态修改用户。
在KingSCADA3.1图形编辑器中打开“监控画面”,并在画面顶部添加1个按钮,按钮属性设置如下:
按钮文本:修改用户
“按钮左键弹起”动画链接:EditUsers();
在运行环境中执行此函数后,弹出与开发环境一样的用户配置窗口,见图9-1所示,用户可以在该窗
口中添加、删除、修改用户。
按钮效果图如下:
设置对象的安全属性
画面中的图形对象也同样具有安全区和优先级属性,具体设置如下:
1、 设置“修改用户”按钮的安全属性
在KingSCADA3.1图形编辑器中打开“监控画面”,选中“修改用户”按钮,在弹出的属性对话框中设
置按钮的优先级和安全区域,如下所示:
图9-9按钮属性对话框
SecurityPriority:100
SecuritySection:A
2、设置“系统退出”按钮的安全属性
第一步:在“监控画面”中添加一按钮,按钮属性设置如下:
按钮文本:系统退出
“按钮左键弹起”动画链接:Exit(0);
第二步:设置该按钮的安全属性:
SecurityPriority:100
SecuritySection:A
3、设置水泵的安全属性
在“监控画面”中,选中供水阀,利用同样的方法设置供水阀的安全属性:
供水阀:
SecurityPriority:50
SecuritySection:B
通过上述设置后,我们不难看出,在运行环境中,如果以用户3登录的话,“修改用户”按钮和“系
统退出”按钮以及供水阀,用户是不能进行操作的;如果以用户2登录的话,“修改用户”按钮不能操作,
但可以操作另外两个对象;如果以用户1登录的话,这三个对象都可以操作。
第二节 工程加密
为了防止其他人员对工程进行修改,在组态王开发系统中可以对工程进行加密,当进入一个有密码的
工程时,必须正确输入密码方可打开工程,否则不能打开该工程进行修改。
在组态王工程浏览器中执行“工具”菜单中的“加密工程”菜单项,弹出对话框,如图9-10所示:
图9-10工程加密对话框
设置工程的密码和确认密码为:kingscada
设置完成后,单击“确定”按钮即可。
发布者:admin,转转请注明出处:http://www.yc00.com/news/1714752112a2508690.html
评论列表(0条)