基于FPGA的探测器制冷控制系统优化设计

2019-10-12 08:50谢妮慧郝中洋
航天返回与遥感 2019年4期
关键词:正弦波控制算法正弦

谢妮慧 郝中洋,2

基于FPGA的探测器制冷控制系统优化设计

谢妮慧1郝中洋1,2

(1 北京空间机电研究所,北京 100094)(2 先进光学遥感技术北京市重点实验室,北京 100094)

为了给红外探测器提供稳定可靠的温度环境,文章提出了一种以现场可编程逻辑门阵列(FPGA)为核心逻辑控制单元的高精度制冷控制系统,与传统以微处理器为核心的制冷控制系统相比,该系统具有运算速度快、可靠性高、电路结构简单等特点。重点介绍了该制冷控制系统的硬件组成、比例—积分—微分(PID)控制算法和正弦脉宽调制(SPWM)波驱动的软件实现,并总结了FPGA电路的优化设计方法。通过优化设计,极大的减小了逻辑资源占用率。试验结果证明,该制冷控制系统能够实现±0.05K的控温精度,控温精度高,跟踪速度快,稳定性和抗干扰能力比较出色。

脉冲管制冷机 现场可编程逻辑门阵列 比例—积分—微分控制 正弦脉宽调制波驱动航天红外遥感

0 引言

红外探测器是遥感卫星上红外遥感器中的核心部件,用于实现目标探测和系统成像。由于红外探测器大多选用HgCdTe、InSb、PtSi等红外光子型半导体材料,这些红外半导体材料具有禁带宽度窄、红外光量子能量小,且在较高温度下会产生固有热激发,导致大的暗电流和噪声等特点,因此需要空间制冷机提供可靠冷源,降低探测器的工作温度,减少本底热噪声、屏蔽和排除视场外的热干扰,从而提高探测精度和灵敏度,使探测器获得稳定可靠的探测性能[1-4]。

传统的制冷控制系统一般采用以单片机或数字信号处理器(Digital Signal Processor,DSP)等微处理器为核心的数字控制系统,流程控制、算法都通过软件编程实现,这类软件存在中断嵌套、程序跑飞等问题,速度和可靠性有一定局限性;另外,这类控制系统往往还存在外围电路多、集成度低等问题[5-9]。与单片机或者DSP相比,现场可编程门阵列(Field Programmable Gate Array,FPGA)是通过硬件来实现控制算法,且为并行处理逻辑,因此运算速度快、可靠性高;除此之外,FPGA还具有体积小、集成度高、功耗低、设计电路灵活等特点。

高速集成电路硬件描述语言(Very High Speed Integrated Circuit Hardware Description Language,VHDL)是一种硬件描述语言,用来描述数字逻辑电路设计思想,然后利用电子设计自动化(Electronic Design Automation,EDA)工具进行仿真,再综合到门级电路,最后利用FPGA实现其功能。相同功能的数字电路,使用的VHDL描述方式不一样,逻辑电路的复杂程度、时延特性、性能指标和可靠性等会大不相同,因此电路的优化设计是FPGA设计的重要环节。剔除设计中的冗余电路,不但可以减少电源消耗,还能提高工作速度、减少布线困难。

1 系统组成

制冷控制系统结构如图1所示。工作原理为:利用恒流源为红外探测器上的测温二极管提供一个恒定电流,测温二极管的阻值随着温度的变化而发生变化,测温二极管两端的电压也随之改变,采集测温二极管两端的电压作为温度AD反馈值(是反映温度的物理量经过模数转换之后的数字量)。为避免制冷机在启动期间撞缸,制冷机控制电路输出功率在加电初期逐渐增加到其最大值,制冷机制冷到设定温度点附近时,比较温度反馈值与目标温度值,通过比例—积分—微分(PID)控制算法计算得到电机控制电压,调节正弦脉宽调制(Sinusoidal Pulse Width Modulation,SPWM)波控制驱动电路的逆变电路,改变输出功率值,驱动制冷压缩机电机的运动,实现高精度控温的目的。

图1 制冷控制系统结构

2 PID控制及其软件实现

2.1 PID控制算法

模拟PID控制算法的表达式为

设采样周期为,式(1)离散化后得到数字PID控制算法的表达式

式(2)为绝对式PID控制算法计算公式,不但计算繁琐而且占用很大内存,增量式PID能有效解决这个问题。本文采用增量式PID控制算法,计算公式为[10-12]:

最终赋予被控对象的控制量为

2.2 软件实现

图2 PID算法流程

图3 PID算法数据流示意

2.3 串行计算方式及处理

从图2、图3所示可知,每作一次PID运算都需要进行多次减法、加法和乘法运算,可通过两种VHDL描述方式来实现上述PID控制:1)并行方式,采用3个减法器、3个加法器和3个乘法器,这种设计方法运行速度快,但资源占用率很大;2)串行方式,1个加法器、1个减法器和1个乘法器,通过状态机的跳转来控制每一次加法器、减法器和乘法器的调用时序,这种设计方法占用资源少,但运行速度较慢。本文所研究的制冷控制系统中,控制量的输出频率为1Hz,进行一次PID运算所执行的时间远小于控制周期,另外,SPWM波驱动、AD采集、流程控制等所有模块的总资源占用率已经接近于可靠性、安全性设计要求的上限,因此从节省资源角度考虑,本文PID算法采用串行方法设计,牺牲运行速度来换取FPGA逻辑资源。

由于PID控制量的输出频率为1Hz,而FPGA的时钟频率为20MHz,远大于PID的控制频率,因此可以用同一个乘法器来分别计算比例、积分和微分环节,以及采用同一个加法器来计算比例(P)+积分(I)和(比例+积分)+微分(D)运算,展开处理时间,串行执行每一步计算,实现乘法器、加法器资源的共享,缩小FPGA电路的规模。并行计算向串行计算的转变如图4所示。两种设计方法的性能比较如表1所示。

图4 并行计算向串行计算转变流程

表1 串行和并行设计PID模块性能比较

Tab.1 Performance comparsion of serialization and parallelism

为了加快调温的速度,利用分段式PID控制方法。在制冷初期,驱动电压缓慢增加至最大电压输出,利用最大功率制冷,将温度由室温降到目标温度附近。当温度到达目标温度附近时,再切换到PID闭环控制模式实现精确控温。这样既实现了温度、驱动电压的平稳变化,也防止了制冷机撞缸的发生。

另外,为了控制温度的变化率(防止探测器温度陡增或陡降),对PID输出控制量增量(Δ)进行了限幅;同时为了加快温度的收敛并减小振荡,对PID的绝对输出(,即电机的驱动电压)也进行了限幅。

3 SPWM驱动及其软件实现

3.1 SPWM波驱动原理

根据采样控制理论(又称面积等效原理),冲量相等而形状不同的窄脉冲作用于惯性系统上时,其输出响应基本相同,且脉冲越窄,输出的差异越小,因此可以用一系列等幅不等宽的脉冲来代替一个正弦波。脉冲幅值相等,脉冲宽度按正弦规律变化,从而和正弦波等效的脉宽调制(Pulse Width Modulation,PWM)波形称为SPWM波,如图5所示。SPWM波控制通用性强,控制和调节性能好,具有消除谐波、调节和稳定输出电压的功能,因此被广泛应用于电机控制电路中[13-17]。

SPWM波的生成可以采用调制法:等腰三角形波(三角波)作为载波(c),正弦波为调制波(r)。通过比较正弦波与三角波值的大小来控制电路中开关器件的通断,当正弦波大于三角波时输出高电平、小于三角波时输出低电平,从而得到一组等幅的、脉冲宽度正比于正弦曲线在交点时刻函数值的矩形脉冲序列,如图6所示,图中o表示输出电压,ol表示o中的基波分量,d表示逆变电路中的直流电压。

图5 与正弦波等效的矩形脉冲序列

图6 单极性SPWM波

3.2 SPWM波的VHDL实现

同步时钟信号作用下,首先生成三角波和正弦波,正弦波的幅值随着PID控制器输出的控制电压实时变化,然后比较正弦波与三角波的值,在正弦波的上半周期,第三路和第四路SPWM波不变,当正弦波大于三角波值时第一路SPWM波输出高电平、小于三角波时第二路SPWM波输出低电平;同理,正弦波的下半周期按图7所示流程产生SPWM波。为了防止H桥同一端的上下桥臂元器件同时导通造成短路,需要在SPWM波之间加一个死区时间,最后利用带死区的SPWM波驱动逆变电路。

3.3 资源共享实现电路优化设计

SPWM模块包括正弦波产生模块、三角波产生模块和SPWM波生成模块三个子模块,在正弦波产生模块中通过资源共享的设计方法实现了电路的优化设计。

1)正弦波产生模块。优化前:直接将0~2π的一个周期的正弦波离散为400个点,量化精度为10比特,需要占用400个10比特的寄存器。优化后:利用正弦波的对称性,将1/4周期的正弦波离散化为100个点,每个点的正弦值进行10位量化,通过状态机的跳转分时正向或逆向查找1/4周期的正弦表(离散点),最终实现整周期(0~2π)的正弦表,采用这种方式既保证了离散精度,又最大化的节省了逻辑资源。通过控制正弦表的查找频率来调节正弦波的输出频率。优化前后性能比较如表2所示。

2)三角波产生模块。设计一个可逆计数器,从最小值0加到最大值256后,再减到最小值0,重复上述过程。计数器的值即三角波的值,三角波的频率由计数器时钟决定。三角波的频率越大,对正弦波的采样率越高,使输出的SPWM波形经过LC滤波还原为正弦波时谐波越小。

3)SPWM波生成模块。将得到的正弦信号值与三角载波进行比较,在每个采样时刻,比较正弦波和三角波的值,并设置死区时间,最后利用带死区的SPWM波驱动逆变电路。

图7 SPWM波生成流程

表2 优化前和优化后SPWM模块性能比较

Tab.2 Performance comparison before and after optimization

为了防止输出的正弦波发生畸变,输出一个完整的正弦波,控制驱动电压的改变不能在正弦表中间,而是在正弦表最初改变。

4 电路的其他优化设计

本文采用的是反熔丝FPGA芯片,因为其具有抗单粒子翻转能力强、可靠性高等特点,适用于航空航天领域。但是反熔丝FPGA芯片规模小、单片密度低,与飞速发展的遥感器和功能日益复杂、控温精度越来越高的制冷控制系统越来越不匹配,因此可编程逻辑门阵列电路优化设计显得尤其重要[18-20]。本文研究中还总结了如下优化设计方法。

(1)移位相加型乘法器设计

直接采用预定义的“*”操作符进行乘法运算资源占用率非常大。两个二进制数相乘的计算过程如图8所示,从图8中可以看出,硬件乘法器的实现本质是“移位相加”。本文采用移位相加的方式实现二进制数的乘法运算,具体实现步骤为:从乘数的最低位开始判断,如果第位为“1”(=0~length−1,length表示乘数的长度),则被乘数左移位并与上一次的和(初始为0)相加;若为“0”,则本次不相加,如此循环至乘数的最高位,最终的累加和即为两数的乘积。实践证明,采用移位相加的方法设计的乘法器要比直接采用预定义的运算操作符“*”要节省资源约5%。

图8 二进制数相乘

(2)避免不必要的锁存器产生

有时候编程不规范会使综合之后的电路产生很多不必要的锁存器,降低电路的工作速度、导致FPGA电路复杂。IF和CASE语句容易引入不必要的锁存器,由于有些情况下IF和CASE语句的分支不能覆盖所有的输入值,逻辑反馈就容易形成锁存器。

(3)层次化电路设计

一个设计实体无法实现整个系统的功能,需要详细了解系统的组成和结构,科学的划分。采用自顶向下的设计方法,将整个软件进行功能模块划分,模块之间的I/O连接应尽可能的少,先设计各个底层模块,然后对各个模块进行优化设计,再将模块连接起来进行测试优化。

5 系统验证

为了验证本文制冷控制系统的可行性,将制冷控制系统与真实的制冷机负载相连,系统上电开始运行之后,采集并存储测温二极管采集的温度数据(温度AD值),系统采集的温度数据为模数转换之后的12位AD码值,码值与温度的具体关系不在此赘述,得到图9所示的温度控制曲线,横坐标为时间,纵坐标为温度AD值,采样间隔时间为1s,曲线显示了制冷控制系统从常温环境开始的制冷效果。初始的目标温度为80K,之后目标温度切换为77K。可以看出,制冷初期,控温曲线平滑,没有超调,没有振荡,系统响应快,切换控温点之后,系统的制冷过程仍然没有出现超调和振荡,并且很快又稳定在新的目标温度。图10为系统稳定后的温度误差曲线,从曲线可见,控温精度在正负10个AD值范围(对应±0.05K控温精度),控温精度高。由此证明本文设计的制冷控制系统控温效果良好,控温精度高,能够满足探测器的温度要求。

图9 制冷机温度曲线

图10 温度误差曲线

6 结束语

本文提出了一种以FPGA为核心逻辑控制单元的高精度制冷控制系统。重点阐述了该制冷控制系统的硬件组成、PID控制算法和SPWM波驱动的VHDL实现以及FPGA电路的优化设计。在PID运算模块中提出了串行计算方式,通过状态机的跳转来控制每一次加法器、减法器和乘法器的调用时序,实现了乘法器、加法器和减法器的分时复用,节省了大量的FPGA资源。在SPWM波驱动模块中,通过资源共享的方式,利用最少的资源实现正弦波查找表的生成,尽量的减少FPGA逻辑资源的占用率。采用移位相加定点运算的方法实现二进制数的乘法运算,而不是内置的宏功能模块,提高运算精度、节省内部硬件资源。通过试验结果证明,该制冷控制系统能够实现±0.05K的控温精度,具有控温精度高、跟踪速度快、稳定性好和抗干扰能力强等特点。

[1] 朱建炳, 潘雁频. 空间制冷技术在星载红外遥感器中的应用与发展[J]. 真空与低温, 2003, 9(1): 6-12. ZHU Jianbing, PAN Yanpin. Application and Development of Spaceborne Cooling Technology for Aerospace Infrared Remote Sensor[J]. Vacuum & Cryogenics, 2003, 9(1): 6-12. (in Chinese)

[2] 杨雪, 茅年清, 徐圣亚. 制冷机在空间红外遥感领域的应用研究[J]. 真空与低温, 2014, 20(2): 113-115, 124. YANG Xue, MAO Nianqing, XU Shengya. Research of Cryocooler Application in Space Infrared Sensor System[J]. Vacuum & Cryogenics, 2014, 20(2): 113-115, 124. (in Chinese)

[3] 张月, 周峰, 阮宁娟, 等. 空间红外天文望远镜低温制冷技术综述[J]. 航天返回与遥感, 2013, 34(5): 46-55. ZHANG Yue, ZHOU Feng, RUAN Ningjuan, et al. Overview of Cryogenic Refrigeration Technology in Space Infrared Astronomical Telescopes[J]. Spacecraft Recovery & Remote Sensing, 2013, 34(5): 46-55. (in Chinese)

[4] 朱建炳. 空间深空探测低温制冷技术的发展[J]. 航天返回与遥感, 2010, 31(6): 39-45. ZHU Jianbing. Development of Cryogenic Refrigeration Technology for Deep Space Explorations[J]. Spacecraft Recovery & Remote Sensing, 2010, 31(6): 39-45. (in Chinese)

[5] 张彤, 陈小文, 刘银年, 等. 星载红外探测器温度控制系统的设计和应用[J]. 红外技术, 2005, 27(2): 167-170. ZHANG Tong, CHENXiaowen, LIU Yinnian, et al. Design and Implement of Temperature Controlling System of Spaceborne Infrared Detector[J]. Infrared Technology, 2005, 27(2): 167-170. (in Chinese)

[6] 黄新栋. 制冷型红外探测器高精度制冷控温系统[J]. 红外技术, 2012, 34(9): 547-550. HUANG Xindong. High-precision Temperature Control System of Cooled Infrared Sensor[J]. Infrared Technology, 2012, 34(9): 547-550. (in Chinese)

[7] 常霞, 何海燕, 刘雪峰, 等. 基于TMS320F240的制冷控制系统的软件设计[J]. 测控技术, 2013, 32(10): 109-111, 115.CHANG Xia, HE Haiyan, LIU Xuefeng, et al. Software Design for Refrigeration Control System Based on TMS320F240[J]. Measurement & Control Technology, 2013, 32(10): 109-111, 115. (in Chinese)

[8] 张鹏, 常霞. 航天相机用基于1553B总线高精度温度控制系统[J]. 计算机测量与控制, 2017, 25(7): 115-119. ZHANG Peng, CHANG Xia. Space Camera Use High Precision Temperature Control System Based on 1553B Bus[J]. Computer Measurement & Control, 2017, 25(7): 115-119. (in Chinese)

[9] 常霞, 张鹏, 李恺, 等. 一种轻小型遥感相机高精度主动热控设计[J].计算机测量与控制, 2014, 22(7): 2274-2276. CHANG Xia, ZHANG Peng, LI Kai, et al. Design of High Precision Control of Space Camera Temperature Controlling[J]. Computer Measurement & Control, 2014, 22(7): 2274-2276. (in Chinese)

[10] 陈昭明, 白向林, 龚晓宏. 基于FPGA的数字PID控制器设计[J]. 重庆科技学院学报(自然科学版), 2010, 12(2): 149-151, 169. CHEN Zhaoming, BAI Xianglin, GONG Xiaohong. Design of Digital PID Controller Based on FPGA[J]. Journal of Chongqing University of Science and Technology (Natural Science Edition), 2010, 12(2): 149-151, 169. (in Chinese)

[11] 高铁红, 王诚意. 基于FPGA的增量式PID控制器的研究与实现[J]. 河北工业大学学报, 2011, 40(5): 36-38.GAO Tiehong, WANG Chengyi. The Design and Implementation of Increasing PID Controller Based on FPGA[J]. Journal of Hebei University of Technology, 2011, 40(5): 36-38. (in Chinese)

[12] 陈晋炜, 周玉洁. 数字PID控制器的FPGA实现及软硬件协同仿真[J]. 信息技术, 2005(9): 38-40, 162. CHEN Jinwei, ZHOU Yujie. FPGA Implementation of Digital PID Controller and Hardware Software Co-simulation[J]. Infrared Technology, 2005(9): 38-40, 162. (in Chinese)

[13] 张贤涛, 于生宝, 姜卓娇, 等. 基于CPLD的全桥SPWM逆变控制波形生成[J]. 电力电子技术, 2006, 40(5): 118-120.ZHANG Xiantao, YU Shengbao, JIANG Zhuojiao, et al. Generation of Full-bridge SPWM Invert Control Waveform based on CPLD[J]. Power Electronics, 2006, 40(5): 118-120. (in Chinese)

[14] 丁卫东, 郭前岗, 周西峰. 一种基于FPGA的SPWM波的实时生成方法[J].计算机技术与发展, 2011, 21(2): 211-214.DING Weidong, GUO Qiangang, ZHOU Xifeng. A Kind of Method for Producing SPWM Waveform Real-time Based on FPGA[J]. Computer Technology and Development, 2011, 21(2): 211-214. (in Chinese)

[15] 常国祥, 王成元, 夏加宽, 等. 一种新的基于FPGA的多路SPWM波形发生器[J]. 中国电机工程学报, 2006, 26(z1): 51-54.CHANG Guoxiang, WANG Chengyuan, XIA Jiakuan, et al. A Novel Multi-channel SPWM Wave Generator Based FPGA[J]. Proceedings of the Chinese Society for Electrical Engineering, 2006, 26(z1): 51-54. (in Chinese)

[16] 朱超, 刘伟. 基于FPGA改进型正弦波逆变器的设计[J].电子设计工程, 2016, 24(21): 162-166.ZHU Chao, LIU Wei. Design of Modified Sine Wave Inverter Based on FPGA[J]. Electronic Design Engineering, 2016, 24(21): 162-166. (in Chinese)

[17] 王海霞, 曾成, 伍萍辉. 基于FPGA的高频整流SPWM波形发生器[J].电测与仪表, 2013, 50(1): 94-97.WANG Haixia, ZENG Cheng, WU Pinghui. SPWM Generator in High Frequency Rectifying Circuit Based on FPGA[J]. Electrical Measurement & Instrumentation, 2013, 50(1): 94-97. (in Chinese)

[18] 张建妮. 基于FPGA的8位移位相加型硬件乘法器的设计[J]. 智能计算机与应用, 2014, 4(4): 87-93. ZHANG Jianni. The Design of Hardware -Multiplier with 8 bit Based on FPGA[J]. Intelligent Computer and Applications, 2014, 4(4): 87-93. (in Chinese)

[19] 赵杰. 基于VHDL的乘法器的设计与对比[J]. 商洛学院学报, 2015, 29(6): 3-6. ZHAO Jie. Design and Comparison of Multiplier Based on VHDL[J]. Journal of Shangluo University, 2014, 4(4): 87-93. (in Chinese)

[20] 杜志传, 郑建立. 基于CPLD/FPGA的VHDL语言电路优化设计[J]. 现代电子技术, 2010, 33(3): 191-193.DU Zhichuan, ZHENG Jianli. Optimized Design of Circuits in VHDL Based on CPLD/FPGA[J]. Modern Electronics Technique, 2010, 33(3): 191-193. (in Chinese)

Refrigeration Control System of Infrared Detector Based on FPGA

XIE Nihui1HAO Zhongyang1,2

(1 Beijing Institute of Space Mechanics & Electricity, Beijing 100094, China)(2 Key Laboratory for Advanced Optical Remote Sensing Technology of Beijing, Beijing 100094, China)

As the core logic control module of the system, the high-precision refrigeration control system based on FPGA is designed in this paper. Compared with the traditional control system based on microprocessor, the system based on FPGA has the advantages of fast speed, high reliability and simple circuit structure. The paper mainly introduces hardware composition, software design of PID control algorithms and SPWM(sinusoidal pulse width modulation)motor drivers, and summarizes the design method of circuit optimization. By optimizing design, the occupancy rate of logical resources is greatly reduced. The results show that the system has advantages of high precision temperature control, fast tracking speed, high stability and strong anti-interference ability.

pulse tube refrigerator; field programmable gate array(FPGA); proportion integration differentiation(PID)control; sinusoidal pulse width modulation(SPWM); space infrared remote sensing

TP311.3

A

1009-8518(2019)04-0048-09

10.3969/j.issn.1009-8518.2019.04.006

谢妮慧,女,1986年生,2012年获北京航空航天大学控制科学与工程专业硕士学位,工程师。研究方向为遥感相机机构运动控制、制冷控制等。E-mail:524857918@qq.com。

2019-05-06

国家重大科技专项工程

(编辑:夏淑密)

猜你喜欢
正弦波控制算法正弦
正弦、余弦定理的应用
使用正弦、余弦定理时的易错点分析
陶瓷大板单摆动式抛光加工工艺研究
基于dSPACE和PLC的控制算法测试系统设计
超音频正弦波电子管放大器灯丝伺服电路的设计
利用正弦定理解决拓展问题
基于STM32的风力摆控制系统的设计
正弦、余弦定理在三角形中的应用
基于DCS的过程实时控制平台的研究
卫星姿控系统半物理仿真中转台控制算法的实现