第三章 建立硬件系统和变量文档格式.docx
- 文档编号:19381752
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:28
- 大小:294.49KB
第三章 建立硬件系统和变量文档格式.docx
《第三章 建立硬件系统和变量文档格式.docx》由会员分享,可在线阅读,更多相关《第三章 建立硬件系统和变量文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
在“IOServer1”应用中,选中“设备”,右键菜单“新建设备”,弹出“新建设备-基本属性”对话框,如图3-3所示:
图3-3新建设备对话框1
在这里我们连接modbus协议设备,设置设备名称为:
modbus。
第三步:
选择的采集驱动是:
ModbusMaster,链路类型选择“串口”,如图3-4所示:
图3-4新建设备对话框2
第四步:
单击“下一步”,选择串口,由于我们使用以太网通讯,因此这里的串口可以选择一个实际电脑不存在的或计算机上不使用的串口(对于以太网通讯方式,这里选择串口只是用来开辟通讯线程用的,不是进行实际通讯用的),如图3-5所示:
图3-5新建设备对话框3
第五步:
单击“下一步”,设备系列选择:
ModbusTCP,设备地址:
根据驱动要求的格式:
设备IP设备地址,如图3-6所示:
图3-6新建设备对话框4
第六步:
单击“下一步”,如图3-7所示:
图3-7新建设备对话框5
尝试连接间隔:
当KingSCADA和设备通讯失败后,KingSCADA将根据此处的设定时间和设备尝试通讯一次。
最长连接时间:
当KingSCADA和设备通讯失败后,超过此设定的时间仍然和设备通讯不上的话,KingSCADA将不再尝试和设备通讯。
这里我们选择默认设置即可,单击“下一步”,完成设备的建立。
如图3-8所示:
图3-8新建设备对话框6
此IOServer应用建立完成之后可以供本机SCADA应用引用或者被别的电脑上的SCADA应用做为远程IOServer引用。
第二节定义变量
变量对应的是外部采集和控制设备通过某种方式传递来的现场数据。
KingSCADA3.51支持的变量类型如下:
系统变量:
基本的变量点,每个变量点是一个单独的变量对象,不能修改。
基本变量:
基本的变量点,每个变量点是一个单独的变量对象。
结构变量:
以结构的形式存在,是多个基本变量点的集合。
引用变量:
以一组变量,替代多组数据类型相同的变量。
基本类型的变量也可以按照数据类型分为离散型、实型、整型和字符串类型。
1、内存离散变量、I/O离散变量
类似一般程序设计语言中的布尔(BOOL)变量,只有0、1两种取值,用于表示一些开关量。
2、内存实型变量、I/O实型变量
类似一般程序设计语言中的浮点型变量,用于表示浮点数据,取值范围10E-38~10E+38,有效值7位。
3、内存整数变量、I/O整数变量
类似一般程序设计语言中的有符号长整数型变量,用于表示带符号的整型数据,取值范围-2147483648~2147483647。
4、内存字符串型变量、I/O字符串型变量
类似一般程序设计语言中的字符串变量,可用于记录一些有特定含义的字符串,如名称:
密码等,该类型变量可以进行比较运算和赋值运算。
一、在IOServer应用中定义IO变量
在“IOServer1”应用中,选中“变量”,右键菜单“新建变量”,弹出“新建变量”对话框,如图3-9所示:
图3-9新建变量对话框1
在“基本属性”标签页中,变量名:
Tag1;
变量类型:
IOShort。
选择“采集属性”标签页,关联设备:
modbus,寄存器:
选择4,地址1,即寄存器为41,采集数据类型:
SHORT,采集频率:
1000ms,其他默认,如图3-10所示:
图3-10新建变量对话框2
选中“转换属性”标签页,在这里保留默认设置,如图3-11所示:
图3-11新建变量对话框3
选中“存储属性”标签页,设置为“改变”存储方式,死区为0,如图3-12所示:
图3-12新建设备对话框4
单击“确认”按钮,完成变量定义。
下面具体介绍I/O变量属性设置。
关联设备:
在下拉列表框中选择已定义好的modbus设备。
寄存器:
指定IO变量关联的寄存器,由寄存器类型和寄存器地址组成,寄存器类型和寄存器地址的定义方式与IOServer驱动的设备类型有关。
频率:
变量的采样频率,即KingSCADA多长时间从设备中采集一个数据点。
采集数据类型:
设置变量对应的寄存器的数据类型,共有9种数据类型供用户选择。
IODisc(BIT):
1位;
范围是:
0或1
IOChar(BYTE):
8位,1个字节;
有符号,范围是:
-128---127
IOByte(BYTE):
无符号,范围是:
0---255
IOShort(SHORT):
2个字节,有符号,范围是:
-32768---32767
IOWord(USHORT):
16位,2个字节;
0---65535
IOLong(LONG):
32位,4个字节;
-2147483648---2147483647
IODWord(LONG):
0---4294967295
IOFloat(FLOAT):
10e-38---10e38,有效位7位
IOString(STRING):
128个字符长度
读写属性:
只读:
对于只进行采集而不需要人为手动修改其值的变量一般定义为只读。
读写:
对于需要进行输出控制又需要读回的变量一般定义为读写。
只写:
对于只需要进行输出而不需要读回的变量可以定义为只写。
注:
当只写变量的采集频率设置为0时,只有数据值发生变化时才会进行写操作,对于只写变量建议的采集频率为0。
最小原始值:
字符串变量和离散变量无该属性,指从驱动程序中采集到现场实际数值的下限,与变量的数据类型保持一致。
最大原始值:
字符串变量和离散变量无该属性,指从驱动程序中采集到现场实际数值的上限。
与变量的数据类型保持一致。
转换方式:
设置I/O变量输入原始值到数据库使用值的转换方式。
有线性转换、取反、开方转换、非线性表、累计等转换方式。
关于转换的具体概念和方法,请参见手册第八章8.2.4.12
IO变量的转换及第九章9.2.2.6IO变量数据转换。
二、在Server应用中定义IO变量
选择“IOServer应用组”→“IOServer1”→“网络配置”,如图3-13所示:
图3-13IOServer网络配置
站点名设置为:
IOServer,IP地址默认为本机IP,端口默认为12380。
选择“服务端应用组”→“培训工程”→“网络配置”→“其他服务器”→“IOServer服务器”→“站点管理”,如图3-14所示:
图3-14IOServer站点配置1
单击“添加站点”按钮,在弹出的“添加IOServer站点”对话框中,选项上面建好的IOServer1,如图3-15所示:
图3-15IOServer站点配置2
单击“确定”按钮,如图3-16所示:
图3-16IOServer站点配置3
单击“确定”按钮,如图3-17所示,单击“是”按钮,完成站点保存。
图3-17IOServer站点配置4
选择“服务端应用组”→“培训工程”→“建点”→“数据词典”,单击右侧“内容显示区”中的“新建”按钮,弹出对话框,如图3-18所示:
图3-18新建变量对话框
打开IO属性卡,单击访问名称后面的按钮,弹出如图3-19所示的对话框,选中上面建好的Tag1变量后,单击“确定”按钮,如图3-20所示。
图3-19新建变量对话框
图3-20新建变量对话框
采集设置:
分为允许、强制读、强制写三个复选项:
允许:
控制变量采集与否,此项被选中表示KingSCADA运行时采集该变量的值,否则不采集变量的值。
用户也可以在运行环境中通过IOEnable域动态更改该属性值。
强制读:
此项为复选项,当该项被选中时,每次采集(数据上报),不管数据是否发生变化,都要强制记录、报警和进行其它处理。
用户也可以在KingSCADA运行环境中通过IORead域动态更改该属性值。
强制写:
此项为复选项,当此项被选中时,在KingSCADA画面中只要用户重新设置、输入了变量值,不管是否发生了变化,KingSCADA都完成一次写操作,将数据写到设备上。
用户也可以在运行环境中通过IOWrite域动态更改该属性值。
单击“确定”按钮,完成IO变量的设置。
三、定义基本变量
本培训工程中我们用到的变量主要有:
反应釜温度,反应釜液位,原料罐液位,催化罐液位,原料罐进料阀门,催化罐进料阀门,反应釜进料阀门1,反应釜进料阀门2,反应釜出料阀门3。
原料罐进料水泵,催化罐进料水泵,反应釜出料水泵。
其中我们将反应釜温度,反应釜液位,反应釜进料阀门1,反应釜进料阀门2,反应釜出料阀门3,反应釜出料水泵定义为基本变量,原料罐液位,催化罐液位,原料罐进料阀门,催化罐进料阀门,原料罐进料水泵,催化罐进料水泵定义为数据模型变量。
基本变量定义过程如下:
在KingSCADA3.51工程设计器中,选择“服务端应用组”→“培训工程”→“建点”→“数据词典”选项,单击右侧“内容显示区”中的“新建”按钮,弹出对话框,如图3-21所示:
图3-21新建变量对话框
在对话框中建立培训工程中需要的变量:
⏹变量名:
temperature
⏹变量类型:
基本变量
⏹数据类型:
内存实数
⏹变量描述:
反应釜温度
⏹初始值:
⏹死区:
⏹最小值:
⏹最大值:
100
⏹保存值:
选中
liquid_level
反应釜液位
⏹保存数值:
valve_gate1
内存离散
反应釜进料阀门1
False
valve_gate2
反应釜进料阀门2
valve_gate3
反应釜出料阀门
water_pump
反应釜出料水泵
Motor
反应釜搅拌电机
在这里我们建立的变量都是内存变量,主要目的是为了达到工程的演示效果,但在实际工程中,这些变量都是与现场设备连接在一起的,应该选择I/O变量。
至此,数据变量已经定义起来了,而对于大批同一类型的变量,KingSCADA3.51还提供了快速成批定义变量的方法,如果大家感兴趣的话,可以参考KingSCADA3.51用户手册。
四、定义数据模型变量
在定义数据模型变量之前,我们要先介绍一下数据模型,因为数据模型实例化的产物是数据模型变量,所以要先有数据模型才会有数据模型变量。
数据模型:
模拟现实中的生产设备的数据部分,把某一设备的一些变量和关于这些变量的一些脚本运算组合在一起形成数据模型,用户在使用时只需要将模型实例化,即配置相关的参数,可以快速把这些数据点和脚本部署到工程中。
使用数据模型可以实现快速建立变量的功能,而对于复杂的、点数相对较大的工程或者在不同的工程中具有复用性的模型,这个功能是非常有用的。
使用这个功能的关键是如何提炼出符合要求的数据模型。
我们在这里建立一个包含液位、阀门、水泵三个变量的数据模型,并且将液位与阀门、水泵的控制逻辑关系放到这个数据模型中来。
三个变量的逻辑关系为:
液位低于报警低限值时自动开启水泵与阀门开关,高于报警高限值时停止水泵,关闭阀门。
数据模型创建过程如下:
在KingSCADA3.51工程设计器中,选择“建点”→“数据模型”选项,在右侧编辑中单击“新建”按钮,弹出对话框,如图3-22所示:
图3-22创建数据模型对话
在该对话框中输入数据模型的名称:
如:
Control,其他属性可以根据需要输入,比如密码,如果设置了密码,用户在对数据模型编辑时要正确输入。
初始ID和当前ID是由系统自动生成的,默认即可。
设置完毕后,单击“确认”按钮,该数据模型将出现在内容显示区,如图3-23所示:
图3-23编辑区中的数据模型
在图3-23中选中模型图标,单击“编辑”按钮或双击数据模型图标,弹出对话框,如图3-24所示:
如果在创建数据模型对话框中设置密码的话,在编辑之前系统会提示密码输入对话框,只有输入正确后才可弹出下图:
图3-24数据模型编辑对话框
数据模型内容包括:
变量、参数和脚本,在该对话框中可以建立数据模型中用到的变量、参数并编写相关的控制脚本。
这里建立的变量是局部变量,适应范围仅仅是该数据模型。
新建参数:
数据模型参数主要于定义数据模型变量时,变量的属性值可以直接关联某个参数,或者包含某些参数,这样当数据模型在实例化成数据对象时,只需要改变参数的值,即可改变变量的属性值,参数起到了宏替换的作用。
参数支持的数据类型如下:
字符串类型、长整型、浮点型、布尔类型
我们建立两个参数:
HiLimit高限值、LiLimit低限值
在图3-24中选择“参数”选项,单击鼠标右键,在弹出的右键菜单中执行“新参数”命令,弹出对话框,如图3-25所示:
图3-25新建参数对话框
在数据模型中定义如下参数:
⏹参数名:
HiLimit
⏹描述:
液位高限值
float
⏹默认值:
95.5
LoLimit
液位低限值
15.5
新建变量:
数据模型变量属性可以进行锁定,属性一旦被锁定,则数据模型属性变化时,将会传播到实例化后的数据模型变量中,修改属性的变化,否则,不会传播到数据模型变量中。
单击属性后面的
按钮,当该按钮变为
,表示该属性被锁定。
在图3-24中选择“变量”选项,单击鼠标右键,在弹出的右键菜单中执行“新建变量”命令,弹出对话框,如图3-26所示:
图3-26新建变量对话框
在数据模型中定义如下变量:
液位
⏹灵敏度:
⏹属性锁定
点击“报警”选项卡,设置高限、低限报警设定,高低限报警值我们连接上面设置的参数HiLimit,LiLimit,单击
按钮,如图3-27所示:
选择相应的参数即可,选择完成后如图3-28。
图3-27选择参数
图3-28报警设置
在数据模型中定义其他离散变量:
valve_gate
内存离散c
阀状态
关
泵状态
新建数据模型脚本:
数据模型脚本是指在数据模型中编写的脚本程序,脚本中只能使用模型中定义的变量和工程中的系统变量,如:
$Year、$Month、$Day等,但需要注意,系统变量不能作为触发条件,也可以使用组态王提供的所有函数。
数据模型支持的脚本类型如下:
数据改变脚本、事件脚本、定时脚本、自定义函数脚本。
我们利用事件脚本来做逻辑控制。
要实现的三个变量的逻辑关系为:
在表达式脚本中点击“新建”,弹出如下图3-29所示:
图3-29事件脚本
建立三个表达式脚本程序如下:
1、在事件条件中填写:
liquid_level>
liquid_level.HiLimit
在“进入”填写:
valve_gate=0;
water_pump=0;
2、在事件条件中填写:
liquid_level<
liquid_level.LoLimit
valve_gate=1;
water_pump=1;
3、在事件条件中填写:
valve_gate==1
在“存在”填写:
liquid_level=liquid_level+0.78;
数据模型实例化,实例化的产物是数据模型变量。
在KingSCADA3.51工程设计器中,选择“建点”→“数据模型对象”选项,在右侧编辑中单击“新建”按钮,弹出对话框,如图3-30所示:
图3-30数据模型实例化对话框
名称:
activator
Control
单击“确认”按钮,该数据对象出现在模型编辑区中。
利用同样的方法,建立另外一个数据对象:
material
即两个数据模型变量使用的是同一个数据模型,而模型中又有三个变量,那就相当于建立了6个变量,实例化后的变量就是数据模型变量了,数据模型变量和工程变量一样,可以应用在工程的各个地方,使用方法也一致。
通过以上操作我们不难看出,使用数据模型可以实现快速定义变量的功能,同时还可以在内部定义相应的逻辑控制功能。
建立的这些数据模型变量,在后面章节中我们还会用到。
至此,硬件系统和变量已经建立完毕,下面我们就该使用KingSCADA3.51软件提供的强大的绘图工具绘制监控画面了。
课后练习:
1、尝试在KingSCADA3.51中建立西门子300TCP通讯的设备并定义设备中的变量。
2、尝试在KingSCADA3.51中建立欧姆龙hostlink通讯的设备并定义设备中的变量。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三章 建立硬件系统和变量 第三 建立 硬件 系统 变量
![提示](https://static.bdocx.com/images/bang_tan.gif)