汽车控制器输入信号采集接口设计
2022-03-01王晓光王子军潘守亮
王晓光,郑 岩,王子军,齐 志,雷 凯,潘守亮
(一汽奔腾轿车有限公司,吉林 长春 130012)
1 概述
汽车上绝大部分的控制器都需要有输入、输出、通信(如CAN/LIN/USB/以太网等)等接口,其中对于输入接口,又可以分为开关信号、传感器信号等,对这些信号的采集,不同的硬件设计师设计的接口电路可能有很大差异,本文介绍几种常用的开关信号接口电路。
2 MCU的数字IO口采集
汽车上大部分开关都是一端搭铁,另一端连接到控制器,对于这种连接到搭铁的开关,控制器内部必须配上拉电阻,上拉电阻负责为开关提供湿电流,以确保开关可以可靠导通。开关采集接口电路如图1所示。
另外,开关再经分压电阻进入MCU数字IO口。由于汽车上正常工作电压并不稳定,在一个较大的范围内 (9~16V),该分压电阻的目的是确保在这个范围内,MCU都能准确识别到高电平和低电平,从而准确识别开关的断开与接通。连接到搭铁的开关见图1a。
为了使整车睡眠之后的静电流消耗尽可能低,对于连接到搭铁的开关的采集接口,通常需要使上拉电源可关断,只有在需要轮询检测该开关状态时才短暂接通。为此通常采用一个MOS开关来为多个上拉电阻提供可关断的上拉电源。
汽车上还有一小部分开关是一端接电源,另一端连接到控制器,比如对B+、ACC、IG等电源信号的采集。对于这种连接到电源的开关,控制器内部必须配下拉电阻,下拉电阻负责为开关提供湿电流,以确保开关可以可靠导通。连接到电源的开关见图1b。
图1 开关采集接口电路
3 输入扩展芯片
对于车身控制系统BCM这样的控制器,需要采集的外部输入信号非常多,通常会达到三四十个甚至更多,此时MCU的管脚资源就显得很紧张,为此采用专门的输入扩展芯片是一个很好的选择。
以TI公司的TIC12400-Q1为例,如图2所示,它是用在12V汽车系统的24路开关检测接口器件,集成了10位ADC来检测模拟开关多种位置,集成的比较器用来检测数字开关,检测阈值可编程,以支持各种开关拓扑。与MCU之间采用SPI通信,大大节省了MCU的管脚资源。
图2 TIC12400-Q1原理框图
器件监控多达24路直接开关输入,其中10路可以配置为监控连接到电源/连接到搭铁的开关,另14路仅能监控连接到搭铁的开关。可为每路输入设定6种独特的湿电流设置(0mA、1mA、2mA、5mA、10mA、15mA),从而支持不同的应用场景。
该器件可产生中断来支持所有开关输入的唤醒操作,因此无需持续使MCU保持活动状态,进而可降低系统功耗。TIC12400-Q1支持2种工作模式:连续模式和轮询模式。连续模式下将连续提供湿电流。轮询模式下将根据可编程计时器来定期接通湿电流以对输入状态进行采样,从而显著降低系统功耗。在轮询模式下具有超低工作电流:典型值为68μA。
TIC12400-Q1还提供集成故障检测,ESD保护和诊断功能。符合汽车应用要求,符合AEC-Q100标准。支持12V汽车系统并提供过压和欠压警告。
如果需要采集的开关数量大于24个,那么还可以采用下面的方式再扩展数量。类似于对电阻网络型开关的采集,每个管脚上可以接多个开关,每个开关串联不同阻值的电阻。一个管脚扩展多个开关连接方法见图3。
图3 一个管脚扩展多个开关连接方法
假设湿电流设置为1mA,如果SW1接通,则TIC12400-Q1采集到的电压是V=1mA×R,如果SW2接通,则TIC12400-Q1采集到的电压是V=1mA×R,由于R与R不同,所以TIC12400-Q1采集到的电压V与V也不同,从而实现对SW1和SW2的区分。
这种方式也存在缺点,在使用的时候需注意。这些开关不能同时接通,否则会因电阻的并联造成识别的混乱。即这种方式仅能用于多个自复位式开关,如果其中有一个是锁止式开关则就不适用了。
4 结束语
本文介绍了两种典型的开关采集接口方式,其中第1种接口简单、成本低、应用普遍,第2种主要用在输入信号较多的控制器上,采用输入扩展芯片可以大大降低MCU的管脚资源消耗。使用时可以根据自己的实际情况进行选择。