采用数字式电位器的PID控制器
内容导读:
采用数字式电位器的PID控制器 武汉理工大学信息工程学院何嘉斌 湖北省计量测试技术研究院梁枫 慧聪国际资讯武汉公司严俊摘要介绍一种采用非易失性数字电位器的控制器。这是用计算机的数字方式与常规模拟式PID调节方式的结合。这种新结构的控制器控制精度高且稳定性好,已用于恒温槽检定设备。此外它还通过串行口与PC机交换信息,使其功能得到进一步扩充。 关键词单片机嵌入式控制系统PID数字+模拟调节 数字控制电位器 在对标准检定设备——恒温槽控制器的研制过程中,我们发现对它的控制难度比较大:一方面要求控制精度相当高,另一方面要求在使用中升温速率比较快,这往往是矛盾的。要解决这两方面的问题必须在多方面采取措施。 图1系统硬件组成框图为了符合控制要求,必须在设计中采用合理的控制方案。我们采取的是将数字方式与模拟方式结合的1种新控制方案。这种控制方案吸取2种方式的优点,既能满足快速升温过程,又能达到恒定温度的要求,控制器的灵活性也比较好。除了实现主要控制功能外,单片机控制器没有耗费过多时间在数据处理方面,运行速度可以进一步提高。 一、 系统硬件构成 系统硬件组成框图如图1所示。这里是以单片机为核心的嵌入式控制系统。它的前向通道中包含了三线制测温铂电阻、前置放大器、串行A/D转换器和光电隔离器。单片机与模拟式PID调节电路相连接的后向通道中,一路是偏差的数字信号的输出,另一路则是单片机输出的3路数字信号被送到数字式电位器。这些数字式电位器实际上是受单片机控制的可变电阻,分别在PID调节电路中充当比例电阻、积分电阻和微分电阻,即由单片机直接控制改变PID调节电路的P,I,D参数。这样单片机就能根据偏差的大小分段设置PID参数,实现模拟PID调节的目的。 图2主程序流程图二、 数字+模拟调节方式 恒温槽作为1种检定设备,在使用中需要在多个温度点进行检定。每当设定1个新的温度值后,要求在较短时间内接近这个设定值,而一旦逼近这个温度点时又要去满足静态特性的要求。这对于只能设置1组PID参数的模拟PID调节器是难于胜任的。我们知道在升温之初应尽量满足动态特性的要求,这时比例度P应该减小,积分时间tI加大,可以使得升温加快;但是随着温度上升偏差变小,应以避免温度出现振荡以及消除静态余差为主要目的,显然这时应该加大比例度P,减小积分时间tI,才能获得较好的控制精度。从这里可以看出单一的控制方式是难以兼顾两方面的要求的。 尽管存在这样的弊端,模拟式PID调节器同样具有它的优点。譬如它的稳定性比较好,输出信号平滑,受外界扰动的影响小,与离散式数字PID调节器相比仍具优势。我们的设计思想是用单片机作为主控制器,采用非易失性数字控制电位器作为模拟式PID调节器电路中的比例、积分和微分电阻。 单片机根据设定温度和被测温度之差(即偏差)的大小用查表的方法确定相应的比例电阻、积分电阻和微分电阻的阻值。在设计中是将偏差分为4段,将各段温度偏差情况下的3种电阻阻值的经验数据存储在数据存储区。图2为主程序流程图。 在流程中可以看到,程序在运行中的主要工作是检测恒温槽的温度、计算偏差,由偏差查表确定3个电阻的数字值,再将数字值输出到数字电位器并将偏差输出到D/A,最后与PC机通信。在流程中也可以看出它不是1个数字PID过程,因为程序中间再没有烦琐的数字PID运算过程,仅仅需要将PID参数输出到模拟PID调节器电路即可。余下的PID调节则交给电路实现,为控制器节省大量的运算时间。由于压缩了一部分时间,控制程序的运行速度可以大大提高;程序的结构也大大简化,使程序运行出错的几率下降,提高程序运行的可靠性。 图3所示为控制部分的电路原理图。由图3可以看到单片机和模拟式PID控制电路有两个部分相连接。一图3PID调节电路原理图部分是单片机将偏差数字信号由P14~P16输出,经过光电耦合器4N35隔离后送到串行A/D接口芯片TLC5618转变为偏差电压信号,作为 PID控制电路的输入信号参与电路运算。这部分属于常规连接,在此就不再赘述了。另外一部分电路则是通过光电耦合器4N35及非易失性数字控制电位器X9312与模拟式PID控制电路相连接。X9312采用串行接口芯片,连线十分简单。这两部分电路之间用光电隔离也就很方便。在这部分电路中,只用到3片X9312作为比例、积分和微分电阻,加上模拟式PID,整个控制电路结构并不复杂。这部分电路的硬件成本是比较低的。正如在下面介绍的X9312特性中可以看到,它可以在程序的控制下十分方便地变化阻值,而在掉电之后电阻值也不会轻易改变。随着电子器件的发展和应用的普及,一些性能优异的器件运用在常规电路中是完全可能的。当然,作为一种数字器件来说,X9312与一般电位器比较还是有一点区别的:它的输出变化不是连续的,具有100个滑动端抽头点。这种变化的梯度在调节过程中的影响是有限的。图3为3片X9312的连接情况,其INC和U/D引脚受P12和P13的控制,而片选引脚CS则分别受到2\ 4译码器CD4556的3个输出脚Q0~Q2的控制。 从上述情况可以看到,由于单片机和数字控制电位器引入到模拟式PID调节器,电路结构发生了很大变化,形成一种数字+模拟调节方式新颖的结构。除了保留模拟调节器的一些优势外,更重要的是可以调整和修改一些主要参数,使模拟调节器也具备数字式控制器的灵活性: (1) 可以根据控制对象的不同,用程序方法调整分段及每段的数据,使PID控制更趋合理。 (2) 一些参数可以直接交给用户调整,PC机界面操作方便、直观。 三、 数字电位器驱动程序设计 采用这种电位器是用外部数字信号改变滑动端抽头位置,即滑动端到固定端的电阻值;而所谓“非易失性”即内部采用E2PROM,能够持久地保存抽头位置等数据不会轻易丢失直到下次的编程操作。在设计中选用了Xicor公司生产的X9312,作为数字控制电位器使用。图4为X9312的功能框图。 图4X9312的功能框图从图4中可以看到,X9312具有100个滑动端抽头点,用它作为数字控制的微调电阻是理想的。VW为图5输出子程序流程图滑动端抽头,受单片机控制而改变它的相对位置,在线路中将 VW与固定端VL和VH这几个引脚接入到PID调节器电路中作为比例电阻、积分电阻或微分电阻。X9312的控制引脚的名称、控制逻辑、与单片机连接情况如表1所列。 表1 〖〗引脚名称〖〗控制逻辑〖〗连接单片机的引脚CS〖〗片选〖〗低电平有效〖〗P10和P11的译码输出信号INC〖〗触发计数输入脚〖〗负边沿触发〖〗P12U/D〖〗升/降控制脚〖〗“1”升/“0”降〖〗P13按照这样的连接方式,就可以用程序控制相应电阻的阻值变化。图5为输出子程序流程图。 在程序流程图中,每次输出操作之后都要将该次输出值保存,作为输出历史值。下次进入这个子程序后,要将本次输出值与输出历史值进行比较:如果前者等于后者,则不改变输出;如果前者大于后者,则使U/D=1按“升”电位器的方向调整,并且按两者的差值控制触发次数,滑动端抽头移动增大阻值;如果前者小于后者,则使U/D=0按“降”电位器的方向调整,并按两者的差值控制触发次数,滑动端抽头移动减少阻值。 在对嵌入式控制系统设计过程中,应着重考虑的问题是如何提高控制系统的稳定性和可靠性,因为它是处于“一线”的现场设备,它的主要工作是进行测量-控制。在硬件和软件设计中都应该围绕这个重点,努力提高系统测量、控制的精度。对于其他方面的一些工作则应交给PC机实现,尽量做到“扬长避短”。这方面的后期开发工作潜力也比较大,譬如远程数据采集和远程诊断等。目前,在嵌入式控制系统设计中,硬件和软件部分已经考虑了这些功能扩充的问题,相信今后是可以逐步实现的。MES 参考文献 1何立民著.MCS\ 51系列单片机应用系统设计——系统配置与接口技术.北京:北京航空航天大学出版社,1990 2陈汝全等著.实用微机与单片机控制技术.成都:电子科技大学出版社,1993 3力源公司著.Xicor非易失性器件使用手册.武汉:武汉力源电子股份有限公司,1996
标签:
来源:单片机与嵌入式系统应用 作者:武汉理工大学信息工程学院 何嘉斌;湖北省计量测试技术研究院 梁枫;慧聪国际资讯武汉公司 严俊 时间:2006/2/12 0:00:00