PID控制在工业过程控制中有着最广泛的应用。PID参数的整定影响控制质量,更多的是影响工厂的经济效益。现代工业控制系统中存在着名目繁多的不确定性,这就要求PID 控制器具有良好参数。为了得到较好的PID控制器参数,充分满足对系统性能的要求,笔者特设计出一种PID控制器参数整定的软件,既可以快速的整定参数,又可以满足不同情况下的需求。
在过程控制中,控制系统往往各有不同。然而,无论控制系统的相同与否,其控制的最终目的都是要满足对系统稳定性,准确性以及快速性的要求。为了达到上述目的,人们对控制器、调节器等进行了深入的研究。
本文主要介绍一种PID控制器参数整定软件的开发及其应用,从软件开发的背景、软件开发工具的选择,软件功能实现的方法以及软件界面的设计等多方面多角度的对其进行介绍。该软件根据对过程模型的了解情况分别设有基于模型的参数整定,基于输出数据的参数整定以及针对有丰富工作经验的工作人员设有经验整定功能。
1 软件开发工具的选择
在PID控制器参数整定的软件中,不仅要有友好的人-机交互界面,更因其常常要对大量的数据信息进行处理,以及对整定结果进行实时、直观的图形化显示等原因,要求开发工具既要有利于用户界面的开发,又要有利于大量数据快速、准确的处理[1]。在科技发展日新月异的今天,编程语言也日趋多样性,例如大家所熟知的C、C++、Fortran、Visual Basic(VB)、Matlab等,而其中VB在界面的设计具有其独到之处,与此同时Matlab在数据处理方面更是许多编程语言所不能及的,若能将这两种语言相互结合,则既可以实现友好的人-机交互界面又具有强大的数据处理功能。
2 软件参数整定算法选择与功能设计
好的软件需要有好的界面,更需要有很好的核心内容,这样才不至于“虚而不实”,因此对于一个标准的PID控制器参数整定软件来说其控制算法无疑是这个软件的核心部分,只有选择了合适的PID参数整定算法,才能得出比较优秀的PID控制器参数,才能达到理想的控制效果。
软件在算法的实现方面,采用VB与Matlab混合编程,将VB的友好界面与Matlab强大的运算功能相结合,当用户在界面中输入想要实现操作的命令,后台将自动运行Matlab,实现对PID控制器参数的整定,与此同时将整定结果第一时间反应到界面上,使用户可以很直观的看到软件整定的结果。ActiveX技术的运用为软件功能的实现做了很好的铺垫。在Visual Basic中,只需要两句命令:
Dim Matlab As Object
Set Matlab=CreateObject"Matlab.applicetion"
即已完成Visual Basic与Matlab混合编程的一大部分工作。
3 软件用户界面的设计
本软件界面设计充分利用Visual Basic编程语言中的优点,控件直观、可视化效果良好,事件触发信息明确,编程实现较为简单,易于编译调试等优点[2]。由于软件要实现的功能较多,且其中各有不同,故建立多个form窗体,不同窗体实现不同功能,而不同的窗体,在软件的主界面中均有快捷键,用户在进入软件后,只需点击所要实现的功能,即可进入相应的界面,操作起来既简单又方便。例如,当点击Command1时,只显示窗体1,则其实现命令如下:
Form1.Visible=True
Form2.Visible=False
Form3.Visible=False
只需简单的几行命令就可以实现不同界面切换自如的功能。
4 总结与展望
本软件可以实现多种方法对PID控制器参数整定,用户可根据具体需要来选择参数整定的算法。其中包括Z-N法,内模控制法,直接综合法,粒子群优化算法以及VRFT算法[3]。另外用户也可以根据实际系统中被控对象模型的已知情况选择基于模型的PID控制器参数整定算法或者基于控制系统输出数据的PID控制器参数整定算法。与此同时,本软件还设有经验整定功能,即用户可以根据多年的经验来完成对PID控制器的参数整定。
我们可以通过ActiveX技术实现VB对Matlab的调用,实现了对PID参数快速整定,并将其分别以图形,数据等形式直观的显示在界面上。
最后,在软件基本功能得以充分实现的情况下,对软件界面进行友好化,根据软件界面的设计原则,对软件界面进行设计,从而制作出友好的人-机交互界面。
作者:王冠 来源:中国科技纵横 2016年2期