一種基于can總線的數(shù)據(jù)采集系統(tǒng)及采集處理方法
【專利說明】
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于汽車電子設(shè)計開發(fā)技術(shù)領(lǐng)域,特別涉及一種基于CAN總線的數(shù)據(jù)采集系統(tǒng)及采集處理方法。
【【背景技術(shù)】】
[0002]隨著國外汽車公司涉足中國市場,先進(jìn)技術(shù)的引進(jìn)及國內(nèi)現(xiàn)有技術(shù)的不斷進(jìn)步,我國商用汽車領(lǐng)域電子化程度在不斷加劇。隨著汽車電子技術(shù)的飛速發(fā)展,汽車電子化程度越來越高,傳統(tǒng)布線方式已經(jīng)不能滿足需求。整車領(lǐng)域由于對駕駛舒適度的需求使得電子化發(fā)展迅速,整車CAN通信技術(shù)已經(jīng)較為成熟,各類配套設(shè)備完善。隨著道路安全意識深入人心,各類輔助制動,ABS等安全設(shè)備都逐漸走入商用汽車用戶的視野。但是這類產(chǎn)品往往都需要電控單元進(jìn)行系統(tǒng)控制,并通過CAN通信與整車進(jìn)行協(xié)調(diào),實際操作中帶來很多不便。CAN通信已經(jīng)作為汽車上設(shè)備控制,設(shè)備間協(xié)調(diào)工作,故障反饋,信息通信的重要方式。
【
【發(fā)明內(nèi)容】
】
[0003]本發(fā)明的目的在于克服上述現(xiàn)有技術(shù)的缺點,提供了一種基于CAN總線的數(shù)據(jù)采集系統(tǒng)及采集處理方法,本系統(tǒng)實現(xiàn)了對被測試對象的安全操作,并且結(jié)構(gòu)簡單、操作方便。
[0004]為達(dá)到上述目的,本發(fā)明采用以下技術(shù)手段:
[0005]一種基于CAN總線的數(shù)據(jù)采集系統(tǒng),包括主控制模塊、顯示模塊及數(shù)據(jù)采集模塊;其中,
[0006]所述的主控制模塊包括微處理器、總線處理電路、模擬電路和CAN控制器,總線處理電路、模擬電路和CAN控制器均與微處理器、電連接;CAN控制器還通過CAN收發(fā)器與CAN總線連接;
[0007]所述的顯示模塊連接所述主控制模塊的微處理器,用于人機(jī)交互,顯示當(dāng)前采集的車輛的參數(shù)信息和故障狀態(tài);
[0008]所述的數(shù)據(jù)采集模塊與安裝在車輛上的數(shù)據(jù)采集裝置連接,數(shù)據(jù)采集模塊通過處理電路與微處理器。
[0009]優(yōu)選的,所述的CAN控制器與CAN收發(fā)器之間還設(shè)置有光電隔離。
[0010]優(yōu)選的,所述的數(shù)據(jù)采集模塊包括模擬量數(shù)據(jù)采集模塊和數(shù)字量數(shù)據(jù)采集模塊,通過各自對應(yīng)的處理電路與主控制模塊連接;數(shù)字量數(shù)據(jù)采集模塊與整車的參數(shù)采集裝置連接,,模擬量數(shù)據(jù)采集模塊連接多路I/o信號。
[0011]優(yōu)選的,所述的CAN控制器包括CAN初始化子程序、CAN中斷程序和CAN數(shù)據(jù)收發(fā)子程序。
[0012]優(yōu)選的,所述的CAN控制器還包括均與的CAN控制器主芯片連接的數(shù)據(jù)收發(fā)模塊、軟件看門狗模塊、開關(guān)量信號處理模塊、頻率處理模塊、自檢模量和A/D采樣處理模塊,
[0013]所述的自檢模塊用于接收到上位機(jī)發(fā)出的自檢命令后,微控制器斷開外部信號的輸入,系統(tǒng)內(nèi)部產(chǎn)生的標(biāo)準(zhǔn)信號被接入數(shù)據(jù)采集系統(tǒng),將得到的數(shù)據(jù)上傳到上位機(jī)與標(biāo)準(zhǔn)值進(jìn)行比較,以確定故障點是傳感器系統(tǒng)還是數(shù)據(jù)采集系統(tǒng),若自檢通過則表示數(shù)據(jù)采集系統(tǒng)工作正常;
[0014]所述的數(shù)據(jù)發(fā)送模塊用于對上位機(jī)的數(shù)據(jù)通信,每隔100毫秒將數(shù)據(jù)分組發(fā)送到上位機(jī);
[0015]所述的數(shù)據(jù)轉(zhuǎn)存模塊用于完成各種數(shù)據(jù)寫入CAN控制器片主RAM ;
[0016]所述的Α/D采樣模塊用于將數(shù)據(jù)采集模塊的每一路12位采樣數(shù)據(jù)分兩次讀入指定的RAM單元中。
[0017]優(yōu)選的,還包括與主控制模塊連接的濾波電路和保護(hù)電路,濾波電路和保護(hù)電路設(shè)置在數(shù)據(jù)采集裝置和處理電路之間。
[0018]一種基于CAN總線的數(shù)據(jù)采集處理方法,包括以下步驟:
[0019]I)數(shù)據(jù)采集模塊采集車輛實時參數(shù)信號,通過對應(yīng)的處理電路進(jìn)行處理,在顯示模塊上進(jìn)行顯示;
[0020]2)微處理器控制CAN控制器根據(jù)CAN總線或本地指令,按照控制策略,對響應(yīng)的數(shù)據(jù)進(jìn)行采集和分析處理操作,實現(xiàn)對產(chǎn)品的測試;
[0021]3)采集得到的數(shù)據(jù)在CAN控制器內(nèi)完成CAN協(xié)議包的封裝,由發(fā)送端口經(jīng)發(fā)送器傳送到CAN總線上。
[0022]作為本發(fā)明的進(jìn)一步改進(jìn),步驟2)之前還包括CAN控制器初始化步驟:當(dāng)CAN中斷寄存器復(fù)位請求被置位時,CAN內(nèi)部地址的寄存器可被訪問,在復(fù)位操作結(jié)束后將該位置O。
[0023]作為本發(fā)明的進(jìn)一步改進(jìn),步驟3)還包括中斷處理步驟:CAN中斷子程序首先讀CAN中斷寄存器以判斷中斷類型,據(jù)此轉(zhuǎn)入相應(yīng)的操作:如果接收緩存器存滿而另一個報文的首字節(jié)又需要被存儲時,數(shù)據(jù)超限位被置位,則調(diào)用CAN初始化子程序,清除超限并釋放接收緩存,然后重新發(fā)送數(shù)據(jù)請求;如果正常則進(jìn)行判斷是否是遠(yuǎn)程數(shù)據(jù)請求,若是,則數(shù)據(jù)發(fā)送給CAN數(shù)據(jù)收發(fā)子程序;若否,在數(shù)據(jù)接受子程序中當(dāng)數(shù)據(jù)被轉(zhuǎn)入CAN控制器的RAM區(qū)后,應(yīng)及時釋放接受緩存器,為接收下一幀數(shù)據(jù)做好準(zhǔn)備。
[0024]作為本發(fā)明的進(jìn)一步改進(jìn),還包括自檢步驟:自檢模塊接收到上位機(jī)發(fā)出的自檢命令后,微控制器斷開外部信號的輸入,系統(tǒng)內(nèi)部產(chǎn)生的標(biāo)準(zhǔn)信號被接入數(shù)據(jù)采集系統(tǒng),將得到的數(shù)據(jù)上傳到上位機(jī)與標(biāo)準(zhǔn)值進(jìn)行比較,以確定故障點是傳感器系統(tǒng)還是數(shù)據(jù)采集系統(tǒng),若自檢通過則表示數(shù)據(jù)采集系統(tǒng)工作正常。
[0025]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益的技術(shù)效果:
[0026]本發(fā)明系統(tǒng)采用模塊化的設(shè)計可根據(jù)不同產(chǎn)品快速的進(jìn)行移植和開發(fā),能夠為多款產(chǎn)品提供相應(yīng)服務(wù),其數(shù)據(jù)采集和分析為一體的采集系統(tǒng)。成熟的開發(fā)編譯環(huán)境和優(yōu)良的代碼優(yōu)化為系統(tǒng)提供更加可靠地穩(wěn)定性能。由于具有良好的二次開發(fā)功能,顯示功能靈活多變,具有數(shù)據(jù)顯示,對產(chǎn)品的運維狀態(tài)實時反饋,方便開發(fā)人員對產(chǎn)品進(jìn)行維護(hù)和升級的數(shù)據(jù)采集系統(tǒng),降低維護(hù)成本。
[0027]進(jìn)一步,在模一數(shù)電路之間和系統(tǒng)到CAN總線之間采用了光電隔離,能夠提高系統(tǒng)抗干擾能力。
[0028]進(jìn)一步,系統(tǒng)中增加了響應(yīng)的濾波和保護(hù)電路以了提高可靠性和穩(wěn)定性。
[0029]本發(fā)明的方法簡單,采集數(shù)據(jù)準(zhǔn)確,能夠?qū)崟r、準(zhǔn)確的采集和分析車輛的參數(shù)和故障情況,給測試帶來便捷和數(shù)據(jù)支持。實現(xiàn)了對被測試對象的安全操作,并且結(jié)構(gòu)簡單、操作方便。
[0030]進(jìn)一步,CAN控制器初始化檢驗程序是否合理,前期避免不利因素影響整個通信過程。
[0031]進(jìn)一步,自檢步驟可以很好的檢驗數(shù)據(jù)采集系統(tǒng)工作正常,確保后續(xù)工作的正常。【【附圖說明】】
[0032]圖1本發(fā)明數(shù)據(jù)采集的硬件控制單元;
[0033]圖2本發(fā)明數(shù)據(jù)采集的軟件流程圖;
[0034]圖3本發(fā)明數(shù)據(jù)采集的中斷處理流程圖。
【【具體實施方式】】
[0035]下面結(jié)合附圖對本發(fā)明做進(jìn)一步詳細(xì)描述:
[0036]如圖1所示,本發(fā)明針對某款車輛上相關(guān)信號,設(shè)計了一套基于CAN總線的數(shù)據(jù)采集,其中包含主控制模塊、顯示模塊及數(shù)據(jù)采集模塊,主控制模塊包括微處理器、總線處理電路、模擬電路和CAN控制器。CAN控制器通過CAN收發(fā)器與汽車CAN總線連接通信,通過軟硬件設(shè)計所述主控制模塊的微處理器與總線處理電路、CAN總線芯片、模擬電路均連接,程序運行后,根據(jù)CAN總線或本地指令,按照一定的控制策略,對響應(yīng)的數(shù)據(jù)進(jìn)行采集和分析處理操作,實現(xiàn)對產(chǎn)品的測試。所述顯示模塊用于人機(jī)交互,通過顯示當(dāng)前采集的車輛的相關(guān)信息如(發(fā)動機(jī)油水溫、工作指示燈、ABS狀態(tài)等)、故障狀態(tài)等,可幫助操作者隨時了解車輛運行情況。數(shù)據(jù)采集模塊包括模擬量數(shù)據(jù)采集模塊和數(shù)字量數(shù)據(jù)采集模塊兩個模塊,通過各自對應(yīng)的處理電路與主控制模塊連接。數(shù)字量數(shù)據(jù)采集模塊主要連接整車的各個采集裝置連接,測試整車溫度信號、頻率脈沖信號等。模擬量數(shù)據(jù)采集模塊連接多路I/O十目號等。
[0037]圖1給出了系統(tǒng)硬件結(jié)構(gòu)圖。系統(tǒng)采用的16位高性能微控制器其主要特性有:內(nèi)建與內(nèi)部RAM進(jìn)行DMA數(shù)據(jù)傳送的CAN控制器;含多個捕獲端口位定時/計數(shù)器,模擬量輸入,在片CAN控制器可以完全實現(xiàn)CAN協(xié)議,因此減少了系統(tǒng)連