基于CAN總線的汽車開關(guān)電器盒設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引 言
隨著現(xiàn)代汽車工業(yè)技術(shù)的不斷發(fā)展進(jìn)步,車上安裝的電子設(shè)備在不斷增加,從而使汽車綜合控制系統(tǒng)中,有大量控制信號(hào)需要進(jìn)行實(shí)時(shí)交換.CAN 總線作為一種可靠的汽車計(jì)算機(jī)網(wǎng)絡(luò)總線,已經(jīng)被廣泛地推廣到汽車控制系統(tǒng)的各個(gè)應(yīng)用領(lǐng)域.將CAN 總線技術(shù)應(yīng)用到汽車開關(guān)電器盒中,可使得各汽車計(jì)算機(jī)控制單元能夠通過CAN 總線得到開關(guān)電器盒中的工作數(shù)據(jù),又能對(duì)開關(guān)電器盒的各個(gè)繼電器進(jìn)行精準(zhǔn)的控制,從而達(dá)到減少汽車線束.提高通信可靠性.降低系統(tǒng)成本.避免系統(tǒng)功能重復(fù).提高系統(tǒng)工作效率的目的.
1 汽車開關(guān)電器盒設(shè)計(jì)方案
本開關(guān)電器盒采用的是基于Microchip 公司生產(chǎn)的PIC18F45K80 芯片作為主芯片的設(shè)計(jì)方案.該芯片不僅具有一般單片機(jī)所具有的全部功能,還集成有硬件CAN 協(xié)議模塊,芯片內(nèi)部即可完成CAN 總線通信.采用本方案具有以下幾點(diǎn)優(yōu)勢(shì):其一是硬件集成了CAN 協(xié)議模塊,無需外接芯片,從而降低了產(chǎn)品制造成本;二是無需編寫SPI 接口驅(qū)動(dòng),縮短了開發(fā)周期,提高了產(chǎn)品競(jìng)爭(zhēng)力;三是本系統(tǒng)使用主流PIC 芯片,具有強(qiáng)大的可擴(kuò)展性,程序可移植性高.
PIC18F45K80 為主控制芯片,負(fù)責(zé)系統(tǒng)的綜合事務(wù)處理.
系統(tǒng)功能主要分為四大部分,分別是模擬信號(hào)采樣.數(shù)字信號(hào)采集.控制信號(hào)輸出和CAN 模塊通信.模擬信號(hào)的采集包括電源電壓采樣.溫度傳感器和電流傳感器采樣.數(shù)字信號(hào)采集各個(gè)熔斷保險(xiǎn)絲的通斷.控制信號(hào)的輸出是對(duì)整車電源繼電器K1.啟動(dòng)電源繼電器K2.啟動(dòng)電機(jī)繼電器K3 的控制.CAN模塊通信是單片機(jī)通過CAN 接口芯片與車上的其他設(shè)備進(jìn)行通信,也是本系統(tǒng)研究的重點(diǎn).圖1 所示是本系統(tǒng)的整體框圖.
2 汽車開關(guān)電器盒的硬件設(shè)計(jì)
2.1 系統(tǒng)主處理器PIC18F45K880
PIC18F45K80 系列是Microchip 的PIC18F8680.PIC18F4680 和PIC18F4580 增強(qiáng)型CAN 系列產(chǎn)品的低成本擴(kuò)展產(chǎn)品.該單片機(jī)工作電壓范圍寬,為1.8~5.5 V,且片上內(nèi)置3.3 V 穩(wěn)壓器, 可作為電源基準(zhǔn)電壓.工作溫度范圍大:-40~+125 ℃,適合汽車工作環(huán)境.工作速度最高達(dá)64 MHz,具有最大64 KB 的片內(nèi)閃存程序存儲(chǔ)器,1 024 字節(jié)的數(shù)據(jù)EEPROM,3.6 KB 的通用寄存器(SRAM).設(shè)有2 個(gè)內(nèi)部振蕩器:INTRC (31 kHz) 和INTOSC(16 MHz).帶擴(kuò)展的看門狗定時(shí)器(WatchdogTimer, WDT),可編程周期為4 ms~131 s.
PIC18F45K80 包含一個(gè)增強(qiáng)型控制器局域網(wǎng)(EnhancedController Area Network ,ECAN) 模塊. ECAN 總線模塊符合ISO 11898-1 規(guī)范.具有3 種工作模式:傳統(tǒng)模式( 與現(xiàn)有PIC18CXX8/FXX8 CAN 模塊完全向下兼容).增強(qiáng)模式.FIFO 模式或可編程發(fā)送/ 接收緩沖區(qū).報(bào)文比特率最高可達(dá)1 Mb/s,具有6 個(gè)緩沖區(qū)可用作接收和發(fā)送報(bào)文緩沖區(qū),3 個(gè)帶有優(yōu)先級(jí)的發(fā)送報(bào)文緩沖區(qū),2 個(gè)接收?qǐng)?bào)文緩沖區(qū)和1 個(gè)接收?qǐng)?bào)文組合緩沖區(qū).
2.2 CAN 接口電路模塊設(shè)計(jì)與實(shí)現(xiàn)
本開關(guān)電器盒采用的是恩智浦半導(dǎo)體公司CAN 總線收發(fā)器芯片TJA1050 作為CAN 協(xié)議控制器和物理總線之間的接口.
TJA1050 可以為總線提供不同的發(fā)送性能,為CAN 控制器提供不同的接收性能.TJA1050 完全符合ISO11898 標(biāo)準(zhǔn),傳送速度高( 最高可達(dá)1M 波特).具有良好的電磁兼容性和低電磁輻射(EME) 性能,并帶有寬輸入范圍的差動(dòng)接收器,可抗電磁干擾(EMI).
圖2 所示是TJA1050 的接口應(yīng)用電路.電路中的一個(gè)120 俚牡繾鑂9,對(duì)于匹配總線阻抗起著相當(dāng)重要的作用,否則,數(shù)據(jù)通信的抗干擾性和可靠性將大大降低,甚至無法通信.
2.3 信號(hào)采集及輸出控制電路設(shè)計(jì)
汽車的各種電氣工作狀態(tài)檢測(cè)是開關(guān)電器盒的重要工作職能之一,主要是由保險(xiǎn)絲狀態(tài)采集電路.電源電壓和溫度采集電路.啟動(dòng)電動(dòng)機(jī)電流檢測(cè)電路組成.
汽車保險(xiǎn)絲的工作狀態(tài)檢測(cè).為了可靠.準(zhǔn)確地檢測(cè)各保險(xiǎn)絲的通斷情況,本系統(tǒng)采用了光耦隔離的方式檢測(cè)保險(xiǎn)絲的通斷.該電器盒共有充電保險(xiǎn)絲.暖風(fēng)1~2 保險(xiǎn)絲.開關(guān)電源保險(xiǎn)絲.常火電源保險(xiǎn)絲.ON 檔1~10 號(hào)保險(xiǎn)絲.?;?~8 號(hào)保險(xiǎn)絲等共24 路保險(xiǎn)絲.保險(xiǎn)絲檢測(cè)采用了光耦隔離的檢測(cè)方式,避免車上其他用電設(shè)備對(duì)電器盒系統(tǒng)的干擾.
開關(guān)電器盒需對(duì)電源電壓進(jìn)行實(shí)時(shí)監(jiān)測(cè).通過電壓監(jiān)測(cè)來實(shí)現(xiàn)高壓.低壓和發(fā)電機(jī)充電異常等三種異常報(bào)警:電壓過高報(bào)警是當(dāng)電壓超過32 V 時(shí),通過CAN 總線向儀表發(fā)出系統(tǒng)電壓過高報(bào)警;低電壓報(bào)警則是在車輛未啟動(dòng)時(shí),當(dāng)系統(tǒng)電壓低于設(shè)定值23.5 V 時(shí),要發(fā)出低電壓報(bào)警,同時(shí)超過4 min切斷電源總開關(guān);發(fā)電機(jī)充電異常報(bào)警是指車輛啟動(dòng)后,如充電正常,則當(dāng)前電源電壓應(yīng)大于26 V,如充電異常( 電源電壓超過32 V 或低于26 V),則通過CAN 總線向儀表發(fā)出報(bào)警.
由于電壓報(bào)警僅需檢測(cè)3 個(gè)電壓值,為降低系統(tǒng)成本,本設(shè)計(jì)采用電阻分壓的方式來進(jìn)行檢測(cè).
本開關(guān)電器盒需檢測(cè)電器盒內(nèi)的溫度,并通過CAN 總線將溫度數(shù)據(jù)發(fā)給儀表.系統(tǒng)采用的是3899 200K 的NTC( 負(fù)溫度系數(shù)熱敏電阻) 來檢測(cè)溫度,通過與一標(biāo)準(zhǔn)電阻分壓后采樣AD 值,最后根據(jù)阻值- 溫度表格查得實(shí)際測(cè)量溫度值.
另外就是啟動(dòng)電動(dòng)機(jī)電流檢測(cè).汽車啟動(dòng)系統(tǒng)將蓄電池電能轉(zhuǎn)化為機(jī)械能,由啟動(dòng)機(jī)帶動(dòng)發(fā)動(dòng)機(jī)旋轉(zhuǎn)并啟動(dòng)發(fā)動(dòng)機(jī).汽車在啟動(dòng)時(shí),啟動(dòng)電動(dòng)機(jī)的工作電流非常大,一般可達(dá)300~600 A.為防止啟動(dòng)電機(jī)的過電流對(duì)汽車電瓶及其他電路造成損壞,對(duì)啟動(dòng)電動(dòng)機(jī)加入了電流檢測(cè)電路.系統(tǒng)中選用了BYD BLY2-IOV2M電流傳感器,在開關(guān)電器盒中采用金屬銅片穿過電流傳感器腔體.該傳感器采用霍爾效應(yīng)的測(cè)量原理,完全隔離式的測(cè)量方法,具有低功耗.寬測(cè)量范圍等特點(diǎn).
3 汽車開關(guān)電器盒的軟件設(shè)計(jì)與實(shí)現(xiàn)
本開關(guān)盒電器軟件主要由兩大部分組成,包括用戶功能定義設(shè)計(jì)和CAN 驅(qū)動(dòng)程序設(shè)計(jì),其程序整體架構(gòu)圖如圖3 所示.
圖3 中的用戶功能定義程序主要包括過壓監(jiān)測(cè).欠壓監(jiān)測(cè).保險(xiǎn)絲斷路監(jiān)測(cè).過流監(jiān)測(cè).蓄電池充電監(jiān)測(cè).模塊自檢等.
SAE_J1939 協(xié)議驅(qū)動(dòng)程序主要作用是對(duì)CAN 模塊中的接收緩存的CAN 報(bào)文加以解析以及對(duì)發(fā)送緩存中的CAN 報(bào)文加以翻譯.[!--empirenews.page--]
SAE_J1939 協(xié)議的數(shù)據(jù)結(jié)構(gòu)與CAN 報(bào)文結(jié)構(gòu)有很大不同之處.它將CAN 報(bào)文的11 位標(biāo)準(zhǔn)幀以及29 位擴(kuò)展 幀重新定義,對(duì)每一位都賦予特殊意義,其結(jié)構(gòu)定義如下:
其中,PDUFormat 為PDU 格式,PDUSpecific 為特定域,SourceAddress 為設(shè)備地址,DataLength 為數(shù)據(jù)長(zhǎng)度,Priority 為優(yōu)先級(jí), 而Data[J1939_DATA_LENGTH] 則為SAE_J1939 協(xié)議的數(shù)據(jù)域.
根據(jù)SAE_J1939 協(xié)議在整個(gè)系統(tǒng)所處的位置和作用,本設(shè)計(jì)給出如圖4 所示的基于SAE_J1939 協(xié)議對(duì)接收和發(fā)送報(bào)文的翻譯和解析流程圖.
在CAN 模塊工作之前,必須先對(duì)其進(jìn)行必要的初始化.
CAN 驅(qū)動(dòng)程序在入口處設(shè)計(jì)為進(jìn)入CAN 模塊的配置模式,以便在CAN 模塊工作前對(duì)波特率.屏蔽器.過濾器等進(jìn)行配置.
4 結(jié) 語
基于CAN 總線的汽車開關(guān)電器盒是一種網(wǎng)絡(luò)化的汽車電器控制系統(tǒng),對(duì)汽車電器設(shè)備網(wǎng)絡(luò)化發(fā)展有著重要的意義.
它能最大限度地減少汽車線束,將開關(guān)電器盒的工作數(shù)據(jù)實(shí)時(shí)傳送給各個(gè)儀表,具有較高的數(shù)據(jù)傳輸可靠性和安裝便捷性,擴(kuò)展了汽車功能.目前,隨著CAN 總線技術(shù)的快速普及,支持CAN 總線標(biāo)準(zhǔn)的汽車廠家越來越多,汽車電子產(chǎn)品的網(wǎng)絡(luò)化發(fā)展趨勢(shì)是必然的.車輛裝配基于CAN 總線的汽車開關(guān)電器盒有助于提高汽車產(chǎn)品競(jìng)爭(zhēng)力,而增加的成本并不會(huì)太多,所以是未來汽車開關(guān)電器盒的發(fā)展方向.