謝富強(qiáng),唐耀庚,曹云建
(南華大學(xué) 電氣工程學(xué)院,湖南 衡陽421001)
隨著我國汽車工業(yè)的快速發(fā)展,國產(chǎn)汽車的技術(shù)性能已變得越來越好,同時(shí)故障診斷的難度也越來越大。傳統(tǒng)的人工手持式檢測儀已經(jīng)無法滿足大規(guī)模汽車故障檢測的需求。汽車故障診斷就是利用ECU(電子控制單元)監(jiān)視電子控制系統(tǒng)各組成部分的工作情況,發(fā)現(xiàn)故障后自動啟動故障處理程序[1-2]。由于駕駛員的檢測和修理經(jīng)驗(yàn)在車輛出現(xiàn)電控系統(tǒng)故障時(shí)往往是無能為力的。為了解決這個(gè)問題,可以通過GPRS(通用分組無線業(yè)務(wù))無線通信與遠(yuǎn)程的服務(wù)器連接,維修人員或?qū)I(yè)人員即可通過服務(wù)器控制故障診斷設(shè)備讀取汽車的診斷數(shù)據(jù)從而判斷或解決汽車故障[2-4]。本文設(shè)計(jì)了一種基于Cortex-M3的汽車故障遠(yuǎn)程監(jiān)測系統(tǒng),實(shí)現(xiàn)對汽車24小時(shí)不間斷的故障預(yù)警、故障診斷與監(jiān)控管理,能夠較快地掌握汽車狀態(tài)信息[5]。
汽車故障遠(yuǎn)程監(jiān)測系統(tǒng)總體上可以分為兩大部分,第一部分是車載終端系統(tǒng),第二部分包括服務(wù)器端數(shù)據(jù)庫和客戶端遠(yuǎn)程監(jiān)測軟件等軟件系統(tǒng)[6]。系統(tǒng)總體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)
基于Cortex-M3開發(fā)的車載終端 (即車載嵌入式系統(tǒng)),兼容基于K線的KWP2000和基于CAN線的IS015765故障診斷通信協(xié)議,可獲取汽車的基本信息和故障信息,實(shí)現(xiàn)對汽車各相關(guān)部件狀態(tài)的實(shí)時(shí)數(shù)據(jù)采集、解析、發(fā)送和存儲等功能[7]?;贑語言開發(fā)的服務(wù)器端和客戶端軟件主要負(fù)責(zé)數(shù)據(jù)的解析、分類、存儲、查詢及呈現(xiàn)等功能。服務(wù)端通過對車載終端的監(jiān)聽,接收終端發(fā)來的診斷數(shù)據(jù),按照已制定的終端與服務(wù)器通信協(xié)議對數(shù)據(jù)進(jìn)行解析、分類等處理之后,存入數(shù)據(jù)庫特定的表中以供客戶端查詢。客戶端通過Internet訪問服務(wù)器,從相應(yīng)的表中提取數(shù)據(jù),經(jīng)過計(jì)算之后呈現(xiàn)給用戶。系統(tǒng)的總體組成如圖2所示,車載終端包括MCU、CAN控制器、CAN收發(fā)器、藍(lán)牙模塊、存儲設(shè)備、GPRS模塊、SIM卡、TF卡和電源等。
圖2 監(jiān)測系統(tǒng)總體組成
車載采集終端硬件電路設(shè)計(jì)采用了模塊化的設(shè)計(jì)方式,即將終端劃分為4個(gè)部分:OBD接口部分、電源部分、MCU部分和無線通信部分。
在選擇微處理器時(shí)要考慮的因素很多,不僅僅是從純粹的硬件接口出發(fā),還需要考慮相關(guān)的嵌入式操作系統(tǒng)、配套的開發(fā)工具、仿真工具以及工程師對微處理器的了解程度和軟件支持情況等。采用基于ARM Cortex-M3內(nèi)核的STM32F103系列芯片作為車載終端的控制核心,得益于Cortex-M3內(nèi)核多項(xiàng)新型增強(qiáng)架構(gòu),具有超低功耗、性能優(yōu)異、集成度好、接口方便、開發(fā)容易等諸多優(yōu)點(diǎn)。選取型號為STM32F103CBT6的芯片,片內(nèi)存儲容量為128 KB,已能夠滿足應(yīng)用要求。微控制器是車載終端的控制核心,根據(jù)程序執(zhí)行相關(guān)指令,驅(qū)動各個(gè)外圍模塊。MCU系統(tǒng)電路原理如圖3所示。外接晶振的震蕩頻率為8 MHz,可以匹配等效阻抗,電路也采用了較為通用的形式。與8 M晶振并聯(lián)的電阻R4的阻值為1 MΩ。晶振兩端的電容取值與晶振有關(guān),一般可取20 pF,實(shí)驗(yàn)證明其滿足設(shè)計(jì)需求。
OBD接口部分的核心功能是使車載終端通過CAN總線或K總線獲取汽車的實(shí)時(shí)數(shù)據(jù),同時(shí)作為車載電源為車載終端提供能量的通道,還用于車載終端與汽車的連接與固定。
OBD接口電路如圖4所示。車載終端采用標(biāo)準(zhǔn)16 Pin的OBD接口,此處只用到了其中的7個(gè)引腳。考慮到終端在工作過程中可能會存在較多的干擾信號,可在OBD接口的地引腳與屏蔽引腳間添加磁珠L1,用于抑制高頻噪聲和尖峰干擾,還具有吸收靜電脈沖的功能。由于終端采集數(shù)據(jù)主要通過CAN總線及K總線進(jìn)行,為使系統(tǒng)更加穩(wěn)定,避免靜電的影響,分別在CAN總線和K總線末端添加ESD(靜電防護(hù))器件,如圖5所示。
圖3 STM32F103CBT6系統(tǒng)電路
圖4 OBD接口電路
圖5 總線的ESD防護(hù)
車載終端數(shù)據(jù)的采集主要是通過CAN總線實(shí)現(xiàn)的,因此對CAN總線的保護(hù)非常重要,CAN總線采集器電路設(shè)計(jì)如圖6所示。這里使用了分裂終端接法,即在總線終端節(jié)點(diǎn)使用兩個(gè)相同的電阻,叫做分裂終端電阻,接地端接在兩個(gè)終端電阻之間。這樣做的好處是可抑制共模干擾,保證正常通信。在總線上加共模磁珠L1與濾波電容C5、C6構(gòu)成的低通濾波電路,對低頻噪聲有明顯的抑制作用。為抑制干擾信號,CAN_P和CAN_N采用差分走線的方式。采用VP230作為CAN總線收發(fā)器。VP230具有很高的阻抗,在總線上最多可以掛接120個(gè)節(jié)點(diǎn),兼容ISO11898標(biāo)準(zhǔn),具有待機(jī)電流很低的優(yōu)點(diǎn)。
2.4.1 藍(lán)牙模塊電路設(shè)計(jì)
圖6 CAN總線采集器電路
藍(lán)牙模塊的主要作用是向虛擬串口打印車載終端的運(yùn)行狀態(tài),作為輔助調(diào)試工具,或者連接手機(jī)等移動設(shè)備,通過移動設(shè)備向車載終端發(fā)送指令,獲取相關(guān)汽車行駛信息。采用一款基于CSR31A2的HC-07系列藍(lán)牙模塊作為近距離無線通信的載體。這款藍(lán)牙模塊的靈敏度可達(dá)-80 dBm,內(nèi)置了2.4 GHz天線,具有標(biāo)準(zhǔn)的HCI端口(UART或 USB),兼容 USB2.0通信標(biāo)準(zhǔn)。
2.4.2 GPRS無線通信電路設(shè)計(jì)
GPRS模塊采用由SIMCom提供的SIM900A模塊。SIM900A是一個(gè)2頻GSM/GPRS模塊,工作的頻段為EGSM 900 MHz和DCS 1 800 MHz。模塊內(nèi)嵌了TCP/IP協(xié)議,擴(kuò)展的AT指令使用起來更加方便。設(shè)計(jì)電路中采用排阻代替很多獨(dú)立的電阻。這樣可以減小整個(gè)PCB板的面積,降低布板難度,還能減少因獨(dú)立電阻之間阻值差異而帶來的誤差。為了使輸入電壓波形更加平穩(wěn),在VBAT腳使用了3個(gè)0.1 μF的鉭電容并聯(lián),在布板時(shí),鉭電容應(yīng)盡可能靠近VBAT引腳。
2.4.3 USB接口電路設(shè)計(jì)
USB是車載終端與PC之間重要的通信接口,也可由USB接口提供5 V電源。終端軟件升級時(shí)需要將終端連接PC,將升級文件復(fù)制進(jìn)TF卡。為了USB通信的穩(wěn)定性,需要添加USB專用ESD器件 NUP2201,對USB接口進(jìn)行保護(hù)。另外,數(shù)據(jù)線也采用差分走線的方式。
2.4.4 TF+SIM卡座電路設(shè)計(jì)
采用了TF+SIM組合卡座,外接電阻也均采用排阻的形式,大大減小了PCB板的面積。
電源有兩種方案可以選擇:(1)使用一組開關(guān)電源和一組線性穩(wěn)壓器串聯(lián)的形式;(2)采用兩組開關(guān)電源獨(dú)立進(jìn)行供電。由于GPRS模塊SIM900A所使用的4 V輸入電壓有點(diǎn)特殊,可選的LDO(低壓差線性穩(wěn)壓器)型號太少,缺乏常用型號支持。電源需要給不同的模塊提供能源,而不同的模塊對電源的要求是不同的,因此采用多路獨(dú)立供電的方案。
SIM900A模塊采用單電源供電。考慮到輸入電壓為12 V,輸出電壓為4 V,相差較大,故采用開關(guān)穩(wěn)壓器LM2596-ADJ。由于采用的是開關(guān)電源,即使車輛電瓶電壓降至7 V或更低,只要在2~3 A放電情況下電瓶電壓能比 4 V高1.7 V(即維持在 5.7 V左右),還是可以供上電的,因此完全滿足設(shè)計(jì)需要。
電源入口處的P6SMB24是一個(gè)TVS(瞬態(tài)電壓抑制器)器件,對防雷、防浪涌有一定作用。除了SIM900A模塊外,車載終端所涉及的主要功能模塊(包括微處理器)的供電電壓均為3.3 V,稱之為主電路供電電壓。為了匹配精確、穩(wěn)定的3.3 V核心供電電壓,本項(xiàng)目采用了一款電壓轉(zhuǎn)換芯片MC34063AD。圖7所示為主電路供電電源電路圖。
圖7 主電路供電電源電路
通過對車載終端各功能模塊的測試及對測試結(jié)果的分析表明,硬件系統(tǒng)能夠滿足對汽車數(shù)據(jù)的采集、發(fā)送等設(shè)計(jì)要求,GPRS模塊的工作情況也較為穩(wěn)定,沒有出現(xiàn)大量數(shù)據(jù)丟失的情況。監(jiān)測系統(tǒng)能夠在汽車啟動或熄火狀態(tài)下對汽車進(jìn)行實(shí)時(shí)監(jiān)測,實(shí)現(xiàn)了對歷史數(shù)據(jù)的回溯、解析、查看等功能,能夠快速監(jiān)測汽車狀態(tài)的變化。模擬測試階段需要由USB取電,MC34063正常工作時(shí),用萬用表測試各引腳電壓,表1為測量結(jié)果。SIM900A模塊采用單電源供電,圖 8所示為 SIM900A正常工作時(shí)的電壓波形。為了測試藍(lán)牙模塊功能是否正常,需要用到串口調(diào)試助手和藍(lán)牙調(diào)試軟件這兩個(gè)工具。由終端藍(lán)牙打印信息可以清楚地判斷終端工作狀態(tài)是否正常,是終端調(diào)試的一個(gè)重要工具。
本設(shè)計(jì)模式將GPRS技術(shù)、ARM技術(shù)及Internet技術(shù)三者結(jié)合應(yīng)用于汽車故障數(shù)據(jù)實(shí)時(shí)采集領(lǐng)域,實(shí)驗(yàn)測試結(jié)果表明其效果良好。該汽車故障遠(yuǎn)程監(jiān)測系統(tǒng)還可以進(jìn)一步改進(jìn),在車載終端軟件升級方面,可考慮改用藍(lán)牙升級的方法?,F(xiàn)有的SIM900A模塊程序運(yùn)行雖然穩(wěn)定但是很臃腫,而且發(fā)送的數(shù)據(jù)量稍大,增加了系統(tǒng)運(yùn)行的成本。另外由于模塊自身連接等問題,易造成發(fā)數(shù)失敗或者后臺收不到數(shù)據(jù),而通過復(fù)位模塊、重新連接等方法解決,耗時(shí)較長,可考慮采用新的方法解決連接耗時(shí)問題。
表1 MC34063測試結(jié)果
圖8 SIM900A工作時(shí)的電壓跌落
[1]孟磊.基于OBD-II的車載遠(yuǎn)程故障診斷系統(tǒng)設(shè)計(jì)[D].武漢:武漢理工大學(xué),2012.
[2]蔡黎,代妮娜,鄧明,等.基于 OBD協(xié)議的Android平臺汽車虛擬儀表設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2012,38(1):69-72.
[3]張瑞.基于 QNX的智能車載 3G遠(yuǎn)程診斷系統(tǒng)[J].電子技 術(shù) 應(yīng) 用,2013,39(5):121-126.
[4]曹云建,唐耀庚,謝宇希.基于 OBD的汽車遠(yuǎn)程監(jiān)測系統(tǒng)設(shè)計(jì)[J].工業(yè)控制計(jì)算機(jī),2012,25(12):95-96.
[5]Zeng Ruili,Xiao Yunkui,Zhou Jianxin,et al.Research on automobile remote faulty diagnosis and maintenance system[J].Electronic Measurement Technology,2009,32(7):129-131.
[6]彭剛,春志強(qiáng).基于ARM Cortex-M3的 STM32系列嵌入式微控制器應(yīng)用實(shí)踐[M].北京:電子工業(yè)出版社,2011.
[7]SELIG M,SHI Z,BALL A,et al.A modern diagnostic approach for automobile systems condition monitoring[C].25th International Congress on Condition Monitoring and Diagnostic Engineering,2012:1324-1328.