KingviewPid控件是组态王提供的用于对过程量进行闭环控制的专用控件。通过该控件,用户可以方便的制作PID控制。
一、控件功能:
1.pid控制算法:标准型,分为增量型输出和反向作用。
2.显示过程变量的精确值,显示范围[-999999.99~999999.99]。
3.以百分比显示设定值(SP)、实际值(PV)和手动设定值(M)。
4.开发状态下可设置控件的总体属性、设定/反馈范围和参数设定。
5.运行状态下可设置PID参数和手动自动切换。
二、使用说明:
1.在画面中插入控件:组态王画面菜单中编辑\插入通用控件,或在工具箱中单击“插入通用控件”按钮,在弹出的对话框中选择 “Kingview Pid Control”,单击确定。
2.按下鼠标左键,并拖动,在画面上绘制出表格区域。
图1 控件画面
3.设置动画连接:双击控件或选择右键菜单中动画连接,在弹出的属性页中设置控件名称等信息。
(1)常规:
图2 动画连接属性—常规
设置控件名称:应符合组态王中关于名称定义的规定,例如:PIDCtrl0。
优先级:是控件的操作优先级,范围在1~999。
安全区:安全区只允许选择。
(2)属性 类型 关联对象:
图3动画连接属性—属性
SP:FLOAT,控制器的设定值。
PV:FLOAT,控制器的反馈值。
YOUT:FLOAT,控制器的输出值。
Type:LONG,PID的类型。
CtrlPeriod:LONG,控制周期。
FeedbackFilter:BOOL,反馈加入滤波。
FillterTime:LONG,滤波时间常数。
CtrlLimitHigh:FLOAT,控制量高限。
CtrlLimitLow:FLOAT,控制量低限。
InputHigh:FLOAT,设定值SP的高限。
InputLow:FLOAT,设定值SP的低限。
OutputHigh:FLOAT,反馈值PV的高限。
OutputLow:FLOAT,反馈值PV的低限。
Kp:FLOAT,比例系数。
Ti:LONG,积分时间常数。
Td:LONG,微分时间常数。
Tf:LONG,滤波时间常数。
ReverseEffect:BOOL,反向作用。
IncrementOutput:BOOL,是否增量型输出。
DeadBandLow:Long,无效。
Status:BOOL,手自动状态。
M:FLOAT,手动设定值。
PercentRange:float,手动时调节的调节幅度,默认是1,(可以在运行时,点击参数按钮在手动调节比率里面调节此参数)。新增功能。
注意:在使用变量关联时,只有控件所处的画面处于激活状态,控制功能才会执行。
(3)命令语言中的使用
A、在使用变量关联时:
此时,只有控件所处的画面处于激活状态,控制功能才会执行,如果工程中存在多个画面,并且PID控件画面并不总是处于激活状态,则应该采用命令语言的方式使用PID控件。即,在控件所处画面的画面命令语言中,使用赋值的方式,显示地交换PID控制值。选择画面命令语言中的控件,如下所示:
图4控件属性和方法
在属性或方法中选择相应的选项,在存在时出现命令语言,如我们选择SP双击,则如下显示:
图5画面命令语言
显示时:当画面由隐含变为显示时,则“显示时”编辑框中的命令语言就被执行一次。
存在时:只要该画面存在,则“存在时” 编辑框中的命令语言就反复按照设定的时间周期执行。
隐含时:当画面由显示变为隐含或关闭时,则“隐含时”编辑框中的命令语言就被执行一次。
输入命令语言,如下:
图6画面命令语言