車載數(shù)據(jù)記錄壓縮算法的分析
出處:電子產(chǎn)品世界 發(fā)布于:2011-06-19 08:48:14
現(xiàn)在的智能儀器儀表大多需要進(jìn)行數(shù)據(jù)的記錄和轉(zhuǎn)儲(chǔ)分析,以提高儀器的離線分析能力,如故障診斷等。隨著大容量存儲(chǔ)技術(shù)的發(fā)展,數(shù)據(jù)記錄和轉(zhuǎn)儲(chǔ)被廣泛應(yīng)用于機(jī)電測(cè)控系統(tǒng)、智能儀器儀表等單片機(jī)系統(tǒng)之中。在"機(jī)車隨車質(zhì)量狀態(tài)故障診斷記錄裝置"的設(shè)計(jì)中,采用兩片共計(jì)1024KBYTE的FLASHRAM28SF040,對(duì)機(jī)車運(yùn)行中的司機(jī)號(hào)、車號(hào)、出退勤時(shí)間等緩變信息的記錄,以及機(jī)車質(zhì)量狀態(tài)故障監(jiān)測(cè)診斷的32路實(shí)時(shí)數(shù)據(jù)信息以16位每5s的實(shí)時(shí)記錄。為了滿足連續(xù)記錄50小時(shí)以上的實(shí)際需求,提出了緩變系統(tǒng)信息和實(shí)時(shí)數(shù)據(jù)信息分區(qū)存儲(chǔ)的方案,對(duì)系統(tǒng)信息采用了定長(zhǎng)非壓縮算法,對(duì)實(shí)時(shí)數(shù)據(jù)信息采用了非定長(zhǎng)的行間壓縮算法。并對(duì)數(shù)據(jù)記錄信息進(jìn)行了長(zhǎng)度校核,同時(shí)對(duì)數(shù)據(jù)進(jìn)行了CRC校驗(yàn)。


智能儀器儀表和傳統(tǒng)儀器儀表相比,的優(yōu)勢(shì)就是智能性,在監(jiān)測(cè)被測(cè)系統(tǒng)的同時(shí)可對(duì)數(shù)據(jù)進(jìn)行記錄分析和處理,如飛機(jī)的"黑匣子",火車的"列車運(yùn)行安全監(jiān)控記錄儀"、"機(jī)車錄音裝置"、"機(jī)車狀態(tài)診斷記錄裝置"、"機(jī)車軸承溫度監(jiān)測(cè)報(bào)警記錄裝置"等等。記錄與轉(zhuǎn)儲(chǔ)適用于安全監(jiān)控、事故分析處理、狀態(tài)故障診斷、統(tǒng)計(jì)分析與預(yù)測(cè)等等。
車載數(shù)據(jù)記錄內(nèi)容及各參數(shù)記錄頻度分析
數(shù)據(jù)通過(guò)車載設(shè)備的IC卡座寫入IC卡后,需要專門的讀卡器和地面PC機(jī)相連,PC機(jī)通過(guò)讀卡器,將IC卡上轉(zhuǎn)儲(chǔ)的數(shù)據(jù)讀入PC機(jī)中進(jìn)行數(shù)據(jù)分析處理。機(jī)車隨車質(zhì)量狀態(tài)診斷記錄儀需要記錄的運(yùn)行信息內(nèi)容包括:車號(hào)(0~9999)、司機(jī)代碼號(hào)(0~99999)、車次號(hào)(0~99999)、起始站代碼(0~999)、終止站代碼(0~999)、牽引重量(0~9999),共計(jì)14BYTE.
實(shí)時(shí)狀態(tài)參數(shù)包括:年、月、日、時(shí)、分、秒,6BYTE,以及柴油機(jī)轉(zhuǎn)速、主電流、六個(gè)分電流、電壓、軸溫、油水溫度、總管溫度、增壓壓力、進(jìn)回油(油耗)、馬達(dá)轉(zhuǎn)速、火情報(bào)警等32路實(shí)時(shí)參數(shù),各2BYTE.共計(jì):6BYTE+2×32BYTE=70BYTE.

機(jī)車運(yùn)行信息,其記錄的頻度是非常低的,大約每10小時(shí)記錄,記錄的條件為:系統(tǒng)上電、司機(jī)參數(shù)輸入,即輸入新的車號(hào)、司機(jī)代碼等。
機(jī)車實(shí)時(shí)狀態(tài)參數(shù),其記錄的頻度為每5s全部記錄。但32路實(shí)時(shí)參數(shù)中,每次多只有四分之一,即8個(gè)左右的量滿足記錄變化條件,且進(jìn)回油參數(shù)必須每5S記錄。車載數(shù)據(jù)記錄和存儲(chǔ)的介質(zhì)有:一般RAM,,FLASHRAM,IC卡,大容量語(yǔ)音芯片等
幾種常用數(shù)據(jù)記錄算法分析
非分區(qū)非壓縮算法
通過(guò)以上的分析,如果我們將全部參數(shù)不采用任何壓縮記錄算法,則每5s記錄的數(shù)據(jù)長(zhǎng)度將達(dá):6BYTE+14BYTE+64BYTE=84BYTE.這樣全部1024KBYTE的記錄容量只能記錄:
1024KBYTE÷84BYTE=1024×1024÷84=12483次
記錄時(shí)間為:
12483×5s=62415s=1040min=17h
分區(qū)非壓縮算法
將系統(tǒng)1024KBYTE的存儲(chǔ)空間分成:0~63頁(yè),每頁(yè)16KBYTE的分區(qū)存儲(chǔ)格式。將機(jī)車運(yùn)行信息14BYTE和上電時(shí)間或司機(jī)輸入?yún)?shù)時(shí)間以及其他系統(tǒng)參數(shù),如報(bào)警門限、標(biāo)定系數(shù)、DS1820/B20傳感器代碼等記錄在系統(tǒng)的0~63頁(yè)的0頁(yè),共計(jì)16KBYTE的空間,因?yàn)橄到y(tǒng)信息只有在上電、復(fù)位和參數(shù)輸入時(shí)才需要記錄,所以16KBYTE的系統(tǒng)記錄區(qū)無(wú)需任何壓縮算法將足以滿足系統(tǒng)的使用。

系統(tǒng)分區(qū)的0頁(yè)區(qū)為系統(tǒng)信息存儲(chǔ)區(qū),1~63頁(yè)區(qū)為數(shù)據(jù)信息存儲(chǔ)區(qū),如果數(shù)據(jù)記錄不采用壓縮的算法,則每5s需要70BYTE的存儲(chǔ)空間,這樣存儲(chǔ)次數(shù)為:
63×16KBYTE÷70BYTE=14745次
記錄時(shí)間為:
14745×5s=73725s=20小時(shí)
分區(qū)壓縮算法
數(shù)據(jù)塊首標(biāo)志,數(shù)據(jù)中保證者為0FFFEH
4×8=32個(gè)數(shù)據(jù)變化標(biāo)記,變化則為1
依次從低至高記錄變化數(shù)據(jù),長(zhǎng)度=2×變化標(biāo)記位數(shù),長(zhǎng)度校核。分區(qū)壓縮算法(系統(tǒng)信息) 中包含了數(shù)據(jù)信息的首地址指針和時(shí)間.
通過(guò)分區(qū)非壓縮算法的分析,系統(tǒng)存儲(chǔ)區(qū)的16KBYTE足以滿足需要,關(guān)鍵在于數(shù)據(jù)信息的存儲(chǔ)算法,對(duì)圖2和圖3的分析,可以分析出如下信息:
?、佟⑾到y(tǒng)信息的記錄和數(shù)據(jù)信息的記錄均需要記錄時(shí)間信息;
?、凇?shù)據(jù)信息記錄的時(shí)間信息在系統(tǒng)信息不變的情況下,記錄時(shí)間間隔固定為5s;
?、?、數(shù)據(jù)信息記錄參數(shù)在數(shù)據(jù)不變的情況下重復(fù)記錄相同的數(shù)值;
通過(guò)一個(gè)32位的標(biāo)記信息,標(biāo)記每個(gè)數(shù)據(jù)信息的變化與否,如果某一數(shù)據(jù)沒有發(fā)生變化,標(biāo)記為0,變化則標(biāo)記為1,同時(shí)記錄下變化后的數(shù)值。
如圖5所示,如D0代表柴油機(jī)轉(zhuǎn)速,當(dāng)D0=0時(shí),表示當(dāng)前記錄中的柴油機(jī)轉(zhuǎn)速和上次的相同,此次無(wú)需記錄柴油機(jī)轉(zhuǎn)速值,D0=1時(shí),表示柴油機(jī)轉(zhuǎn)速發(fā)生了變化,則需要記錄柴油機(jī)轉(zhuǎn)速。

例如:司機(jī)號(hào)為1234號(hào)的司機(jī),2001年2月12日11時(shí)54分30秒上車,系統(tǒng)記錄區(qū)中記錄一條系統(tǒng)信息,其中記錄下此時(shí)數(shù)據(jù)記錄區(qū)中的起始頁(yè)區(qū)號(hào)和起始地址。他出乘時(shí)的條記錄從第30頁(yè)的2E5FH開始必須記錄全部32路參數(shù)的初始值,第1號(hào)參數(shù)和第5、7號(hào)參數(shù)發(fā)生了變化需要記錄,則記錄標(biāo)記中只有的D1=1、D5=1、D7=1,其它各位為0,隨后依次記錄第1號(hào)參數(shù)和第5、7號(hào)參數(shù)各2BYTE的數(shù)值。記錄格式如圖6所示。

分區(qū)壓縮算法的解壓縮算法
裝置通過(guò)數(shù)據(jù)轉(zhuǎn)儲(chǔ)進(jìn)入PC機(jī)數(shù)據(jù)分析處理系統(tǒng)后,根據(jù)分區(qū)壓縮算法,分析系統(tǒng)首先在第0頁(yè)中,依次以23BYTE為一條系統(tǒng)記錄,分別讀取各司機(jī)出乘時(shí)的起始時(shí)間,系統(tǒng)信息,以及對(duì)應(yīng)數(shù)據(jù)記錄區(qū)的起始頁(yè)區(qū)和起始地址,然后到對(duì)應(yīng)位置讀取條數(shù)據(jù)信息,首先讀取2BYTE的FFFFH記錄塊首,然后第1條信息中4BYTE的數(shù)據(jù)變化標(biāo)記信息判定當(dāng)前記錄中對(duì)應(yīng)參數(shù)的變化記錄情況,并在標(biāo)記之后依次讀取對(duì)應(yīng)變化參數(shù)的各2BYTE,接著讀取第1記錄的CRC校驗(yàn)碼1BYTE。
數(shù)據(jù)記錄長(zhǎng)度校驗(yàn)
在數(shù)據(jù)記錄中增加了固定的2BYTE的FFFFH,同時(shí)在參數(shù)記錄中限定記錄的參數(shù)值不大于0FFFFH,這樣當(dāng)讀取4BYTE參數(shù)變化標(biāo)記,假定有n個(gè)參數(shù)變化記錄,則在4BYTE的參數(shù)變化標(biāo)記之后應(yīng)該正好有n個(gè)非0FFFFH的參數(shù)值,多于n或小于n都認(rèn)為此記錄有誤,此記錄的全部參數(shù)和上一條記錄相同,時(shí)間+5s.
數(shù)據(jù)記錄CRC校驗(yàn)
數(shù)據(jù)壓縮記錄時(shí),從0FFFFH塊首開始到一個(gè)變化參數(shù)的記錄數(shù)據(jù)采用8BIT的CRC校驗(yàn)算法。如圖7所示。

CRC=X8+X5+X4+1
地面數(shù)據(jù)處理首先需要對(duì)車載記錄數(shù)據(jù)進(jìn)行讀取和存儲(chǔ),建立數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)可采用:ACCESS,VISUAL FOX (DBASE系列),ORACLE,SYBASE等等
數(shù)據(jù)的分析和處理的主要功能包括:
1.______ 數(shù)據(jù)的數(shù)字化顯示;
2.______ 數(shù)據(jù)的圖形化顯示;
3.______ 數(shù)據(jù)分析和統(tǒng)計(jì),故障診斷等;
4. 數(shù)據(jù)報(bào)表和打印。
結(jié)語(yǔ)
基于分區(qū)壓縮算法,在機(jī)車隨車質(zhì)量狀態(tài)診斷記錄裝置中,數(shù)據(jù)記錄區(qū)無(wú)需記錄時(shí)間,記錄參數(shù)也采用了壓縮記錄的算法,在32個(gè)參數(shù)中每5s平均多只有8個(gè)參數(shù)發(fā)生變化需要記錄則記錄,則平均每條數(shù)據(jù)記錄的長(zhǎng)度為23BYTE,因此,1~63頁(yè)的數(shù)據(jù)記錄可以存儲(chǔ)的記錄條數(shù)為:
63×16KBYTE÷23BYTE=44877次
連續(xù)記錄時(shí)間為:
44877×5s=224385s=62小時(shí)
連續(xù)記錄62小時(shí),滿足了裝置連續(xù)記錄50小時(shí)的要求,且系統(tǒng)采用了記錄長(zhǎng)度校核算法以及較為嚴(yán)格的CRC校驗(yàn)算法,提高了裝置記錄數(shù)據(jù)的可靠性,該裝置已通過(guò)鄭州鐵路局技術(shù)鑒定,該裝置在一年半的裝車實(shí)際運(yùn)用中,記錄可靠,由于機(jī)車每天實(shí)際運(yùn)行時(shí)間小于15小時(shí),且每條記錄平均變化數(shù)小于假定的8個(gè),因此,實(shí)際記錄時(shí)間在6~7天左右。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 掌握 DSP:原理剖析與應(yīng)用實(shí)踐2025/5/8 14:03:24
- 模糊邏輯在 DSP 上實(shí)時(shí)執(zhí)行2023/7/25 17:13:30
- 多速率DSP及其在數(shù)模轉(zhuǎn)換中的應(yīng)用2023/6/12 15:28:52
- 使用 DSP 加速 CORDIC 算法2023/3/29 15:46:30
- 高速DSP系統(tǒng)的信號(hào)完整性2022/9/26 16:45:38
- PCB測(cè)試點(diǎn)設(shè)計(jì)核心規(guī)范
- 高速連接器串?dāng)_問(wèn)題及解決方案
- 電源電路啟動(dòng)異常原因分析
- 降低DC-DC噪聲的PCB設(shè)計(jì)方法
- MOSFET在電池保護(hù)電路中的作用
- PCBDFM可制造性設(shè)計(jì)核心指南
- 二極管的種類及主要應(yīng)用場(chǎng)景
- 信號(hào)處理經(jīng)典問(wèn)題:如何設(shè)計(jì)和實(shí)現(xiàn)自適應(yīng)濾波器?
- 連接器安裝與維護(hù)注意事項(xiàng)
- 電源IC調(diào)試過(guò)程中常見問(wèn)題









