APP下载

基于KEA128的锂电池箱低功耗烟雾探测器设计

2022-03-17黄志华

电子测试 2022年4期
关键词:寄存器报文低功耗

黄志华

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

0 引言

在新能源汽车行业,相关法规文件越来越完善。应急管理部《CCCF/XFJJ-01电动客车锂离子动力电池箱火灾防控装置通用技术要求》明确要求车辆停车3日内,火灾防控装置应能正常工作。为了降低烟雾探测器功耗,本设计选用了汽车级主控芯片KEA128,集成了烟雾传感器ADPD188BI和NTC热敏电阻传感器,设计了低功耗休眠模式和唤醒模式,能够在停车时自动进入休眠模式,整车上电切换到唤醒模式。

1 硬件系统设计

1.1 系统总体框图

锂电池箱内烟雾探测器,通过感知烟雾和温度变化判断锂离子电池是否发生热失控,并将报警信息实时上传至整车/BMS。探测器硬件设计包括主控芯片,光电烟雾传感器,温度传感器,IIC电平信号转化模块,电源模块和通讯模块等,系统原理框图如图1所示。

图1 系统框图

1.2 主控芯片

KEA128是飞思卡尔针对汽车市场最新开发的MCU,一款汽车级的芯片。采用ARM Cortex-M0+内核,包含CAN模块,程序flash大小为128KB,运行温度范围是-40~125℃,80引脚LQFP封装,CPU最高频率为48MHz[1]。

(1)晶振电路。KEA128支持内部时钟源和外部时钟源作为MCU的工作时钟。内部时钟源ICS可提供时钟信号范围31.25~39.0625KHz,误差在0.8%以内[2]。外部时钟源具有更高的精度。本设计采用外部8MHz无源晶振,分别连接单片机的 EXTAL,XTAL。

(2)程序调试下载接口。KEA128采用的是ARM Cortex内核,支持SWD接口,比JTAG模式在高速模式下更可靠。数据输入/输出线SWDIO对应KEA128的PTA4引脚,时钟线SWCLK对应PTC4引脚。

(3)电源电路与复位电路。KEA128供电范围在2.7V~5.5V之间,本设计采用24V转5V电源供电,通过RESET引脚接地实现单片机复位。

1.3 CAN通信电路

KEA128内部集成了CAN功能的控制器,外部只需连接CAN收发器就能实现CAN通信。本设计选择TJA1044GTJ作为CAN收发器,支持正常模式和待机模式,通过控制8脚STB高电平进入待机模式,此时功耗为10uA,可通过总线唤醒。

1.4 烟雾传感器电路

本设计选用光电式烟雾传感器ADPD188BI。该模块集成高效率的光电式测量前端、蓝光和红外(IR)发光二极管(LED)以及光电二极管(PD)。这些器件采用特制的封装,防止光线未先经过烟雾探测腔而直接从 LED 照进光电二极管[3]。其基本原理利用烟雾颗粒散射到光电二极管引起的光电效应检测烟雾颗粒物浓度。由于采用了两个LED光源(蓝光和红外),可意味着有两个不同的折射角,可以区分出烟雾颗粒的大小,分辨出烟雾类型,减少误报。

ADPD188BI采用1.8V的工作电压,支持IIC和SPI方式与MCU通信。由于KEA128工作电压为5V,所以在本设计增加了电平信号转化芯片SGM4551实现ADPD188BI与KEA128之间的IIC通信。原理图如图2所示。

图2 ADPD188BI原理图

2 软件设计

2.1 KEA128休眠和唤醒

KEA128支持Run、Wait、Stop模式。Stop模式处于最低功耗模式,少量外设可通过配置开启,支持中断唤醒。本设计选择Stop深度休眠模式,通过CAN总线在接收到外部低功耗指令后,进入深度睡眠模式。配置两种唤醒方式:通过CAN报文唤醒和通过温度唤醒。

(1)CAN报文唤醒

在收到休眠指令时,应配置CAN模块相关寄存器确保单片机休眠时能通过报文唤醒。先设置CAN唤醒方式,设置MSCAN控制寄存器1(MSCAN_CANCTL1)WUPM位为1,即采用集成式低通滤波器来防止 MSCAN 受杂散唤醒影响,仅当CAN总线上出现长度为Twup的显性脉冲时才会唤醒,而不是CAN上出现任何显性电平都被唤醒。再设置MSCAN接收器中断使能寄存器(MSCAN_CANRIER)WUPIE位为1,即唤醒中断使能,设置RXFIE位为1,报文接收成功事件引起接收器中断请求。最后设置MSCAN控制寄存器0(MSCAN_CANCTL0)WUPE位为1,即唤醒使能。

进入休眠之前应设置CAN收发器TJA1044第8脚STB高电平进入待机模式,尽可能节省功耗。MSCAN每次被中断唤醒之后,设置接收器标志寄存器(MSCAN_CANRFLG)WUPIF位为1,即唤醒中断标志清零。被CAN报文唤醒后,程序首先判断报文是否为事先约定的报文,如是则单片机唤醒工作,如否立即再进入休眠。KEA128通过CAN唤醒流程图如图3所示。

图3 CAN唤醒流程图

(2)温度唤醒

NTC热敏电阻通过分压电路接到KEA128的ADC引脚上。收到休眠指令后,设置ADC中断使能。再设置引脚控制1寄存器 (ADC_APCTL1),将I/O口引脚与ADC关联。设置状态和控制寄存器3(ADC_SC3),将ADLPC位置位,ADC进入低功耗模式,ADLSMP置位,长时间采样模式降低整体功耗,选择总线时钟休眠时依然工作。最后设置比较值寄存器(ADC_CV),将NTC测量温度75℃时对应的ADC采样值写入比较寄存器内,在休眠时比较寄存器处于监视状态,将ADC转化结果与寄存器内容比较,比较条件成立,则会产生一个ADC中断,由此唤醒KEA128。

温度唤醒流程图如图4所示。

图4 温度唤醒流程图

2.2 其它设置

在KEA128进入睡眠模式之前,通过I/O口设置LDO控制ADPD188BI的1.8V电源,3.3V和5V电源断开,关闭SGM4551的5V供电电源,以降低功耗。设置KEA128的IIC控制寄存器,关闭IIC模块。此外,还可以通过降低时钟频率等方式降低探测器休眠功耗[4]。

3 试验验证

将探测器通过USB转CAN卡连接到上位机上,使用高精度安捷伦数字源表U3606A对探测器供电,图5(a)和图5(b)分别显示了探测器正常模式和低功耗模式在12V电源情况下的电流,正常模式16.8mA,低功耗时1.8mA。在休眠状态下通过上位机发送唤醒指令,或者通过外部加热,在探测器温度传感器采集值达到75℃时探测器自动唤醒。

图5 实物图

4 结论

通过对KEA128时钟,寄存器,功能模块等的分析,选择了最低功耗模式-深度睡眠模式,进入睡眠模式前设置了相关寄存器,同时降低时钟频率,关闭了非必要的电源。低功耗模式相比正常工作模式显著降低了功耗,在异常情形下探测器能自动唤醒,保证了低功耗模式下依然能监测电池箱内的火灾。

猜你喜欢

寄存器报文低功耗
基于J1939 协议多包报文的时序研究及应用
以太网QoS技术研究及实践
基于Python的汽车CAN总线报文格式转换系统的设计与实现
基于报文类型的限速值动态调整
核芯互联发布高性能ADC模数转换器
莱迪思发布全新低功耗FPGA技术平台
飞思卡尔单片机脉宽调制模块用法研究
移位寄存器及算术运算应用
数字电路环境下汽车控制电路信号设计
物联网产业离不开低功耗蓝牙通信技术