吉武俊,高 云
(1.武汉理工大学,武汉 430070;2.河南职业技术学院,郑州 450046)
基于CAN总线的集总式BCM客车车身控制模块是一个基于CAN2.0B通信的车身低速电器(电动门窗控制、空调控制、车灯控制、雨刮器控制等)控制模块,一方面根据数字输入或模拟输入信号控制功率输出,并通过总线将传感器数据报告电源控制单元,同时作为J1939网络的一个节点,可以和发动机ECU,变速箱ECU等实现CAN通信;另一方面检测输出故障,存储故障码,报告故障状态。通过BCM车身控制模块,简化了线束,可增强整车电器控制的简洁性,同时实现故障诊断的简便性,减少了故障率,提高整车性能。
集总式BCM对车身用电器供电的控制策略为:
用电器的供电采用PWM(脉冲宽度调制)技术,即将用电器的供电电压进行A/D转换根据转换结果,确定占空比,以使用电器的工作电压等于其额定工作电压,避免因过压造成的用电器寿命减少,避免过电压供电造成的能源浪费。
图1 集总式BCM系统电路原理图
对用电器进行软启动和软关断的控制,假设启动与关断的过程时间为500ms,即在启动过程中,占空比从0线性逐渐增加,最后达到由供电电压经A/D转换后确定的占空比数值,使供电电压逐渐增加到额定工作电压;关断过程中,占空比工作额定电源逐渐呈线性减小到0;从而避免用电器设备启动和关断过程中的感性负载产生的瞬间高反向电压和瞬态浪涌电流对控制单元的损坏,同时也避免了共电源阻抗引入的干扰,改善了控制单元的性能。
集总式BCM的电路实现主要包括:输入信号调理电路、基于微控制器(MCU)的数据采集和控制电路、基于FPGA的逻辑运算电路、功率输出电路和通信接口电路。以下分别详细介绍。
根据集总式BCM的功能需求,需要采集多种开关量信号和模拟量信号,经过逻辑运算,决定功率输出状态,并将此状态通过CAN总线传送给CAN总线仪表,从而显示给司机,同时要求实现功率输出电路的智能故障诊断。图1显示了集总式BCM的系统电路原理图,其中A/D电路还包括对传感器信号的采集。
如图1所示,FPGA主要实现逻辑和时序控制(PWM输出和转向灯时序),MCU完成模拟信号(模拟量输入和诊断反馈量)的采集和CAN通信功能。功率输出采用智能高边功率开关,带有过流、过压保护功能,且具有输出状态诊断功能。MCU与FPGA间通过数据和控制总线进行通信,用于车速和PWM脉宽数据、开关量状态等的信息交互。
整个系统的工作流程如下:
使用微控制器MCU的A/D接口功能,采用等比例电阻分压法,采样并将用电器供电电压进行A/D转换,采样电压范围在0-5.0V,并经过限幅电路使得采样电压不超过5V,根据A/D转换结果确定占空比,将占空比数据转换为8位脉冲宽度数据,通过MCU的8位数据线和控制线写入FPGA芯片中的脉冲宽度数据寄存器;
MCU集成CAN控制器,用于发送故障诊断状态报文和其他通讯内容;
在FPGA芯片中,实现多路PWM信号的时序逻辑,PWM信号输出至各路用电器的电源芯片的控制端,即高边智能功率开关;
HS-IPSW提供驱动电流作为用电器的供电电源,其电源输入为蓄电池正极,其控制端接收来自FPGA芯片的PWM控制信号,其输出根据输入的PWM控制信号,工作在开关输出状态,电压波形为PWM波形,使其输出电压等于用电器的额定工作电压。
HS-IPSW(高边智能功率开关),具有过电流及短路保护、过热保护,并带有短路和断路诊断输出ST(诊断电压反馈型)或IS(诊断电流反馈型),诊断输出为电压或电流,当为电流时,转换为电压后,高电平为4.0-7V,采用限幅电路使高电平不超过5V,低电平为0-0.5V,该信号在反馈至MCU;为电压时,直接反馈到MCU,MCU产生相应的控制信号给FPGA芯片的PWM信号产生电路。当发生过流、短路、过热或断路故障发生时,停止PWM信号输出,并通过CAN总线发送故障状态报文。
这种车身电器控制策略,可以延长用电器使用寿命,避免用电器开关过程中的大电流冲击和瞬态过压现象,改善EMI/EMC(电磁兼容性)性能,同时也利于节能。
图2 信号调理电路
基于MCU的数据采集与控制电路,主要完成24V供电电压的检测、传感器电压(电阻)信号检测、功率电路输出状态检测、CAN报文数据的收发及与FPGA电路的信息交互。图1显示了以MCU为中心的模拟信号采集和控制电路原理图。74HC4851是一个模拟信号多路复用器。本设计中,使用了4片74HC4851来完成对32路模拟信号的采集。使用富士通的一款16位单片机MB90F342作为微控制器,该芯片集成了2路CAN控制器、24路A/D转换器,其中2路CAN控制器通过软件配置可实现RS232串口功能,24路A/D转换器通过软件配置可实现普通I/O口功能。本设计中,使用了其中1路CAN控制器和4路A/D转换器。使用1片带2KB的EEPROM的硬件看门狗集成电路帮助MCU程序复位,“喂狗”时间为600ms,该芯片通过SPI总线与MCU通信。图1中,MCU的数据总线、片选和Latch信号用于向FPGA芯片中的脉冲宽度数据寄存器写入数据。使用MCU集成的CAN总线控制器完成将集总式BCM管理开关量状态及处理后的传感器数据发送给仪表显示单元。
集总式BCM的输入信号类型包括:开关量(低输入或高输入有效)、模拟量(频率量、电压量)。信号调理电路根据输入信号的类型采用不同的调理电路,使得输入到MCU和FPGA的信号电平满足各自要求,并起到整形滤波的作用。图2显示了低输入开关量的信号调理电路、高输入开关量的信号调理电路、频率量信号调理电路、模拟电压(电阻)输入信号调理电路。
如图2开关量信号调理电路所示,分别使用了TVS管和专用电压钳位集成电路来消除输入信号上的过电压和浪涌电流。此外,高输入开关量的信号调理电路实际是硬件可配置的通用开关量输入信号调理电路,这样的输入有12个。通常情况下,高输入信号电平在24-30V之间,经调理电路后,信号电平在2-3.3V之间满足了所使用汽车级FPGA芯片的输入电平范围要求。
从图2频率量信号调理电路中可知,采用低漂集成运算放大器LM2903构成的迟滞比较器来完成对输入频率信号的滤波与整形,其中,Fin1为频率信号输入,Fout为整形后的频率信号输出,Vref为参考电压,在本设计中,取Vref=2V。由运算放大电路的虚短和虚断可知,该迟滞比较器电路的双阈值门限分别为:
其中 RS= R1||R2。在式1和2中, VH,VL分别为迟滞比较器的高边阈值和低边阈值,VOL为输出电压的低电平。由图2中的频率量信号调理电路参数和式1、式2可知, VH= 3 .5V,VL= 1 .0V,该迟滞比较器的输出为一方波信号,高电平为+5V,低电平为0V,起到很好的滤波和整形作用。
在图2中的模拟电压量信号调理电路部分,模拟电压经电阻分压网络后,输入电压跟随器,再输入到MCU的A/D转换器输入端,测量电压范围为0~32V。采用TVS管MMSZ5232BT1去除输入信号中的过压和浪涌电流,避免对后级电路的损害。将图2中R121以250欧的电阻替换,即可实现对电阻型传感器的信号测量,使电阻型信号转换成电压信号,电阻型信号测量范围为0~500欧,因此,该电路还是一个硬件可配置的电阻或电压信号调理电路。
基于FPGA的逻辑运算电路完成开关量信号的组合逻辑运算、计时逻辑和PWM(脉宽调制输出)逻辑。以电喇叭的控制为例,图3显示了一个典型的组合逻辑电路。
图3 FPGA中典型的组合逻辑电路
图3 中,LSIN17_Horn为低电平有效的输入开关量,MAIN_ACC表示总电源开关与ON档开关同时有效。此外,该电路中还专门设计了开关去抖电路,如图3中的SWDetector,去抖时间设置为2.5秒。使用VHDL编写了此去抖逻辑,代码如下:
Library IEEE ;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_unsigned.all;
Entity SWDetector IS
PORT
(
clk: IN std_logic;
SWin: IN std_logic;
SWout : out std_logic
);
END SWDetector;
architecture arc of SWDetector is
signal Cout : std_logic;
signal clken: std_logic;
signal clr : std_logic;
begin
clr<=not SWin;
clken<= clk and SWin;
process(clken,clr,Cout)
variable cnt: integer range 0 to 255;
begin
if (clken'EVENT AND clken = '1') THEN
if cnt=255 then
cnt:=0;
Cout<='1';
else
Cout<='0';
cnt:=cnt+1;
end if;
END IF;
if (Cout='1') then
SWout<='1';
end if;
if (clr ='1') then
SWout<='0';
Cout<='0';
cnt:=0;
end if;
END process;
END arc;
在本设计中,还使用FPGA逻辑电路实现了雨刮器刮速根据车速不同自适应调整的功能,即,车速小于5km/h时,雨刮器开关若在高速档,则雨刮器实际按低速档运行,若车速大于5km/h,且雨刮器开关在高速档,则雨刮器速度按高速档运行,这样增强了电器控制的智能化,同时有利于节能。
通信接口电路指CAN总线接口电路,如图4所示,完成CAN总线的物理电平(差分信号)到MCU的TTL电平的转换。
图4 CAN通信接口电路
图4 中,R150为CAN总线通信物理层所要求的匹配电阻,D42的型号为NUP2105L,该器件专为高速CAN总线信号设计的双向瞬态电流抑制器(TVS)。ZJYS81R5为一共模电感,共模电感和TVS的组合使用能够提高系统的EMI性能,从而提高系统的可靠性。
本文完成了集总式车身控制模块BCM电源管理系统电路的设计。通过CAN总线的控制,完成对车身电器电源的控制,从而避免了发电机电压超过车身用电器的额定电压对车身电器造成的损坏,解决车身电器的软启动、软关断和多路PWM信号输出的问题。
[1] 王麦玲.基于电流检测的集成电路诊断方法研究[J].高校理科研究.
[2] 吴帆.网络架构下的车身中央控制器设计[J].电子产品世界,2006,8.
[3] 焦玉,张云龙.客车车身传统电器的网络化设计[J].汽车电器,2006.
[4] 吴海燕,吴志红等.智能功率芯片BTS6143D特性的试验研究[J].电子产品世界,2007,5.
[5] 刘浩,王向周.基于MB90F428的汽车仪表设计[J].世界电子元器件,2006,1.
[6] 戴松新.汽车组合仪表板控制系统设计[J],电子工程师,2006,3.
[7] 基于CAN总线的分布式车身控制系统[P].专利号CN200620141349.8.
[8] 一种汽车CAN总线唤醒装置[P].专利号CN200620117148.4.
[9] 智能汽车车身网络系统[P].专利号CN200710099038.9.
[10] 车灯控制方法和车灯控制电路[P].专利号CN200710037324.2.
[11] 一种CAN总线断路检测电路[P].专利号CN200710015392.9.