基于增量式PID控制的数控恒流源
摘要:数控恒流源在计量、半导体、传感器等领域得到广泛应用,针对目前市场上大部分恒流源产品精度和智能化水平偏低等问题,提出了一种增量式PID控制的数控恒流源设计方法。该系统通过单片机对恒流源模块的输出进行采样,采用增量式P1D控制算法进行数值处理。并通过Matlab仿真与传统PID控制算法进行对比。实验结果表明其具有分辨率高、纹波小、高精度的特性。
关键词:单片机;恒流源模块;场效应管;增量式PID控制
0 引言
随着半导体集成技术的发展,恒流源的研究已经入崭新的一个阶段。在一些电真空器件中,如示波器,功率发射管等由于通电瞬间的电流非常大,所以对稳定其工作来说,恒流源显得非常必要。另外如各种标准灯、校验表、自动化仪表和半导体器件参数测量等,恒流源对器件的性能起着重要作用。
恒流源的实质是对电流进行反馈,通过对硬件电路进行供电,从而使电流趋于恒定。在得到电流之后形成反馈,从而建立恒流源。由于恒流源具有的特性,所以具有适合阻性、感性、容性负载的优点。理想的恒流源不会因负载的输出电压、环境温度的变化而变化,并因其内阻无限大,所以可使其电流全部输出。
1 恒流源实现原理
数/模转换输出的值加到运放的LM358正输入端,输出端电位加到场效应管的栅极上,根据场效应管的特性,可使输出电流信号放大若干倍,具体数值根据所选场效应管与外部电路而定。通过分析计算出外部电路的参数,使场效应管工作在放大区,由于此时漏源极电流仅决定于栅源极电压,所以当改变栅源极电压时,源极的电流也随着变化。为排除外部干扰信号的影响,源极电位加往U6-B运放器的正输入端以便滤波。经滤波所产生的信号加入到U6-A的负输入端,使其经过两端的压差放大之后控制场效应管的栅源极电压。当场效应管的漏极电流变大时,源极的电流同样增大,U6-A的反相端电位也变大,这样U6-A两端输入之差变小,所以场效应管的栅极电位也变小,漏极电流随之变小,从而达到恒流的效果。当场效应管的漏极电流变小时,源极的电流变小,U6-A的反相端电位变小,这样U6-A两端输入之差变大,所以场效应管的栅极上的电位变大,从而也达到恒流的效果。恒流源模块如图1所示。
本文设计的恒流源主要分下面几个模块:单片机控制系统、A/D和D/A转换模块、电源模块、恒流源模块、负载及显示模块。通过对按键的操作实现手动输入,通过D/A转换输入至恒流源模块,再通过A/D转换将数值送入到单片机内。系统框图如图2所示。
3 系统的控制算法
在恒流源的设计中,采用了增量式PID控制,由最为常见的传统式PID控制,比例、积分、微分控制推导而来。传统PID控制回路如图3所示。
PID调节控制器的输出/输入关系的表达式如下:
式中:uT为输出信号,e(t)为输入偏差信号,tD为微分时间,tI为积分时间。在该系统中,单片机对恒流源模块输出进行采样,得出量化数值。所以需将式(1)离散化以求得所需结果:
式中:T为采样周期;e(n)为第n次采样的偏差值;e(n-1)为第n-1次的采样偏差值;u(n)为第n次采样输出值。为使系统具有足够高的精度,必须将采样周期设定的足够小。由式(2)可以看出,如果要得出第n次输出值,需要处理的数据非常庞大,不仅需本次与前一次的偏差信号,而且需要从第一次到第n次的采样偏差值,再将其累加求和。在这一步骤当中,对微控制器所需的内存会有一定要求,并且其计算量繁冗。因此,对其进行化简,由递推原理求得第n-1次输出值,如下:
由式(4)可知,如果要得出第n次的输出值,只需求得第n-1次的采样输出值,第n,n-1,n-2次的偏差值,整个过程就简单清晰的多。在该系统中,经过A/D转换所得到的参数就是PID的被控对象。
在整个系统中,通过采用PID控制算法,不仅可以即时的反应出控制系统的偏差信号,减少偏差,而且通过积分控制作用之后,可以消除静差,使系统的精度大幅度提高。另外,在微分控制当中,偏差信号的变化趋势也可以读出。通过反馈作用,可对信号进行修正,从而加快系统的响应速度,减少调节时间。并且可避免因处理器的任何故障而引起的输出信号的大幅度变化。
为了证明增量式PID控制相对于传统PID控制的优越性,本文采用Matlab分别对增量式PID算法和传统PID算法进行仿真比较。
取KP=10,tD=3,tI=0.1,采样时间Ts=0.001。
给出一个叠加的阶跃响应模拟电流值的调节信号输入,分别在1,2.3,3.5,4处将系统输入(即:设定电流值)从0~1,1~1.8,1.8~2,2~2.9进行变化,仿真5 s后观察不同控制算法下的响应情况,如图4所示。
由图4可知
- 基于WinCE操作系统的通用USB数控键盘设计(08-05)
- DSP和FPGA在大尺寸激光数控加工系统中的运用(01-01)
- 开放数控系统模型的建立及实现(07-24)
- 基于DSP和FPGA的大尺寸激光数控加工系统(02-21)
- 基于ARM+DSP的嵌入式Linux数控系统设计(11-18)
- 基于S3C44BOX的嵌入式磨削数控系统(06-06)