基于FPGA的超高速工业控制器设计

2014-03-22 03:07吴爱国
仪表技术与传感器 2014年11期
关键词:超高速模拟量闭环

崔 巍,吴爱国

(天津大学电气与自动化工程学院,天津 300072)

0 引言

近年来,随着计算机技术和电子技术的不断进步和完善,通用数字控制器作为工业自动化控制类产品,已经被越来越多的产业领域接受,并已达到一个令人瞩目的市场规模。在航空航天、大型装备制造、电子信息等高新领域中,对控制器的快速性、稳定性、抗干扰性、精度、速度等指标提出了更高的要求,对超高速工业控制器的需求越来越强烈[1]。国内具有自主知识产权的工业控制器近年来取得了一定进展,但总体水平仍落后于国外技术先进的国家,主要体现在:控制器难以运用于超高速应用场合,抗干扰性和稳定性较差,由于控制器软硬件体系结构设计不合理,导致控制周期大于超高速应用的要求,抗干扰性和稳定性不好,最终的控制效果较差。因此,开发一款具备自主知识产权,能够通用于各种控制系统的超高速、低成本、高可靠性的可与上位机共同组成控制系统及能够直接与传感器和执行机构信号匹配的超高速工业控制器具有重要的意义。

FPGA作为主控芯片最突出的特点是超高速、并行性,同时具有速度快、成本低、通用性好、稳定性高、可靠性好、现场可编程与扩展能力强等优点[2]。因此文中设计出一种基于FPGA的超高速工业控制器,用它完成工业控制系统的模拟量、开关量的高速采集与控制,并可在上位机通过RS-422(半/全双工RS-485)和RS-232总线对该控制器实现高速监控。同时,控制器可根据上位机的设定实现工业现场8个双闭环PID或单闭环PID自动控制方案,整个控制周期低于0.3 ms,同时又可实现模拟量的手动输出或波形输出控制。最后,通过实验验证,使用文中所设计的控制器并结合双闭环/单闭环PID控制方案能够保证工业控制系统的模拟量超高速采集与控制,实现高速、理想的控制效果。

1 工业控制系统需求

为了完成工业控制系统的模拟量、开关量的高速采集与控制,与工业现场包含的各类设备交互,所设计的基于FPGA的超高速工业控制器应具有相应接口:(1)为与上位计算机通信,控制器应具有RS-422(半/全双工RS-485)和RS-232总线接口;(2)为采集工业现场各种模拟式传感器如位移传感器、流量传感器、压力传感器、温度传感器等模拟量信号,控制器应具有16路4~20 mA/0~10 V模拟量输入AI的A/D转换接口;(3)为控制工业现场的各种执行器行程、调节阀开度而与常用设备的驱动模块(交直流电机、伺服阀、溢流阀、换向阀的驱动器)连接,从而连续调节现场被控物理量,控制器应具有8路-10~10 V模拟量输出AO的D/A转换接口;(4)为读取工业现场的各种开关量输入设备状态和直接驱动生产中各种电磁阀的通断,控制器应具有16路开关量24 V输入DI信号的接口和8路开关量触点输出信号DO的接口。

2 控制器硬件结构

如图1所示,该控制器仅使用FPGA作为主控核心,FPGA的并行性保证了处理的超高速性。控制器使用四层FPGA核心板+调理板的结构,FPGA核心板和调理板由相互独立的电源供电。该控制器的硬件功能单元主要包括16路模拟量输入A/D转换单元,8路模拟量输出D/A转换单元,16路开关量输入信号隔离与调理单元,8路开关量输出信号隔离与驱动单元和总线通信单元。控制器上磁耦和光耦的隔离设计,使得工业现场的所有信号与FPGA核心主板不存在所有电气上的连接,仅保留逻辑联系,极大地增强了FPGA超高速工业控制器的硬件抗干扰性能。该控制器是真正的工业级超高速控制器,在硬件上所有芯片的选型都保证是工业级芯片且力求集成度高、处理速度快。

图1 基于FPGA的超高速工业控制器硬件框图

2.1主控芯片FPGA

FPGA超高速工业控制器的FPGA核心主控制单元选用的是Cyclone Ⅲ系列FPGA[3]中的EP3C16E144I7,该型号的FPGA具有比较丰富的内部资源:15 408个LE(逻辑单元),85个用户可使用I/O口,516 096位的内部存储器资源,112个内嵌9位×9位乘法器,4个PLL(锁相环),20个全局时钟。同时该型号FPGA的速度等级是7,温度等级是-20~85 ℃,相比于速度等级是8的一般型号的FPGA,主频可以跑得更高,延迟更短,实时性和快速性更强。该型号FPGA为编写状态机等复杂的逻辑控制程序和复杂的控制算法程序奠定了硬件基础,使超高速控制成为可能,同时利于今后控制器的功能升级。因此,EP3C16E144I7非常适合作为FPGA超高速工业控制器的核心主控芯片。

FPGA独立供电模块为FPGA提供3.3 V、2.5 V、1.2 V共3种电源电压等级:3.3 V作为该型号FPGA的I/O口电源VCCIO,1.2 V作为FPGA的内核电源VCCINT和PLL数字电源VCCD_PLL,2.5 V作为FPGA的PLL模拟电源VCCA和JTAG调试接口电路电源。

2.2 16路模拟量输入A/D转换单元

16路模拟量输入A/D转换单元包括I/V选择与变换电路、2片12位8通道A/D转换器电路、A/D接口数字隔离电路[4]。如图2所示,I/V选择与变换电路既可将工业现场输入的4~20 mA电流信号转换为1~5 V或0.5~2.5 V的电压信号,又可将工业现场输入的0~10 V信号转换为0~5 V电压信号。如图3所示,转换后的AI0~AI15共16路电压信号传输至2片12位8通道A/D转换器AD7928,并由A/D转换器转换为2组12位内部数字信号DB[11:0]:经软件配置后,AI0~AI7(1~5 V/0~5 V)在第一片AD7928上的转换关系是AI=5 V×DB[11:0]/4096;AI8~AI15(0.5~2.5 V)在第二片AD7928上的转换关系是AI=2.5 V×DB[11:0]/4 096。上述2组12位数字信号以SPI协议16位串行格式都通过2片磁隔离芯片ADum1201CR和ADum1200CR连接至FPGA的用户I/O口上。图3中的AD780BR用于产生2.5 V±0.001 V电压基准REFin_2.5 V供A/D转换使用,精准的2.5 V电压基准保证了模拟量采集与控制的高精度和准确性。

图2 I/V选择与变换电路原理图

磁隔离芯片与FPGA连接侧的供电回路应与FPGA的I/O电压一致,即应接入FPGA独立电源供电单元提供的VCC3.3到GND的3.3 V电压;磁隔离芯片与外设芯片连接侧的供电回路应与该外设芯片数字接口的电源引脚(文中是AD7928的Vdrive引脚)电压一致,即应接入调理板电源供电单元提供的VCC5到SGND的5 V电压。磁隔离芯片在这里除隔离作用外,还起到了5 V/3.3 V电平转换作用。

图3 A/D转换器电路原理图

2.3 8路模拟量输出D/A转换单元

8路模拟量输出D/A转换单元包括D/A接口数字隔离电路、14位8通道D/A转换器电路、模拟量输出信号放大与驱动电路[5]。FPGA的类SPI协议32位串行格式的数字信号通过磁隔离芯片ADuM1400CRW连接至14位8通道D/A转换器AD5648,磁隔离芯片的供电回路与2.2中所述一致。如图4所示,AD5648有AO0~AO7共8路模拟量输出引脚,在软件中将AD5648配置成使用内部电压参考源,故每路电压输出值Vout=5 V×D[13:0]/16384,其中D[13:0]是与该路AO对应的14位D/A数值。这8路0~5 V电压再经如图5所示LM7332运放电路的信号放大与驱动后,可线性放大为8路-10~+10 V的模拟量输出电压,所选LM7332可在输出±10 V电压时输出±70 mA电流,可满足工业现场绝大多数阀门执行机构的驱动控制要求。

图4 D/A转换器电路原理图

图5 模拟量输出信号放大与驱动电路原理图

2.4 16路开关量输入信号隔离与调理单元

如图6所示,工业现场的16路0 V或24 V电压开关量输入信号DI1~DI16经光耦PC817进行电压变换隔离,将0 V或24 V电压信号转为0 V或3.3 V电压信号输出给FPGA的I/O口。其中3.3 V稳压管D2起到过压和反接保护作用。

图6 开关量输入信号隔离与调理单元电路原理图

2.5 8路开关量输出信号隔离与驱动单元

如图7所示,控制器外接的24 V电源通过DC/DC模块提供专为继电器驱动电路[6]提供的独立电源,其地SGND_JiDianQi与控制器信号调理板的信号地SGND和控制器核心板的地GND完全相互独立,避免继电器输入端大电流频繁通断对系统的干扰。其工作原理是:当FPGA的相应I/O口输出高电平时,LED灭,光耦PC817不导通,PNP型三极管导通,额定电压为12 V的继电器输入端流过接近37.5 mA的电流,继电器输出端两个触点吸合;当FPGA的相应I/O口输出低电平时,LED亮,光耦PC817导通,PNP型三极管截止,继电器输入端无电流流过,继电器输出端两个触点断开。将继电器的输出触点串入工业现场的负载回路中即可完成8路对电磁阀等设备的开关量控制。

图7 开关量输出信号隔离与驱动单元电路原理图

2.6总线通信单元

总线通信单元包括通信数字隔离电路、用于与上位机或接入工业网络进行通信的半/全双工RS-485(RS-422)接口电路和RS-232接口电路。如图8所示,FPGA的4个I/O口经磁隔离芯片ADuM1401BRW连接至MAX491ESD,磁隔离芯片的供电回路与2.2中所述一致。FPGA通过MAX491ESD完成收发控制的方法如下:FPGA将发送使能控制线485_DE置高时,会使能MAX491ESD对异步串行通信接口发送信号485_DI的TTL电平到差分发送端RS-485(RS-422)电平标准的电平转换,反之会禁止发送信号的RS-485(RS-422)电平转换;FPGA将接收使能控制线485_RE置低时,会使能MAX491ESD对差分接收端RS-485(RS-422)电平标准到异步串行通信接口接收信号485_RO的TTL电平转换,反之会禁止接收信号的TTL电平转换。类似的,通过MAX3232ESE芯片构成的RS-232接口电路和磁隔离芯片ADuM1402BRW,可完成TTL电平与RS-232电平标准之间的转换。

图8 半/全双工RS-485(RS-422)接口电路图

3 FPGA内部功能模块设计与实现

如图9所示是FPGA内部的顶层设计中各功能模块的连接示意及对外引脚图[7],用Verilog HDL语言在FPGA上完成各功能模块的设计,所有涉及时序的模块均用Verilog代码设计成有限状态机,工作快速、稳定。最后利用Quartus II集成开发环境对由各个Verilog模块集成的顶层设计文件进行综合。

从图9看出,FPGA内部各功能模块中的核心主控模块是DA上层控制模块,DA上层控制模块的流程如图10所示。由于FPGA的并行性特点,在DA上层控制模块循环进行8路模拟量输出AO的计算与输出的同时,图9中还同时并行地进行着如下主要工作:16路模拟量输入AI信号的轮询AD采样转换与滤波,异步串行通信数据接收及其命令解析和参数设置,16路DI状态的读取与8路DO输出控制,向上位机通过异步串行通信接口循环发送所有的AI、AO、DI、DO数值信息。

图9 FPGA内部的顶层设计中各个功能模块的连接示意及对外引脚图

图10 DA上层控制模块的流程图

由图10及软件功能分析可知,该控制器可根据上位机发送的模拟量输入AI设定值及相关Kp、Ki、Kd参数进行双闭环/单闭环的PID自动调节,也可根据上位机发送的波形参数(周期、峰值、谷值)进行波形自动输出或手动值输出。控制器可完成最多8路模拟量AI的定值或随动控制,因FPGA可并行完成各种控制、采集、通信功能,一个控制周期Ts中16路AI中的每路都采集7次的情况下,8个模拟量的PID闭环控制总周期Ts可以低至0.3 ms,如果在一个Ts中,减少AO输出数目或使单路AI采集次数少于7次,控制周期Ts可以低至0.1 ms以下,完全可满足超高速的控制要求。

4 实验验证

为了验证该控制器对模拟量、开关量的高速采集与控制功能,使用LabVIEW编写了上位机监控系统,该监控系统共实现了6组功能:实时显示、数字量显示及输出设置、模拟量输出设置、控制参数设置、历史曲线、X-Y曲线。同时将该控制器用于对高阶大滞后对象的双闭环PID控制,高阶对象的输出与输入分别作为控制器的AI4与AO4,高阶对象的中间输出作为控制器的AI5,如图11所示,该高阶对象的输出可快速跟踪监控系统对AI4设置的给定值。

图11 控制器对高阶对象的双闭环PID控制曲线图

5 结束语

文中根据工业控制系统需求,设计出基于FPGA的超高速工业控制器,该控制器配备总线通信、模拟量输入/输出、开关量输入/输出等接口,能够完成工业控制系统的模拟量、开关量的高速采集与控制,并可在上位机通过RS-422(半/全双工RS-485)和RS-232总线对该控制器实现高速监控。该控制器仅使用FPGA作为主控芯片,最突出的特点是超

高速、并行性,整个控制周期低于0.3 ms,控制器既可根据上位机的设定实现工业现场8个双闭环PID或单闭环PID自动控制方案,又可实现模拟量的手动输出或波形输出控制。最后,通过实际实验,验证使用文中所设计的控制器并结合双闭环PID控制方案能够保证工业控制系统的模拟量超高速采集与控制,实现高速的控制效果和理想的监控功能。

参考文献:

[1]刘志勇.工业控制器可靠性若干问题的研究与开发:[学位论文].杭州:浙江大学,2012.

[2]王诚,蔡海宁.Altera FPGA/CPLD设计.第2版.北京:人民邮电出版社,2011.

[3]Cyclone III Design Guidelines,datasheet,Altera Corporation,2008.

[4]江小平,刘文杰.基于CPLD/FPGA的A/D转换控制器的设计.苏州大学学报,2005,25(4):1-3.

[5]郑艳霞,张培仁,张志坚.高精度远程隔离型多路AI/AO电路设计.工业控制计算机,2006,19 (9):12-14.

[6]顾海洲,马双武.PCB电磁兼容技术——设计实践.北京:清华大学出版社,2004.

[7]刘小林,范育兵,罗春晖.基于FPGA的多通道数据采集系统设计.电子技术应用,2009(7):1-3.

作者简介:崔巍(1989—),硕士研究生,主要从事工业控制系统及其控制器开发。E-mail:cuiwei007@tju.edu.cn

吴爱国(1954—),教授,博士生导师,主要研究领域为以液压系统、制冷系统、电机为对象的非线性系统控制方法研究。

猜你喜欢
超高速模拟量闭环
为HDMI2.1标准的普及保驾护航 详谈Ultra High Speed超高速HDMI线材认证
基于安全闭环的“两客一危”动态监管平台
基于信号集中监测的轨道电路模拟量报警分析
中国风投行业迎来超高速发展
单周期控制下双输入Buck变换器闭环系统设计
基于ST-SRCKF的超高速强机动目标跟踪算法
关于600MW火电机组模拟量控制系统设计和研究
家电回收的闭环物流网络选址模型
最优价格与回收努力激励的闭环供应链协调
一种通用模拟量及开关量信号采集板卡的设计