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