基于FPGA的温等静压机升压压力控制系统设计*
2012-11-24张晋华刘知贵张活力陈金江
张晋华,刘知贵,张活力,陈金江
(西南科技大学a.信息工程学院;b研究生部;c学生处;d信息工程学院,四川绵阳 621010)
0 引言
等静压软模成型技术[1-2]是从上个世纪20年代发展起来的一种利用密闭高压容器内制品在各向均等的超高压压力状态下成型的先进技术。该工艺是将粉末包容于一定形状的弹性模内至于装有流体(液体或气体)的密闭容器中,通过对弹性模施压而使粉末成形的工艺方法。等静压成型技术通常需要0~600MPa的超高压条件,这给等静压装置的压力控制系统设计带来了很大困难。等静压机压力控制系统是最具有多样性的一种控制系统,它根据所压制的产品不同而压力各异,难易程度也有很大区别。目前,等静压机的压力控制系统为PLC+PC机复杂控制系统[3],其缺点是系统需要运行大量算法软件、指令处理速度慢、体积大、功耗大,受干扰后系统恢复较慢等。
随着FPGA技术及其开发工具的发展,基于FPGA对压力控制系统进行控制是一种简单有效的控制方法。FPGA器件具有集成度高、体积小、速度快、易于修改等特点。但是使用VHDL/Verilog HDL语言编写复杂的控制算法有一定的困难性。随着现代DSP技术的发展,在利用FPGA进行系统的开发应用上,已有全新的设计工具和设计流程。通过 DSP Builder将Matlab中Simulink设计仿真开发功能与QuartusII软件的HDL综合、模拟和验证功能结合起来,为智能控制算法的FPGA实现提供了良好的开发环境。
针对等静压装置压力控制系统(PLC+PC机)的缺点以及FPGA芯片的易存储式控制、控制精度高、高速处理、开发周期短、成本低、开发风险小等众多优点,使得我们可以将各种智能压力控制算法固化在专用的FPGA芯片上,算法硬件化。设计专用的FPGA控制芯片,它可以完全取代PLC+PC机所完成的全部控制功能。其专用性更强、体积更小、功耗更低。研制专用的FPGA芯片,通过其本身自带的加密特性,结合键合封装等技术,屏蔽掉不需要的PIN管脚,使得系统的保密性能良好。
1 温等静压机压力控制系统
温等静压设备在压制过程中分为升压、保压和卸压三个阶段[1,3]。升压是指按照设定的工艺曲线从0MPa升至设定压力的过程;保压是指根据设定时间保持超高压工作缸压力在一定范围内恒定不变的过程;卸压是指按照设定曲线将工作缸压力性当前值降至0MPa的过程,每一个过程都有自己的各自的特点。
温等静压机压力容器内的压力是由压力控制系统控制的。压力控制系统的设计是整个等静压装置设计的核心之一,其主要功能是使容器内的压力按工艺预先设定的规律变化,它包括增压器运行速率控制和卸压阀组流量控制两部分。温等静压机压力控制系统原理图[3]如图1所示。
图1 温等静压机压力控制系统原理图
该系统中比例流量阀的出口流量与电压成正比,因此可以通过控制电压的大小来控制比例流量阀的开度,控制进入增压器低压腔液压油的流量,从而改变活塞杆的运动速度,进而改变注入工作缸内介质油的流量。因此可以通过控制改变电控比例流量阀的控制电压使工作缸内的压力按照一定的速率增加。系统配置3个超高压卸压阀,节流口径初步定为φ0.8、φ1.0、φ1.2三个规格,配套有相应的控制泵站和阀组。其主要原理是根据卸压速度,动态选择卸压阀组的组合,通过3个卸压阀的组合可达到7种卸压速度,由于以上组合不能完全模拟真实的卸压速度,因此在卸压时同时开启增压器进行增压,通过电控比例泵调节增压器的卸压速度,这样通过边增压、边卸压的方式来保证卸压曲线的精度。增压器运行速率控制规律为常规PID控制。卸压阀组流量的控制规律则采用模糊PID或神经网络PID进行控制。
2 数字PID控制算法
PID控制器以其结构简单、稳定性好、工作可靠、调整方便等优点被广泛应用于工业控制系[4]。PID控制器是一种线性闭环控制,根据系统输入和输出的偏差值,利用比例、积分、微分计算出控制量来进行控制的。其基本原理是根据反馈控制系统的偏差值按比例、积分、微分函数关系进行运算,所得结果输出给执行机构,执行机构根据偏差值的运算结果来控制被控对象。在PID控制算法中,现今应用最为广泛的、算法相对简单的当属数字PID控制算法。数字PID控制是生产过程中被普遍采用的控制方法,具有参数能够灵活整定的特点。而根据执行元件及控制对象的特性不同,数字PID控制算法通常又分为位置式PID控制算法和增量式PID控制算法。
本文研究的是温等静压装置在升压阶段用PID算法控制电控比例流量阀,因此我们选用位置式PID控制算法[4-5]。
位置式PID算法方程为:
为了简化式子,设:
则上式变为:
其中:u0为控制量的基值,即k=0时的控制输出;u(k)为第k个采样时刻的控制输出;e(k)为第k个采样时刻的误差值;e(k-1)为第(k-1)个采样时刻的误差值;Kp为控制器比例放大系数;Ki为控制器积分放大系数;Kd为控制器微分放大系数;T为采样周期;Ti控制器的积分时间;Td为控制器的微分时间。PID控制系统方框图如图2所示。
图2 PID控制系统方框图
3 基于DSP Builder的数字PID控制算法设计与仿真测试
本文系统软件使用QuartusII9.0,ModelSim-Altera6.4a,MATLABR2009b,DSPBuilder9.0 作为系统开发设计及测试软件平台。DSP Builder[6]是Altera公司推出的面向DSP开发的系统工具,它是作为Matab的一个Simulink工具箱出现的。控制系统结合使用DSP builder与QuartusII,按照自顶向下的设计方法,实现各个模块的设计,通过SignalComplier将所设计的.mdl文件转换成相应的HDL语言文件和TCL脚本文件,在ModelSim中运行测试文件,查看测试结果。最后通过Quartus II[7]完成综合、编译、仿真和硬件测试。
3.1 PID控制算法设计
依据图2采用DSP Builer设计数字PID控制算法模块,如图3所示。在顶层设计模型中,除了PID_controller模块外,其他部分均采用一般Simulink组件。底层模型图PID_controller实现了PID算法部分,这部分除了示波器均采用DSP Builder组件。否则,Signal Compiler时会出错。输入为12位的偏差信号。而为了实现比例、积分、微分系数的精确可调,在这里PID系数采用了8位精度,使系数至少可以精确到百分位。同时,在系统设计过程中为了尽量避免浮点数的运算,这里将PID系数取成整型,先放大数据值到20位,而在并行加法器运算单元后用IO&Bus中的总线转换器单元对累加后的数据进行位数转换,实现FPGA中的浮点数运算。
图3 DSP Builder建立的PID控制系统仿真模型
3.2 控制算法的仿真测试[6-9]
仿真测试步骤如下:①用DSP Builder搭建PID控制算法模块,进行Matlab仿真,运行无误后的仿真结果如图4所示。②用Signal Compiler将Matlab文件(.mdl)转换成Modelsim可以识别的TCL脚本文件和VHDL文件;③在Modelsim中运行测试文件,查看测试结果。Modelsim中闭环控制系统的输出曲线如图5所示。测试结果与Matlab的仿真结果基本相同。
图4 DSP Builder下PID控制器仿真图
图5 Modelsim功能仿真测试图
3.3 控制算法的FPGA实现[7]
双击PID控制模型中的SingnalCompiler模块,按照提示选择器件、综合及优化工具,这里选择Cyclone系列芯片 EP1C6Q240C8型 FPGA,综合工具选为QuartusII9.0,优化方式选择Balanced,综合考虑运算速度和耗费资源,编译生成PID.qpf。在QuartusII9.0打开PID.qpf可以看到SingnalCompiler自动生成的VHDL语言源代码PID.vhd。在QuartusII9.0中完成综合、编译、仿真和硬件测试。生成的.pof文件及.sof文件可直接用于FPGA的编程配置。
4 结束语
文章介绍了温等静压机压力控制系统的组成原理,描述了温等静压装置在升压和卸压过程中压力控制算法的选取。笔者以DSP Builder及QuartusII设计了温等静压装置压力控制系统中的升压控制器。设计好的智能模块可作为IP加入到SOPC中。之后介绍了FPGA的系统级设计工具DSP Builder在压力控制领域的应用,目前在已出版的国内期刊及论文库中还没有相关文献谈到这个交叉领域的应用。由于设计是从与硬件完全无关的Matlab系统级仿真开始,因此控制领域工程师们可以迅速地将算法级的构思应用于控制系统设计中,从而可以将有限的精力专注于系统算法级的设计,缩短了项目开发周期,减小了开发成本。我们将日益完善的SOPC设计工具应用于自动控制领域,大大提高了将各种智能PID算法广泛应用于实际工业控制系统的可行性。
[1]马福康,等.静压技术[M].北京:冶金工业出版社,1992.
[2]朱志斌,田雪冬,等.静压技术的应用与发展[J].现代技术陶瓷,2010(1):17-24.
[3]范玉德,曹志伟.QIC-160等静压机自动控制系统的设计与实现[J].中国工程物理研究院科技年报,2003:131-132.
[4]刘金琨.先进PID控制及其Matlab仿真[M].北京:电子工业出版社,2003.
[5]Kiam Heong Ang,Gregory Chong,Student Member,IEEE,and YunLi,Member,IEEE.PID Control System Analysis,Design,andTechnology[J].IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY,VOL.13,NO.4,JULY 2005.
[6]DSP Builder ReferenceManual.http://www.altera.com.
[7]QuartusII Handbook.http://www.altera.com.
[8]苏珊,杨艳玲.基于Quartus II的数字PID控制模块设计与仿真[J].吉首大学学报(自然科学版),2009:64-66.
[9]戢方,雷勇,王俊.自顶向下基于DSP Builder的PID控制系统开发[J].现代电子技术,2007:127-129.