全国热线:021-6363 2619-104
新闻详情

基于单片机的自由活塞制冷机测控系统设计

发表时间:2020-11-16 13:43作者:上海仪表厂

为了实现对自由活塞斯特林制冷机相关参数的测控,开发了一套基于HCS12单片机的测控系统,该测控系统采用MC9S12DG256单片机,选取了合适的传感器测量压力、温度、电压和电流等参数;采用PC机作为上位机,使用组态王软件设计了人机对话窗口;为了保证制冷机安全可靠运行,采用反电动势控制策略实现制冷机直线电机行程控制,采用快速制冷与温度PID控制相结合的控制策略实现制冷机冷端温度的控制;其经验可以用于其它类似的测控系统的研制工作。

自由活塞斯特林制冷机采用直线电机、纯气动膨胀等先进技术,具有结构紧凑、低振动噪音、寿命长、制冷量方便可调等优点。近年来,传统制冷系统由于臭氧层破坏、温室效应等原因而受到越来越严格的限制,这为自由活塞斯特林制冷机的发展提供了难得的历史机遇。与传统的蒸汽压缩节流制冷有极大不同,自由活塞斯特林制冷机采用氦气膨胀制冷,无节流系统和蒸发器,具有高效率、“绿色”制冷剂、制冷温区广等特点,在环保和节能方面具有重要优势[1]。
由于自由活塞斯特林与直线电机紧密融合为一体,因此自由活塞式斯特林制冷机性能调节与控制技术是制冷机稳定运行的关键技术之一,测控系统担负着制冷机运行状态监测和对其进行控制保护的重要任务。测控系统性能的优劣对制冷功能任务的完成与否以及设备运行性能表现影响很大,因此,测控系统的研制开发工作在制冷机项目研制过程中显得尤为重要。为了实现对自由活塞斯特林制冷机相关参数的测量与控制,设计了一套基于单片机的测控系统,采用HCS12单片机作为核心微处理器,以完成制冷机状态检测和控制任务,测量相关数据以研究自由活塞斯特林制冷机的特性。
1测控系统设计及硬件组成
根据自由活塞斯特林制冷机要求,测控系统总体设计如图1所示。本测控系统基于MC9S12DG256[2]单片机,属于HCS12系列。大多数单片机均采用JTAG仿真调试方式,MC9S12DG256单片机采用BDM单线背景调试模式为开发者提供了便利,其能在单片机运行时对单片机进行动态调试,该单片机一大特色就是单线背景调试模式和时钟监视部分用于开发支持和运行安全。大多数引脚具有复用功能,即通用I/O功能和特殊接口功能,这些具有复用功能的端口和控制逻辑全部集成在单片机的内部,因此具有体积小、功耗低、可靠性高和应用简单的特点。该单片机内部程序存储器Flash可以用作保存软件代码和测控原始数据其容量达256KB;12KB的RAM存储器可以用于堆栈设置、保存中间零时变量以及动态运行数据信息,甚至在软件调试时存放程序;EEPROM存储器容量为4KB,可以用于设置运行参数、保存组态等需要长期保存信息数据;特有的BDM调试方式在没有仿真器条件下就可以实现硬件断点、条件断点和在线调试等全部功能;内置的看门狗可以保证软件跑飞后快速恢复,当系统的始终运行异常时,可以用过时钟监视系统功能进行查看。此外,该单片机内部集成了A/D、PWM、SRAM、EEPROM、CAN、Watch-dog等,大幅度简化外围电路,支持在线仿真、调试和编程,内部总线速率高达25MHz,有工业控制专用的通信模块,用作数据运算处理和通信可以取得较好的效果。
测控系统硬件组成有:以MC9S12DG256单片机为核心的控制器、压力测量变送器、温度测量传感器Pt100、角度测量变送器、直线电机电压电流测量变送器、散热风扇、声光报警和上位机PC等。
测控系统工作原理:图1中上位机PC主要用于显示自由活塞斯特林制冷机的参数数据状态,是人机对话窗口,通过点击上位机PC的操作按钮,向单片机控制器下发例如“开机”、“停机”和“复位”等控制操作,在上位机PC也可设置制冷机的运行参数。单片机控制器用作下位机,主要用于采集和处理各个传感器信号,当传感器信号出现异常之时能够提供报警信息;为了保证制冷机安全可靠运行,采用反电动势控制策略实现制冷机直线电机行程控制,采用快速制冷与温度PID控制相结合的控制策略实现制冷机冷端温度的控制;调节和控制直线电机的正常运转,当直线电机出现异常时能够提供报警信息或者直接发送停机指令;控制风扇进行散热或驱动报警器进行声光报警;单片机控制器将制冷机的各个传感器数据信息或报警信息通过串口通讯传送给上位机PC,并根据上位机PC的控制指令执行相应的控制指令。
1.1压力测量
压力测量用于测量自由活塞斯特林内部的工质压力,采用工业控制上常用的电流型两线制压力变送器,型号为:CS20FUF-5MPa,该传感器工作电压为24VDC,测量精度为全量程±0.2%,输出信号为4~20mA。该电流信号通过249欧姆精密电阻对地产生非常高4.98V的电压信号,再经过信号调理后进入MC9S12DG256单片机的内部AD模块进行模数转换。
1.2温度测量
需要对制冷机的冷端、热端温度以及直线电机温度的实时采集,这里采用热电阻Pt100完成。为了保证测量精度,Pt100测温使用三线制接法,如图2所示,Pt100信号采集采用电桥测量方式完成,Pt100和精密电阻R1、R2、R组成测量电桥电路,其中R1=R2且R3为可调电阻,连接Pt100的三根导线a、b和c等长,则其导线电阻也基本一致,可以互为抵消导线电阻引起的测量误差,进而提高了Pt100信号测量准确度。Pt100在温度变化时其电阻值变化是线性的,因此图2所示的测量电路的输出V=V+-V-也是线性的,MC9S12DG256单片机的内部AD采集这个电压就能获得当前制冷机相关测点的温度。
1.3倾角测量
自由活塞斯特林制冷机整体结构较为精密,运行中如果发生移位而形成一定倾角则可能给制冷机带来损坏,因此设置了倾角传感器,当制冷机达到一定的倾角数值,则报警并停止运行。倾角传感器型号为:HCA526T,信号输出为4~20mA,同样采用249欧姆精密电阻对地产生非常高4.98V的电压信号后再经过调理后送给MC9S12DG256单片机处理。
1.4直线电机电压电流测量
直线电机驱动斯特林活塞工作,形成稳定的工作循环,达到制冷目的。为了控制斯特林活塞的行程和计算系统的效率需要测量直线电机的电压和电流,使用的变送器型号分别为CHZ-50VT/A1和CHZ-50G/A1,为了提高系统的抗干扰性能,其信号输出均采用4~20mA。
1.5执行器控制
自由活塞斯特林制冷机工作过程中,需要用散热风扇及时把热端产生的热量带走;当有异常产生时需要进行声光报警,在本系统中,散热风扇和报警器属于执行器,其控制相对简单,结合散热风扇和报警器的自身特性和成本考虑,MC9S12DG256单片机输出指令经过三极管放大后对二者进行驱动控制,可靠性较高且降低了系统成本。
1.6直线电机控制
自由活塞斯特林制冷机依靠直线电机的周期性往复运动驱动斯特林机的自由活塞压缩工质,从而实现热量从冷端向热端的传输,达到制冷的目的。因直线电机的周期性往复运动则驱动电源必须以周期性方波形式。本系统采用基于IR2181S的MOSFET全桥结构[3],IR2181S芯片电路内部集成了CMOS控制电路和由MOS管组成的驱动桥,它能为负载提供2.3A的连续电流。该电路能在600V的供电电源范围内安全工作,用户只需提供与TTL电平兼容的PWM信号就可进行4象限模式的幅值和方向同时控制,而且与数字控制器的接口非常简单。直线电机往复运动控制原理如图3所示,4个MOS管(M1~M4)和一个直线电机(M)组成的H全桥。在图3(a)中,当M1和M4导通时,电流从电源正极经M1从左至右穿过直线电机,然后再经M4回到电源负极,电机沿顺时针转动。在图3(b)中,当M3和M2导通时,电流从右至左流过直线电机,直线电机沿逆时针转动。因此,通过调整MOS管的导通与截止时序可以控制直线电机的转向,通过调整流经电机电流的大小可以控制直线电机的转速。本测控系统通过MC9S12DG256单片机的PWM通道输出方波激励,驱动IR2181S工作,周期性地开启与关闭M1-M4、M2-M4可以达到直线发电机驱动功率可控且可靠的要求。
1.7上位机PC
上位机PC是人机对话的窗口,采用国产组态王软件设计完成。由参数数据、控制操作、历史曲线和报警信息等4个部分组成,如在参数数据窗口显示制冷机的温度、功率,电流和压力;报警信息记录主要记录制冷机警报类型,方便分析故障;历史曲线趋势可以查看制冷机各个参数的运行趋势,也可用作寿命统计分析。
2测控策略
自由活塞斯特林制冷机测控策略核心之一是直线电机的行程控制,要保证行程非常大化而避免撞缸并使斯特林机达到非常佳效率;另一个核心策略是温度控制,是自由活塞斯特林制冷机的核心需求,其控制精度直接体现制冷机的质量。
2.1直线电机行程控制策略
自由活塞斯特林制冷机结构非常紧凑,导致无法直接测量直线电机的行程,根据有关资料[4-5],直线电机的反电动势(BEMF)与直线电机的有效行程存在确定的近似线性关系。反电动势的本质是通电线圈在磁场中的运动,即:
基于闭环反馈电机驱动电压调节方法
其中:I为线圈中的电流,R为直线电机线圈的有效电阻。
由式(1)、(2)分析可知,通过实时测量直线电机输入端电流和电压,则可以推导出在给定负载条件下的反电动势,进而得到直线电机的非常大行程。直线电机驱动电压决定了制冷机的效率同时也决定了制冷机的安全,增加直线电机驱动电压以使电机驱动斯特林发动机活塞尽可能地压缩工质做功,但是过大的驱动电压会使活塞行程过大而发生撞缸事故,因此,需要避免撞缸事故并使斯特林机达到非常佳效率。本系统采用基于直线电机非常大行程的闭环反馈式驱动电压调节方法:实时检测直线电机的非常大行程,对比希望达到的非常大行程Smax,确定MC9S12DG256单片机PWM波的占空比。
 基于 PID 的温度控制策略原理图
2.2温度控制策略
温度控制是自由活塞斯特林制冷机的关键控制逻辑,其温度控制原理如图5所示。总体上来说,温度控制需要实现两大基本功能:
1)快速制冷。即制冷机冷端温度以非常快速度达到用户设定的需求温度(T_d)。该过程一般体现在启动阶段。在该阶段,需求温度(T_d)与实际温度(T_c)偏差较大,当以直线电机的额定非常大功率运行,直至abs(T_d-T_c)<T_0;
2)温度保持阶段。该阶段要求冷端温度(T_c)在T_d小范围内波动(<0.5℃)。在本系统中采用PID控温法。以T_d与T_c之间的偏差&T及其变化趋势来调节PWM波的占空比(DutyCycle),从而控制直线电机的输出功率,进而控制系统的制冷量。
3软件设计
自由活塞斯特林制冷机测控系统需要处理的任务较多,要求实时响应的速度较快,因此,传统的前后台处理方式不能满足测控系统的实时性和可靠性要求。所以本测控系统引入了嵌入式实时操作系统。μCOS-II是专门为嵌入式应用设计的且内核源代码公开的多任务嵌入式操作系统,具有占用存储空间小、代码执行效率高、可移植性好、可扩展性强和优良的实时性能等特点。所以本系统选择uC/OS-Ⅱ作为系统任务调度内核[5]。因此,软件设计主要包括嵌入式操作系统软件设计、基于uC/OS-Ⅱ的MC9S12DG256单片机应用软件设计以及上位机PC软件设计。
3.1嵌入式操作系统软件设计
在特定MCU上使用μC/OS-Ⅱ进行软件开发前,需要进行操作系统移植,使他能在该MCU上远行。所以首先必须进行μC/OS-Ⅱ在MCU上的移植。MC9S12DG256的软件开发基于CodeWarrior4.7集成C编译平台,该编译器支持汇编语言程序,允许用户在C源代码中嵌入汇编语言。
将μCOS-II嵌入式操作系统移植到MC9S12DG25单片机上就是使μC/OS-Ⅱ实时内核能在CodeWarrior4.7集成C编译平台上运行。移植工作主要主要分为三大步骤:μC/OS-Ⅱ中与文处理器相关代码的修改、与编译器相关代码的修改和应用软件的添加[6];移植工作主要包括以下5个方面内容:
1)用Typedef声明与编译器相关的数据类型(在OS-CPU.H文件中),由于不同的微处理器有不同的字长,在μC/OS-Ⅱ代码中不能使用CodeWarrior4.7集成C编译平台C语言的short、int、long等数据类型,而采用INT8U、INT16U、INT32U等直观又可移植的数据类型来代换相应数据类型。
2)采用#define定义一个常量OS-STK-GROWTH的值(OS-CPU.H),决定堆栈的填充排列方向,如果是1位则表示堆栈由上向下填充;如果是0位则表示堆栈由下向上填充;
3)采用#define定义说明3个宏函数(OS-CPU.H)。
4)用C语言编写10个与MC9S12DG25单片机相关的函数(OS-CPU-C.C)。
5)定义说明4个CodeWarrior4.7集成C编译平台汇编语言函数(OS-CPU-A.S)。
3.2单片机应用软件设计
自由活塞制冷机的主要任务是根据设置的冷端温度,MC9S12DG256单片机输出一定的PWM信号,驱动直线电机周期运动,带动斯特林活塞运动,使冷端温度快速达到设定值。本测控系统采用的控制流程见图6,系统上电后,立即检测系统的各个状态参数,MC9S12DG256单片机读入设定的运行参数,依据这些参数,判断系统是否处于可运行状态,若系统通过自检,则立即进入启动过程,此时,计算设定温度与冷端当前温度的差值,如果其差值大于设定的偏差值,则单片机输出两对相位相差180°的PWM波,每对PWM波的幅值相同、极性相反,驱动直线电机运行,为了避免初始启动电流过大而烧坏直线电机,系统采用分步升压的方法来起动直线电机,即驱动电压以一定的速率上升,上升速率根据设定温度温度与冷端当前温度的差值由单片机决定,期间,监测直线电机的行程,如果直线电机的行程达到设定值,单片机维持当前直线电机运行状态,直至设定温度与冷端当前温度的偏差小于0.5℃。表明制冷机已经完成目标工作,此时,单片机以设定温度与冷端当前温度的偏差变化趋势确定PWM波的占空比来调节控制直线电机的工作状态,进而控制系统的制冷量,维持当前的温度。
3.3上位机软件设计
上位机采用工控PC机,使用组态王软件进行设计。上位机主要用于实时收集自由活塞斯特林制冷机的各运行参数,为后续对整个系统的优化提供分析基础及目标对象。因此制冷机运行完全好立于上位机程序,仅用作数据采集、记录、分析与汇总等功能。
设计完成的上位机监控界面如图7所示,上位机PC显示自由活塞制冷机的工质压力和倾斜角度,直线电机输入端的电压、电流、功率以及直线电机内部温度,冷端和热端的温度信息;点击控制操作可以手动调试直线电机、散热风扇以及蜂鸣器;在参数设置则可以设置制冷机的报警项,如温度、工质压力、电压和电流等上下限;历史曲线运行记录保存了自由活塞制冷机的参数运行信息。运行记录的文件按年月日的格式生成,可以调查查看;报警信息部分主要显示系统警报及错误信息,如超温、超压等,故障记录主要有:故障代号、故障发生时间以及故障清除时间等;温度参数设置可以设定制冷机目标运行温度,点击“写入EEPROOM”,则把设定的温度数值写入MC9S12DG256单片机存储空间且掉电仍然能保存,控制面板中“开机”“停机”钮实现对制冷机的简单开关机控制,“复位”按钮用于清除当前发生的故障报警。
4实验结果与分析
研制的基于MC9S12DG256单片机的制冷机测控系统在某型自由活塞斯特林制冷机上获得了应用,在上位机PC上设置制冷机的目标冷端温度,MC9S12DG256单片机驱动直线电机做周期运动,进而带动斯特林活塞做功,完成了一系列制冷机的性能是试验,获得了大量应用数据,图8是制冷机在不同环境温度/制冷温度下的制冷量与制冷系数(COP)曲线图,证明本测控系统达到了预期目标。
5结束语
为实现对自由活塞斯特林制冷机的测控,设计了一款基于MC9S12DG256单片机的测控系统。采用组态王软件设计了人机对话窗口,编写了单片机的嵌入式μC/OS-Ⅱ操作系统移植软件,设计了直线电机行程和制冷机的温度控制策略,讲述了制冷机的控制流程。运行结果表明,该测控系统操作简单,界面人机对话方便,能够实时显示制冷机运行参数数据,能够自动记录压力、温度、电流和电压等参数,并能够通过反电动势实现制冷机直线电机行程控制,采用快速制冷与温度PID控制相结合的控制策略实现制冷机冷端温度的控制。该测控系统满足了自由活塞斯特林制冷机高性价比要求,其经验可以用于其它类似的测控系统的研制工作。



分享到:
在线客服
 
 
 联系方式
销售热线:021-63632619
Email:shyb1004@163.com