当前位置:首页 > 基于PLC和组态王的温度控制系统设计完整毕业论文 - 图文
4.3.3 梯形图程序
启动,绿灯亮
停止,红灯亮
上述程序中,I0.1和I0.2分别是启动和停止按钮,Q0.0和Q0.1分别是系统运行指示灯(绿灯)和系统停止指示灯(红灯),M0.0和M0.1是中间继电器。
调用PID模块
这里用SM0.0直接调用了编程软件自带的PID子程序,即就是用PID指令向导编程。上面的指令中,PV_I为反馈值,也就是热电偶将检测到的当前温度值送入温度模块后输出的模拟电压值AIW0;Setpoint_R为设定值。
每个PID回路都有两个输入变量,给定值SP和过程变量PV。执行PID指令前必须把它们转换成标准的浮点型实数。即先把整数值转换成浮点型实数值,再把实数值进行归一化处理,使其为0.0-1.0之间的实数。归一化的公式为
R1=(R/S+ M) (3-1)
式中,R1为标准化的实数值;R为未标准化的实数值;M为偏置,单极性为0.0,双极性为0.5;S为值域大小,为最大允许值减去最小允许值,单极性为32000,双极性为64000[17]。
在本项目中,R=100,即就是设定温度100度;S=32000,M=0.0,所以按照归一化公式R1=100/32000+0.0=0.03125,即Setpoint_R为0.03125.
该网络的程序功能是把PID回路输出转换成占空比。因PID回路的输出PID0_Output为0.0-1.0之间的实数值,又因我们设置了采样时间为10秒,所以第一个指令MUL_R中INT2为100.0。ROUND是将实数转换成双整数,DI_I是将双整数转换成整数。VW2和VW4分别是采样周期内的加热时间和非加热时间。
上述程序用了两个100ms的定时器T241和T242来控制加热时间,其中Q0.3为连接固态继电器的输出端子。
该网络的程序是为了在电脑上通过STEP7-Micro/WIN编程软件显示当前温度和设定温度值而写的,其实也就是归一化的逆过程。若无该网络,则显示的温度值都是归一化的实数值,不便于记录和观察。
4.3.4 PID指令向导的运用
STEP7-Micro/WIN提供了PID Wizard(PID指令向导),可以帮助用户方便地生成一个闭环控制过程的PID算法。此向导可以完成绝大多数PID运算的自动编程,用户只需在主程序中调用PID向导生成的子程序,就可以完成PID控制任务。PID向导既可以生成模拟量输出PID控制算法,也支持开关量输出;既支持连续自动调节,也支持手动参与控制[18]。本项目程序中就正好运
共分享92篇相关文档