APP下载

基于μC/OS-II的锂离子动力电池火灾报警控制器设计

2022-09-23黄志华

电子制作 2022年16期
关键词:灭火器控制器报警

黄志华

(安徽芯核防务装备技术股份有限公司,安徽合肥,230000)

0 引言

新能源汽车火灾事故频发,其安全性受到了广泛质疑。热失控是电池安全研究中的关键科学问题,已经成为锂离子电池在电动汽车大规模应用的主要障碍[1]。相关法规文件提出了对电池安全监控的要求,如国家质量监督检验检疫总局和国家标准化管理委员会发布的GB7258-2017《机动车运行安全技术条件》规定:“车长大于等于6米的纯电动客车、插电式混合动力客车,应能监测动力电池工作状态并在发现异常情形时报警”[2]。应急管理部《CCCF/XFJJ-01电动客车锂离子动力电池箱火灾防控装置通用技术要求》明确要求车辆停车3日内,火灾防控装置应能正常工作。本系统设计的火灾报警控制器由备用电池、电源管理模块、控制模块、声光报警模块、灭火启动模块等组成。软件采用μC/OS-II系统,按照事件的紧急情况对事件进行优先级划分,实现了火灾声光报警、数据存储、CAN通信、休眠、唤醒、手动/自动启动等功能。

1 硬件系统设计

火灾报警控制器包括多个硬件模块:主控芯片,电源管理模块,声光报警控制模块,CAN通信模块,存储模块,液位检测模块,灭火启动模块等。主控芯片负责所有数据处理,控制策略执行。电源模块UPS负责主备电切换,备用电源充放电管理,宽电压输入转化等。声光报警模块负责报警和故障信号的声光提示,CAN模块负责控制器和整车的协议交互,存储模块负责所有传感器信号记录,液位检测模块负责灭火器泄露检测,灭火启动模块负责输出电流信号,驱动灭火器开启。系统硬件原理框图如图1所示。

图1 系统硬件框图

(1)主控芯片。主控芯片采用STM32F105RBT6,基于ARM Cortex-M内核,属于STM32互联型产品,具有高性能、低成本、低功耗特点。具备两路CAN通信,支持CAN2.0B协议,支持SPI和SDIO两种读写SD卡模式。

(2)电源管理模块。电源管理模块在整车上电时使用主电对系统供电,整车断电后,使用备用电池供电;在备用电池电压不足时,通过报警开关发出绿灯闪烁信号,且当整车供电时自动对备用电池充电。主控芯片I/O口检测到整车电压信号ACC低电平时控制器进入低功耗休眠模式,检测到高电平时上升沿中断自动唤醒系统。ACC检测电路如图2所示。

图2 ACC检测电路

(3)声光报警控制模块。有3路高电平输出和1路输入检测。发生数据存储、通信、传感器等硬件故障时,可通过I/O控制报警开关黄色指示灯闪烁;备用电池欠压时,可控制绿色指示灯闪烁;发生火情时,根据探测器发送的报警等级高低可分别控制红色指示灯和蜂鸣器的报警频率。报警状态下按下报警开关,主控芯片将通过高功率MOS管驱动灭火器启动,灭火剂通过管路进入电池箱实现灭火;休眠状态下按下报警开关,I/O上升沿中断可将系统唤醒。

(4)CAN通信模块。两路CAN通信,其中CAN2连接整车,采用高速CAN隔离收发器CTM1042KATCAN模块,2500V电气隔离;为了抑制共模干扰信号,增加了共模信号抑制电路,共模滤波器采用TDK的ACT45B-510。为了防止静电干扰,在CAN_H和CAN_L上分别设置了二极管SMBJ40CA,如图3所示。CAN模块支持CAN2.0A/B,防止高静电、高浪涌,具有更高的可靠性。CAN1属于系统内部使用CAN,CAN收发器采用恩智浦高速CAN收发器TJA1044T芯片,可通过其第8脚S脚设置低功耗模式和总线唤醒功能。通过CAN总线连接各个电池箱火灾探测器,接收预警信息,故障信息。

图3 CAN2通信电路

(5)灭火启动模块。为了防止灭火器在复杂车载的电磁环境下误启动,灭火启动采用双MOS驱动电路设计。由P型MOS管DMP6023LSS和N型MOS管DMT6016LSS和外围电路组成,如图4所示。当需要启动灭火器时,需要主控芯片两路I/O口分别对FC+和FC-输出高电平信号,此时三极管导通,P型MOS管输出24V高电平,N型MOS管输出GND信号,灭火器点火头处于两路MOS管之间被输出电流引爆,进而启动灭火器。双MOS启动可大大降低单路驱动造成的灭火器误启动概率。

图4 灭火启动模块

(6)其他模块。包括液位检测模块,液位传感器安装在灭火器瓶内,当灭火剂发生泄露时,控制器发出故障报警信号。存储模块采用16G的SD卡,挂载Fat32文件系统,循环3个月覆盖存储,每1S记录一次传感器数据和故障状态,存储的时间信息由CAN2通过整车校时获得。

2 软件系统设计

μC/OS-II 是一款开源的实时性嵌入式操作系统,移植方便,可剪裁、可配置、抢占式,最多可支持64 个任务,任务间可通过信号量、消息邮箱、消息队列等中间环节实现通信。μC/OS-II通过了FAA(Federal AviationAdministration)认证,在实时性要求很高的嵌入式工业控制领域能够放心使用[3]。

2.1 μC/OS-II的移植

μC/OS-II移植到主控芯片STM32F105RBT6上,首先要修改系统和硬件相关的三个文件。

(1)OS_CPU.H。需要改写的是关于数据类型、堆栈增长方向、中断屏蔽方式、以 及 任 务 调 度 函 数 的 定 义。

①STM32设置数据类型如图5所示。

图5 数据类型设置

②堆栈增长方向设置为高地址向低地址增长:

③中断屏蔽方式,使用第3种方式保护临界段,进入临界段之前使用OS_ENTER_CRITICAL()调用OS_CPU_SR_Save()屏蔽中断,临界代码结束后使用 OS_EXIT_CRITICAL()调用OS_CPU_SR_Restore(cpu_sr)开启中断功能[4]:

④任务切换函数重定义,在任务切换时调用:

(2)OS_CPU.C。STM32 单片机需要重新定义任务堆栈初始化函数 OSTaskStkInit() 。这个函数在任务创建时被调用,负责初始化任务的堆栈结构并返回新堆栈的指针[5]。

(3)OS_CPU_A.ASM。主要涉及高优先级任务就绪函数 OSStartHighRdy() 、任务切换函数 OSCtxSw() 等。OSStartHighRdy( )负责启动优先级高的任务,使其从就绪态进入运行态。 OSCtxSw()负责用户任务上下文切换。

2.2 任务的划分

使用μC/OS-II设计软件时,需要对不同的任务按照紧急程度划分优先级。在锂离子动力电池灭火控制系统中,首先要确保灭火的时效性,在电池箱内发生火灾时,按下报警开关启动或自动启动应设置成最高优先级1。火灾报警实时性的要求需要将CAN1通信设置成优先级2,即在探测器探测到火情时控制器能快速响应。控制器周期为1s上传预警信息至整车报文,或接收整车校时报文的CAN2通信任务设置成3。灭火剂泄露、传感器故障或备用电池欠压故障报警设置成4。传感器信息、时间的数据存储设置成5。ACC检测到整车断电时进入低功耗休眠状态,设置成6,需要注意的是休眠后通过外部中断唤醒,需要将单片机控制CAN1通信的I/O脚,设置成上升沿中断模式,探测器监测到异常时,通过CAN报文唤醒控制器。报警开关按键输入检测和ACC电平检测的I/O脚也要设置成上升沿中断模式,以便开关按下或整车上电能唤醒系统。进入休眠之前,需调用OSSchedLock()禁止任务调度函数,在休眠期间锁定任务不被其他任务抢占,被外部中断唤醒后调用OSSchedUnlock()函数,允许任务调度。STM32休眠模式选择STOP模式,任一外部中断能唤醒,休眠前尽可能关闭一些功能模块的电源,以节省功耗。任务划分如表1所示。

表1 任务划分

3 试验验证

试验验证有两个目的:(1)验证控制器在一定的条件下能否自动进入休眠模式;(2)控制器休眠72小时,遇到异常情形能否自动唤醒。

使用安捷伦高精度数字源表U3606A接入控制器备用电源供电端,对控制器输出12V直流电压,测得控制器正常工作电流30mA。通过软件设置,控制器在工作10min后没有外部异常情况下进入休眠模式,通过CAN盒监测控制器停止发送报文,测得控制器休眠状态下的电流为2.2mA,如图6所示。

将锂离子动力电池和探测器放入电池箱内,控制器灭火器放在箱外,探测器通过CAN线与控制器连接起来,如图7所示,再盖好箱盖。系统使用备用电池供电,在系统进入低功耗模式持续72小时后,再使用恒流充电机对持续电池过充并触发电池发生热失控,探测器在监测到有害气体浓度过高的时自动唤醒,通过CAN报文将控制器唤醒,进而整个系统从休眠模式唤醒,并发出声光报警信号,在按下报警开关后,灭火剂喷射到电池箱内,实现了火灾抑制。

因此,控制器在没有主电供电,只用备用电源供电的情况下工作10min自动进入休眠模式;休眠72小时后,电池发生热失控能唤醒整个系统。

图6 控制器休眠测试

图7 电池热失控试验

4 结论

设计的火灾报警控制器,实现了火灾声光报警,手动/自动启动灭火器,备用电池充放电管理,硬件故障报警,数据存储,灭火剂泄露检测等功能。软件采用μC/OS-II系统,通过任务的划分和调度,系统在休眠状态下能监测到电池热失控并自动唤醒,通过手动方式触发灭火器。试验验证表明,控制器在只有备用电源供电的情况下能自动进入休眠模式,遇到异常情形可通过探测器唤醒。既保证了节约了电池电量,又保证能正常监测锂离子动力电池箱的工作状态,满足相关法规规定的停车3日内灭火系统正常工作要求。

猜你喜欢

灭火器控制器报警
三转子式比例控制器设计与内泄漏分析
南京溧水电子3款控制器产品
基于NFV的分布式SDN控制器节能机制
小心,墙纸在报警
鞋子摆放透露的信息
死于密室的租住者
基于Wonderware平台的分布式报警系统的设计与实现
小小消防员第三集
智能液位控制器在排水系统中的应用