吉武俊,高 云
(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.