软件采用模块化设计[3],共分为7个模块:用户管理模块,参数设置模块,数据采集模块,工艺流程模块,实验项目模块,数据保存回放模块以及帮助模块。主要完成以下功能:
1)显示水箱的液位实时变化;
2)数据保存及历史数据分析;
3)液位的两点控制;
4)参数设置及修改;
5)测量并绘制水箱的阶跃相应曲线;
6)PID控制器以及滤波器的设计。
3.2 两点控制
当液位低于下限值时,泵开始工作,液位上升;当液位高于上限值时,泵停止工作,液位下降,使得液位一直处于一定的范围之内。液位的测量范围在20mm-300mm。
3.3 PID控制
常规的PID控制是从比例、积分、微分三个环节来实现对系统的控制的。PID控制模块采用PID工具包,利用它可以在LabVIEW环境下通过界面进行交互式的PID控制器的设计,充分利用了LabVIEW和NI的硬件无缝连接的特点,可以迅速搭建所需的控制系统。PID控制的程序如图3所示。
图3 PID模块的程序框图
4 实验控制结果及分析
4.1 两点控制结果
对液位进行两点控制试验结果如图4所示,较好的满足了控制的要求。
图4 两点控制实验结果
4.2 PID控制结果
由于液位控制系统的滞后效应较小,所以采用比例调节或比例积分调节两种调节规律。对于控制参数的选取,利用阶跃响应曲线法得到传递函数[5],结合MATLAB仿真得到控制参数指导试验[6]。经过反复试验在设定值为90mm-180mm范围内,最佳的参数为:,控制结果如图5所示,结果优于系统技术指标要求。
图5 实际的PID控制曲线()
5 结论
设计的虚拟仪器系统具有友好的人机界面,经过实际测试系统稳定可靠,控制响应速度快,曲线变化平稳,完全满足了液位控制要求,充分体现了虚拟仪器的特点。尤其是其扩展性很好,可以随时添加更加先进的控制算法以及其它如流量、压力控制功能,而且开发周期很短。本文设计的液位控制系统已经成功的应用于教学和实验中,取得了良好的调节效果。因此,该系统具有推广使用价值。