蔡亮明
基于富士通MB9BF506R的車輛油耗采集系統(tǒng)
蔡亮明
福州大學(xué)至誠學(xué)院
該文研究基于富士通MB9BF506R 的車輛油耗采集系統(tǒng),這是一種實(shí)時(shí)的油耗監(jiān)控儀器,它能夠在不改變汽車構(gòu)造、不更換任何配件且不影響車輛任何操作和功能的基礎(chǔ)上,全程實(shí)時(shí)監(jiān)控車輛燃油消耗,確定實(shí)際加油量和非正常消耗的時(shí)間與數(shù)量,有利于管理人員對(duì)油料消耗的有效管理。油耗信息采集部分使用油耗傳感器進(jìn)行采集,通過焊接在MB9BF506R開發(fā)板上一個(gè)外設(shè)引腳的連線進(jìn)行傳輸,油耗統(tǒng)計(jì)部分以外設(shè)引腳上的外部中斷方式對(duì)油耗脈沖進(jìn)行計(jì)數(shù),并在LCD上顯示,油耗報(bào)警部分則通過對(duì)采集的脈沖進(jìn)行分析實(shí)現(xiàn)。
cortex-m3 油耗監(jiān)控 MB9BF506F
隨著不可再生資源石油的消耗不斷增加,汽車油料消耗在運(yùn)輸成本中的比重也日益增大,同時(shí)油料的非正常消耗現(xiàn)象也隨著油價(jià)的上漲而愈演愈烈。而企業(yè)目前尚無有效的監(jiān)控方式和技術(shù)手段,給企業(yè)造成了不必要的經(jīng)濟(jì)損失。因此,企業(yè)管理者迫切需要一種實(shí)時(shí)的油耗監(jiān)控儀器,能夠在不改變汽車構(gòu)造、不更換任何配件且不影響車輛任何操作和功能的基礎(chǔ)上,全程實(shí)時(shí)監(jiān)控車輛燃油消耗,確定實(shí)際加油量和非正常消耗的時(shí)間與數(shù)量,有利于管理人員對(duì)油料消耗的有效管理。
本系統(tǒng)由油耗傳感器和FSS MB9BF506R[1]開發(fā)板組成。其中,油耗傳感器實(shí)現(xiàn)油耗采集以及脈沖傳送到MB9BF506R 開發(fā)板,MB9BF506R 開發(fā)板進(jìn)行油耗脈沖統(tǒng)計(jì),得出油量消耗的情況,并通過對(duì)脈沖的統(tǒng)計(jì)分析,實(shí)時(shí)監(jiān)測油耗異常消耗情況,定時(shí)上報(bào)油耗信息。
基于ARM cortex[2]的車輛油耗采集系統(tǒng)的系統(tǒng)功能模塊如圖1所示。
圖1 系統(tǒng)功能模塊圖
1.1.1系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)是以MB9BF506R開發(fā)板的一個(gè)引腳作為油耗傳感器[3]的脈沖接收引腳,采集統(tǒng)計(jì)脈沖數(shù),通過LCD顯示統(tǒng)計(jì)的油耗數(shù),在采集統(tǒng)計(jì)中還包括LED燈,用于對(duì)當(dāng)前油耗非正常消耗的報(bào)警。
圖2為開發(fā)板按鍵的簡化電路圖,圖中按鍵處于高電平,當(dāng)按鍵壓下時(shí)會(huì)產(chǎn)生一個(gè)低電平的脈沖。由于油耗傳感器傳輸過來的是一個(gè)低脈沖,可選用UP口作為脈沖接收口,實(shí)現(xiàn)油耗脈沖的捕獲。在開發(fā)板上焊接UP口的引腳,連接油耗傳感器的線路,實(shí)現(xiàn)車輛油耗采集系統(tǒng)的硬件連接。
圖2 開發(fā)板按鍵簡化電路圖
1.1.2系統(tǒng)軟件設(shè)計(jì)
(1)I/O口設(shè)置
圖3可以看出,UP引腳位于芯片外設(shè)的引腳AD22,經(jīng)查開發(fā)板的硬件數(shù)據(jù)手冊[4],可取得該引腳p41,為復(fù)用引腳(p41,TIOA1_0,RTO11_1,INT13_1,MAD21)??蓪⒁_p41配置成外部中斷觸發(fā)引腳,用于低脈沖發(fā)生時(shí),進(jìn)行中斷觸發(fā)。
通過設(shè)置I/O口各寄存器[5],可以選擇I/O方向或者確定I/O口作為GPIO或外設(shè)端口。本系統(tǒng)將該P(yáng)41引腳用作外設(shè)功能的I/O引腳,EINT-ch13的輸入引腳使用INT13_1。其設(shè)置流程圖如圖4所示。
圖4 GPIO設(shè)置流程圖
1.1.3系統(tǒng)程序流程圖
本系統(tǒng)使用雙定時(shí)器和中斷嵌套[6]實(shí)現(xiàn)多任務(wù)系統(tǒng),提高cortex-m3芯片的作用率,在整個(gè)系統(tǒng)工作中,使用三個(gè)任務(wù)進(jìn)行整個(gè)系統(tǒng)控制。
主程序流程圖(見圖5)中,主程序相當(dāng)于一個(gè)任務(wù),用來顯示當(dāng)前采集到的油耗脈沖數(shù)和設(shè)定一些供中斷使用的設(shè)定值等,這些信息通過全局變量[7]進(jìn)行控制,使各個(gè)中斷都能使用,讓程序聯(lián)系緊密。
圖5 主程序流程圖
先目測,觀察開發(fā)板制作是否精細(xì),表面引腳是否有短接情況,觀察電路板的引線布置,對(duì)按鍵UP的外設(shè)引腳進(jìn)行觀察,用外用表測量按鍵之間是否導(dǎo)通、短路。檢查無誤后可以開始焊接油耗傳感器的電路線到相應(yīng)的外設(shè)引腳上,焊接完再次檢查焊接引腳是否導(dǎo)通、短路,檢查無誤后方可進(jìn)行系統(tǒng)調(diào)試。油耗傳感器的連接見圖6。
圖6 油耗傳感器連接
2.2.1油耗采集的實(shí)現(xiàn)
通過向油耗傳感器吹氣,推動(dòng)傳感器里面的門閥,每5mL的油耗產(chǎn)生一個(gè)低脈沖,傳遞到開發(fā)板進(jìn)行統(tǒng)計(jì)。圖7為油耗采集系統(tǒng)成功統(tǒng)計(jì)到脈沖數(shù)和油耗,并在LCD上顯示。
圖7 油耗采集系統(tǒng)的實(shí)現(xiàn)
2.2.2油耗異常消耗報(bào)警的實(shí)現(xiàn)
通過對(duì)采集到的油耗信息進(jìn)行統(tǒng)計(jì)分析,當(dāng)油耗每秒的脈沖數(shù)超過正常值的峰值5時(shí),LED4亮起報(bào)警,當(dāng)開發(fā)板每小時(shí)采集到的油耗大于正常消耗的峰值10L時(shí),LED3亮起報(bào)警(這里為實(shí)現(xiàn)的方便,取10L在20秒內(nèi)的平均脈沖值55),見圖8。
圖8 每20秒內(nèi)油耗異常消耗報(bào)警
本系統(tǒng)基于ARM cortex-m3的車輛油耗采集系統(tǒng)的設(shè)計(jì),包括硬件設(shè)計(jì)、軟件設(shè)計(jì)和系統(tǒng)程序流程以及系統(tǒng)調(diào)試,仿真實(shí)驗(yàn)和實(shí)現(xiàn)。通過使用油耗傳感器,焊接到MB98BF506R開發(fā)板的一個(gè)外設(shè)引腳,實(shí)現(xiàn)油耗信息的采集和傳輸。使用基于Cortex-M3的Fujitsu MB98BF506R開發(fā)板,通過采集到油耗傳感器發(fā)送的脈沖數(shù),進(jìn)行統(tǒng)計(jì)分析,計(jì)算出油耗消耗量和油耗消耗速率,進(jìn)行油耗采集信息的分析和處理,實(shí)時(shí)監(jiān)控油量消耗,自動(dòng)報(bào)警非正常的油耗消耗,定時(shí)上報(bào)油耗消耗信息。
[1] 富士通MB9BF5006R-數(shù)據(jù)手冊. 2011.
[2] (英)Joseph Yiu.ARM Cortex-M3權(quán)威指南[M]. 北京:北京航空航天大學(xué)出版社, 2009.
[3] 劉洪濤.嵌入式系統(tǒng)技術(shù)與設(shè)計(jì)[M].北京:人民郵電學(xué)出版社, 2010.
[4] 周立功. ARM微處理器基礎(chǔ)與實(shí)戰(zhàn)[M]. 北京:北京航空航天大學(xué)出版社, 2011.
[5] 韓斌杰. GPRS原理及其網(wǎng)絡(luò)優(yōu)化[M]. 北京: 機(jī)械工業(yè)出版社,2010.
[6] 杜春雷. ARM體系結(jié)構(gòu)與編程[M]. 北京: 清華大學(xué)出版社,2010.
[7]劉洪濤, 等. ARM嵌入式體系結(jié)構(gòu)與接口技術(shù)[M]. 北京: 人民郵電出版社, 2011.