[[
(Mn)
双字 - 实数 输入/输出 输出值必须在 0.0 1.0 之间
12 增益
(KC)
双字 - 实数 输入 增益是比例常数可正可负
16 采样时间
(TS)
双字 - 实数 输入 单位为秒必须是正数
20 积分时间
(TI)
双字 - 实数 输入 单位为分钟必须是正数
24 微分时间
(TD)
双字 - 实数 输入 单位为分钟必须是正数
28 积分项前项
(MX)
双字 - 实数 输入/输出 积分项前项必须在 0.0 1.0 之间
32 过程变量前值
(PVn-1)
双字 - 实数 输入/输出 最近一次 PID 运算的过程变量值
PID 指令编程举例
在本例中有一水箱需要维持一定的水位该水箱里的水以变化的速度流出这就需要有一个水泵
以不同的速度给水箱供水以维持水位不变这样才能使水箱不断水
本系统的给定值是水箱满水位的 75% 时的水位过程变量由漂浮在水面的水位测量仪给出输出
值是进水泵的速度可以从允许最大值的 0% 变到 100%
给定值可以预先设定后直接输入到回路表中过程变量值是来自水位表的单极性模拟量回路输出
值也是一个单极性模拟量用来控制进水泵速度这两个模拟量的范围是 0.0 1.0 分辨率为
1/32000 (标准化)
在本系统中只使用比例和积分控制其回路增益和时间常数可以通过工程计算初步确定 但还
需要进一步调整以达到最优控制效果初步确定的增益和时间常数为
KC 是 0.25
TS 是 0.1 秒
TI 是 30 分钟
系统启动时关闭出水口用手动控制进水泵速度使水位达到满水位的 75% 然后打开出水口
同时水泵控制从手动方式切换到自动方式这种切换由一个输入的数字量控制描述如下
I0.0 位控制手动到自动的切换 0 代表手动1 代表自动
当工作在手动控制方式下可以把水泵速度 (0.0 1.0 之间的实数) 写到 VD108 (VD108 是回路表中
保存输出的寄存器)
图 9-28 是本控制实例的程序
LAD STL
Network 1
LD SM0.1 //在首次扫描调用初始化子程序0
CALL 0
Network 1
0.75 IN
MOV_R
OUT VD104
VD112
VD116
VD1
VD124
SMB34
EN
SM0.0
Network 1
ENI
0.25 I
MOV_
OU
EN
0.10 IN
MOV_R
OUT
EN
30.0 IN
MOV_R
OUT
EN
0.0 IN
MOV_R
OUT
EN
IN
100
MOV_B
OUT
EN
0 INT
ATCH
EN
10 EVNT
SM0.1
Network 1
LD SM0.0
MOVR 0.75, VD104 //装入设定值75%
MOVR 0.25, VD112 //装入回路增益=0.25
MOVR 0.10, VD116 //装入采样时间=0.1 秒
MOVR 30.0, VD120 //装入积分时间=30 分
MOVR 0.0, VD124 //关闭微分作用
MOVB 100, SMB34 //设定定时中断0 发生的时间
//间隔为100 ms
ATCH 0, 10 //设置定时中断以执行PID 计算
ENI //允许中断
//子程序0 结束
SBR0
EN
MAIN OB1
SUBROUTINE 0
ENO
ENO
ENO
ENO
ENO
EN
ENO
[本文共有 5 页,当前是第 3 页] <<上一页 下一页>>
]]