當(dāng)前位置:首頁(yè) > 汽車電子 > 汽車電子
[導(dǎo)讀]摘要 介紹基于LPC2292和μClinux系統(tǒng)的多功能嵌入式車輛行駛監(jiān)控終端的結(jié)構(gòu)和功能模塊的設(shè)計(jì);對(duì)系統(tǒng)設(shè)計(jì)的硬件和軟件部分進(jìn)行詳細(xì)的分析,并就嵌入式系統(tǒng)中的驅(qū)動(dòng)程序的建立進(jìn)行詳細(xì)討論。監(jiān)控終端可以對(duì)車輛各種性

摘要 介紹基于LPC2292和μClinux系統(tǒng)的多功能嵌入式車輛行駛監(jiān)控終端的結(jié)構(gòu)和功能模塊的設(shè)計(jì);對(duì)系統(tǒng)設(shè)計(jì)的硬件和軟件部分進(jìn)行詳細(xì)的分析,并就嵌入式系統(tǒng)中的驅(qū)動(dòng)程序的建立進(jìn)行詳細(xì)討論。監(jiān)控終端可以對(duì)車輛各種性能參數(shù)進(jìn)行全方位監(jiān)控,并將總線接口作為車輛在途維護(hù)與診斷工具;結(jié)合無(wú)線通信模塊可以建立遠(yuǎn)程車輛的全方位監(jiān)控系統(tǒng),提高車輛管理水平。
關(guān)鍵詞 嵌入式系統(tǒng) 車輛監(jiān)控CAN驅(qū)動(dòng)程序 CTM8251 TJA1020


1 終端功能
    本監(jiān)控終端除了具有傳統(tǒng)的記錄儀所擁有的事故分析功能外,還能在汽車駕駛員超速行駛時(shí)發(fā)出超速報(bào)警聲,以提醒駕駛員減速行駛,并詳細(xì)記錄車輛每次的開(kāi)車時(shí)間、行駛里程、行駛時(shí)間、最高車速,以及每次最高車速的持續(xù)時(shí)間,方便交通管理部門(mén)根據(jù)所記錄的有關(guān)數(shù)據(jù)對(duì)車輛進(jìn)行有效的管理;同時(shí),該設(shè)備可實(shí)現(xiàn)多種信息處理,顯示汽車狀況,進(jìn)行自我診斷,對(duì)車速、發(fā)動(dòng)機(jī)轉(zhuǎn)速、水溫、油壓、剎車氣壓、輪胎壓力和蓄電池電壓等一系列參數(shù)進(jìn)行有效監(jiān)控;通過(guò)控制發(fā)光二極管、液晶顯示、蜂鳴器等報(bào)警手段,為司乘人員提供直接的汽車狀況信息并發(fā)出各種超限情況的報(bào)警等,可有效防范和化解車輛事故的發(fā)生。另外,終端具有GPRS和GPS模塊,可將各種監(jiān)測(cè)數(shù)據(jù)實(shí)時(shí)傳至公司管理中心,方便了公司車輛的統(tǒng)一調(diào)度和行車監(jiān)測(cè),利于提高公司管理水平。

2 終端功能模塊設(shè)計(jì)
    選用帶有ARM7TDMI-S內(nèi)核的LPC2292微控制器,可實(shí)現(xiàn)對(duì)車速、轉(zhuǎn)速信號(hào)、開(kāi)關(guān)量信號(hào)以及水溫、剎車氣壓、輪胎壓力等模擬量信號(hào)的采集、處理以及數(shù)據(jù)的實(shí)時(shí)存儲(chǔ)和顯示,通過(guò)串口、USB接口可以實(shí)現(xiàn)與PC機(jī)之間的數(shù)據(jù)通信,通過(guò) CAN和LIN總線接口可實(shí)現(xiàn)與汽車上的CAN或LIN節(jié)點(diǎn)間的數(shù)據(jù)通信。該系統(tǒng)的外圍接口模塊有電源模塊、車速等脈沖信號(hào)采集模塊、水溫等模擬信號(hào)采集模塊、鍵盤(pán)接口模塊、存儲(chǔ)器模塊、GPS定位模塊、GPRS通信模塊、LCD顯示模塊、胎壓監(jiān)測(cè)以及通信接口模塊,系統(tǒng)的組成框圖如圖1所示。限于篇幅,本文僅就若干特色功能模塊設(shè)計(jì)作詳細(xì)分析。

2.1 車速、轉(zhuǎn)速信號(hào)采集電路設(shè)計(jì)
    現(xiàn)有運(yùn)輸車輛一般都裝有霍爾式集成傳感器,車速轉(zhuǎn)換成的電壓信號(hào)直接送至車速表,信號(hào)采集比較方便,具體處理方法是直接從車速表的接線端子取得車速信號(hào)。具體接線方式根據(jù)車速表信號(hào)輸出電路來(lái)確定。信號(hào)出車速表端子后送至光耦4N35高速隔離開(kāi)關(guān),再送至集成運(yùn)放LM358D前置差分電路,進(jìn)一步去除干擾并有效放大,由LM358D輸出端(7腳)送至9013進(jìn)行次級(jí)放大,至此車速信號(hào)已是占空比為50%的方波信號(hào),并已剔除雜波,可直接送至微控制器定時(shí)捕獲端口進(jìn)行計(jì)數(shù),具體電路如圖2所示。經(jīng)反復(fù)實(shí)驗(yàn)優(yōu)化,本電路抗干擾能力很強(qiáng),實(shí)車測(cè)試時(shí)無(wú)論低速狀態(tài)或超過(guò)110 km/h車速時(shí),均可穩(wěn)定準(zhǔn)確地檢測(cè)到速度信號(hào)。同理,發(fā)動(dòng)機(jī)轉(zhuǎn)速信號(hào)亦可采取類似方法進(jìn)行處理(在此不再贅述)。

2.3 CAN總線接口功能設(shè)計(jì)
    CAN正常工作需要具備CAN控制器以及CAN總線驅(qū)動(dòng)器。前者實(shí)現(xiàn)網(wǎng)絡(luò)層次結(jié)構(gòu)中數(shù)據(jù)鏈路層和物理層的功能,后者則提供CAN控制器與物理總線之間的接口以及對(duì)CAN總線的差動(dòng)發(fā)送和接收功能。LPC2292微控制器包含兩個(gè)CAN控制器,單個(gè)總線上的數(shù)據(jù)傳輸速率高達(dá)1 Mbps,具有32位寄存器和RAM訪問(wèn)功能,帶有全局濾波器和驗(yàn)收濾波器。本系統(tǒng)采用CTM8251D雙路帶隔離CAN收發(fā)器,至少可連接110個(gè)節(jié)點(diǎn),通過(guò)擴(kuò)展CAN總線接口,使得串行通信方式的選擇更加多樣化。當(dāng)車內(nèi)儀表也具有CAN總線接口的時(shí)候,它們可以直接利用此接口與記錄儀通信。CAN總線接口電路如圖4所示。

    CAN通信與一般的串口通信類似,在數(shù)據(jù)通信前先要對(duì)CAN總線進(jìn)行初始化操作,包括CAN控制器的選擇、數(shù)據(jù)寄存器的設(shè)置、通信波特率的設(shè)置等。初始化完成后,需要設(shè)置雙方的通信協(xié)議,建立彼此的連接。只有在同一協(xié)議下工作的雙方才能正確進(jìn)行數(shù)據(jù)的交換。本系統(tǒng)設(shè)置的CAN通信協(xié)議為:無(wú)過(guò)濾條件、 bypass模式、波特率可以預(yù)先設(shè)置。
    本系統(tǒng)提供的CAN-BUS通信函數(shù)接口如下:
    ①初始化CAN:int CAN_Init(int cannum,uint32volatile baudset)。
    函數(shù)入口參數(shù):cannum為CAN控制器的選擇標(biāo)志符,為1選擇CAN0控制器,為2選擇CAN1控制器;baudset為波特率,可以預(yù)先設(shè)置。
    函數(shù)出口參數(shù):初始化成功返回0,失敗則返回1。
    函數(shù)功能:對(duì)CAN控制器進(jìn)行初始化。
    ②CAN總線發(fā)送數(shù)據(jù):int CAN_SendData(int can-num,uint32 volatile frameinfo,uint32 volatile senddatal,uint32 volatile senddata2,uint32 volatile canmode)。
    函數(shù)入口參數(shù):cannum同上;frameinfo為幀信息,用于設(shè)置幀信息寄存器;senddata1和senddata2分別為要發(fā)送的數(shù)據(jù),用于設(shè)置數(shù)據(jù)寄存器A和B;canmode用于設(shè)置CAN工作模式。
    函數(shù)出口參數(shù):數(shù)據(jù)發(fā)送成功返回0,失敗則返回1。
    函數(shù)功能:CAN總線進(jìn)行數(shù)據(jù)發(fā)送。
    ③CAN總線接收數(shù)據(jù):int CAN_RcvData(int can-num。uint32 volatile *pdatal,uint32 volatile *pdata2)。函數(shù)入口參數(shù):cannum同上;pdata1和pdata2為接收數(shù)據(jù)指針。
    函數(shù)功能:CAN總線接收數(shù)據(jù),并從數(shù)據(jù)寄存器CANRDA和CANRDB中將數(shù)據(jù)讀進(jìn)對(duì)應(yīng)的指針中。
2.4 LIN總線接口電路設(shè)計(jì)
    LIN是低成本網(wǎng)絡(luò)中的汽車通信協(xié)議標(biāo)準(zhǔn),可以提高通信質(zhì)量、降低成本,將是在汽車中使用汽車分級(jí)網(wǎng)絡(luò)的重要因素。LIN總線是一種簡(jiǎn)單的單總線系統(tǒng),其軟件協(xié)議棧比較簡(jiǎn)單。一個(gè)LIN網(wǎng)絡(luò)由一個(gè)主機(jī)節(jié)點(diǎn)和一個(gè)以上的從機(jī)節(jié)點(diǎn)組成,所有的節(jié)點(diǎn)都包括有從機(jī)服務(wù)程序,用來(lái)發(fā)送和接收數(shù)據(jù),僅有一個(gè)節(jié)點(diǎn)包含有主機(jī)服務(wù)程序。主機(jī)程序主要用于發(fā)送同步間隔、同步場(chǎng)和ID場(chǎng)(或命令),以控制和協(xié)調(diào)各個(gè)節(jié)點(diǎn)的有序通信。
    LPC2292微控制器集成有實(shí)現(xiàn)LIN總線節(jié)點(diǎn)的必要硬件,包括UART、捕獲輸入和足夠的定時(shí)器,特別是其捕獲輸入功能,為L(zhǎng)IN的幀頭識(shí)別、幀同步 &波特率測(cè)量提供了極大的便利。LIN總線接口電路如圖5所示,主要由LIN物理層接口芯片TJA1020構(gòu)成,與LPC2292串口2相連,其主要完成MCU通信信號(hào)與LIN物理總線信號(hào)之間的相互轉(zhuǎn)換,為MCU提供一個(gè)與LIN物理總線的接口。

2.5 紅外通用接口模塊
    出于用戶統(tǒng)一采集數(shù)據(jù)需求考慮,本系統(tǒng)設(shè)計(jì)了通用的紅外接口。它能夠支持紅外遙控和數(shù)據(jù)通信,支持IrDA協(xié)議,能夠方便地與各種符合協(xié)議標(biāo)準(zhǔn)的設(shè)備進(jìn)行通信。該模塊由HSDL7001編解碼芯片和HSDL3600紅外收發(fā)芯片組成。 HSDL7001與MCU串口相連,原理框圖如圖6所示。

    HSDL7001可驅(qū)動(dòng)IrDA兼容的收發(fā)器,最高傳輸速率達(dá)11 502 kbps,其內(nèi)部有1個(gè)SIR編碼器和1個(gè)SIR解碼器,支持內(nèi)部(外接3.684 MHz晶振)和外部16XCLK輸入兩種模式。當(dāng)使用內(nèi)部時(shí)鐘時(shí),波特率可通過(guò)A0、A1和A2進(jìn)行調(diào)整。

3 終端軟件設(shè)計(jì)
    嵌入式μClinux具有結(jié)構(gòu)小巧、實(shí)時(shí)性強(qiáng)、穩(wěn)定性高、可定制性強(qiáng)的特點(diǎn)。在網(wǎng)絡(luò)通信方面,嵌入式操作系統(tǒng)支持TCP/IP及其他協(xié)議并提供通信協(xié)議動(dòng)態(tài)掛接技術(shù),以及操作系統(tǒng)內(nèi)部的進(jìn)程通信應(yīng)用接口技術(shù)。本設(shè)計(jì)采用穩(wěn)定的2.4版本的內(nèi)核,并對(duì)它進(jìn)行合理的裁減和加載,作為操作平臺(tái)。μClinux己對(duì)本系統(tǒng)采用的主控器有了很好的支持,但在編譯本系統(tǒng)的內(nèi)核前,需要修改 uclinux/linux-2.4.x/arch/armnommu/config.in文件中關(guān)于外部存儲(chǔ)空間的定義,以滿足本系統(tǒng)關(guān)于外部 Flash、CH375B和LCD液晶屏等器件的存儲(chǔ)空間的劃分。
3.1 進(jìn)程管理
    μClinux的進(jìn)程調(diào)度沿用了Linux的傳統(tǒng),系統(tǒng)每隔一定時(shí)間掛起進(jìn)程,同時(shí)系統(tǒng)產(chǎn)生快速和周期性的時(shí)鐘計(jì)時(shí)中斷,并通過(guò)調(diào)度函數(shù)(定時(shí)器處理函數(shù))決定進(jìn)程何時(shí)擁有相應(yīng)的時(shí)間片,然后進(jìn)行相關(guān)進(jìn)程切換,這通過(guò)父進(jìn)程調(diào)用:fork函數(shù)生成子進(jìn)程來(lái)實(shí)現(xiàn)。
    本系統(tǒng)中,為每個(gè)任務(wù)建立數(shù)據(jù)處理子進(jìn)程,包括:車速、轉(zhuǎn)速等信號(hào)采集處理任務(wù)、串口定時(shí)通信任務(wù)、USB數(shù)據(jù)傳輸任務(wù)、GPRS數(shù)據(jù)傳輸任務(wù)、LCD數(shù)據(jù)顯示更新任務(wù)等。子進(jìn)程采用由μClinux內(nèi)核中的cron組件觸發(fā)任務(wù)機(jī)制。系統(tǒng)中的crontab文件記錄了終端的定時(shí)數(shù)據(jù)處理任務(wù)信息(可由系統(tǒng)前臺(tái)設(shè)定任務(wù)執(zhí)行周期),時(shí)間一到即可被cron觸發(fā)其相應(yīng)的子進(jìn)程。由于采用多進(jìn)程處理,終端可方便地實(shí)現(xiàn)多種信號(hào)的實(shí)時(shí)采集以及數(shù)據(jù)的及時(shí)處理、存儲(chǔ)和上送。
3.2 設(shè)備驅(qū)動(dòng)程序編寫(xiě)
    設(shè)備驅(qū)動(dòng)程序是內(nèi)核與硬件之間的唯一接口,也是內(nèi)核代碼的一部分。當(dāng)硬件設(shè)備要與內(nèi)核進(jìn)行交互時(shí),就會(huì)產(chǎn)生一個(gè)中斷信號(hào),通過(guò)驅(qū)動(dòng)程序預(yù)定義的入口點(diǎn)進(jìn)入內(nèi)核,入口點(diǎn)將此信號(hào)保存在棧中并保存被中斷任務(wù)的寄存器的值。內(nèi)核提取保存在棧中的中斷信號(hào),再由內(nèi)核調(diào)用相應(yīng)的中斷處理程序。應(yīng)用程序可以像操作普通文件一樣對(duì)硬件設(shè)備進(jìn)行操作。
    本系統(tǒng)用到LPC22292的4路A/D采樣接口對(duì)水溫、剎車氣壓以及發(fā)動(dòng)機(jī)電壓狀態(tài)等參數(shù)進(jìn)行采集。下面以A/D采樣驅(qū)動(dòng)程序?yàn)槔M(jìn)行分析:
    ①應(yīng)用程序只有通過(guò)對(duì)設(shè)備文件的open、close、read/write、ioctl等進(jìn)行操作才能訪問(wèn)硬件設(shè)備,Linux的擴(kuò)展文件操作結(jié)構(gòu) file_operations實(shí)現(xiàn)了標(biāo)準(zhǔn)的文件操作到硬件設(shè)備操作的映射,每個(gè)設(shè)備驅(qū)動(dòng)程序都要實(shí)現(xiàn)這個(gè)接口所定義的部分或全部函數(shù)。A/D驅(qū)動(dòng)程序的擴(kuò)展文件操作結(jié)構(gòu)如下:


    ②在設(shè)備驅(qū)動(dòng)程序中使用中斷,是提高系統(tǒng)數(shù)據(jù)處理速率的有效手段。有兩項(xiàng)工作要做:
    第一,在初始化函數(shù)中的register_chrdev()調(diào)用之后,使用request_irq()函數(shù)安裝中斷處理程序。request_irq()函數(shù)聲明如下:


其中的參數(shù)irq是驅(qū)動(dòng)程序使用的設(shè)備中斷號(hào);handler是中斷服務(wù)函數(shù)指針;flags是一個(gè)與中斷管理有關(guān)的各種選項(xiàng)的字節(jié)掩碼;device在/proc/interrupts中用于顯示中斷的擁有者;dev_id這個(gè)指針用于共享的中斷信號(hào)線,返回0成功,非0失敗。
    A/D驅(qū)動(dòng)程序安裝如下一個(gè)中斷處理程序:

      
    第二,實(shí)現(xiàn)這個(gè)中斷服務(wù)程序,參數(shù)必須與request_irq()登記時(shí)要求的一致,且不能有返回值。
    ③A/D初始化

  

結(jié) 語(yǔ)
    基于ARM核的LPC2292為控制核心的嵌入式車輛行駛監(jiān)控終端,在現(xiàn)有行車記錄儀基礎(chǔ)上增加了若干新功能。它具有以下特點(diǎn):
    ①以μClinux系統(tǒng)為數(shù)據(jù)處理平臺(tái),通過(guò)多任務(wù)進(jìn)程調(diào)度機(jī)制大大提高了系統(tǒng)處理海量數(shù)據(jù)的能力,實(shí)時(shí)性得到很大提高,對(duì)于車速、發(fā)動(dòng)機(jī)轉(zhuǎn)速、剎車氣壓等監(jiān)測(cè)頻率要求高的參數(shù)可以精確監(jiān)測(cè),增強(qiáng)了車輛行駛安全性。
    ②先進(jìn)的通信功能。CAN、LIN總線接口使得終端可以與具備通用總線接口的車輛融為一體,作為車輛的內(nèi)置診斷裝置,可全方位獲取車輛參數(shù)。USB接口使得監(jiān)控?cái)?shù)據(jù)可以方便地保存至系統(tǒng)后臺(tái),利于數(shù)據(jù)分析。
    ③完善的數(shù)據(jù)上傳與車輛定位跟蹤功能。管理者不僅可以實(shí)時(shí)了解車輛的位置現(xiàn)狀,而且可以實(shí)時(shí)監(jiān)控車輛的運(yùn)行狀態(tài),通過(guò)司機(jī)與管理者的雙重監(jiān)控,可以有效保證車輛的安全運(yùn)行,這對(duì)于從事高危運(yùn)輸行業(yè)的車輛具有重要意義。
    總之,將高性能的ARM微控制器與嵌入式操作系統(tǒng)運(yùn)用于車輛行駛監(jiān)控終端中,既能大大提高車輛數(shù)據(jù)采集與分析的效率和準(zhǔn)確性,又可實(shí)現(xiàn)對(duì)車輛多種性能參數(shù)的實(shí)時(shí)監(jiān)控,是今后車輛遠(yuǎn)程實(shí)時(shí)監(jiān)控技術(shù)的發(fā)展趨勢(shì)。
    編者注:本文為期刊縮略版,全文見(jiàn)本刊網(wǎng)站www.mesnet.com.cn。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉