一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法
【專利摘要】本發(fā)明公開了一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,包括以下步驟:(1)建立測(cè)試并監(jiān)控總線消息;(2)對(duì)總線消息進(jìn)行篩選;(3)驗(yàn)證總線消息;(4)輸出結(jié)果并保存總線消息;本發(fā)明具能夠迅速對(duì)各種車型的總線消息協(xié)議進(jìn)行逆向分析;逆向分析快速準(zhǔn)確,過程簡(jiǎn)單,效率高,大大降低了人工的工作量;能夠建立各種車型的總線消息協(xié)議數(shù)據(jù)庫,對(duì)開發(fā)帶來很大的便利,同時(shí)也大大降低了開發(fā)的成本。
【專利說明】一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法。
【背景技術(shù)】
[0002]目前車身總線信息在售后改裝的車載娛樂系統(tǒng)上的應(yīng)用已經(jīng)越來越多,對(duì)車載娛樂系統(tǒng)的智能化和功能多樣化也有很大的影響。比如我們可以通過獲取車門開關(guān)的總線信息,設(shè)計(jì)出安全駕駛模式提醒;根據(jù)車輛倒檔總線信息啟動(dòng)倒車系統(tǒng)等等。但實(shí)際中會(huì)經(jīng)常因?yàn)闊o法獲得車輛總線協(xié)議,而需要使用總線分析儀對(duì)車身總線信息進(jìn)行逆向分析,以獲得車身總線協(xié)議,這時(shí)候就需要對(duì)車輛總線信息進(jìn)行逆向分析。(總線逆向分析:通過人工操作和人眼觀察總線數(shù)據(jù)變化規(guī)律,以破譯總線消息的時(shí)序意義和數(shù)據(jù)定義)??偩€功能開發(fā)在現(xiàn)代車載娛樂安全系統(tǒng)上有很大的發(fā)展遠(yuǎn)景,但是總線功能數(shù)據(jù)庫相對(duì)于一款車型來說是保密協(xié)議,一般對(duì)于后期開發(fā)的公司或個(gè)人來說,獲取成本較高或沒有獲取途徑,那么逆向總線消息分析便成了比較可行的代替方法。目前從車上總線上獲取活躍在總線上的消息的技術(shù)已經(jīng)較為成熟,但是往往呈現(xiàn)在人們眼前的是成百上千條不斷變化的數(shù)據(jù),對(duì)逆向分析總線信號(hào)而言造成極大干擾,如果需要從中找到所需的消息并整理出其與車身的對(duì)應(yīng)關(guān)系,顯然人工查找是耗時(shí)耗 力,且效率也不高。因此我們要從上述各種的總線消息總找出與實(shí)際操作對(duì)應(yīng)的消息,即所謂的總線數(shù)據(jù)庫,很顯然,總線逆向分析將會(huì)是一個(gè)很大的工作量,且效率低下。
【發(fā)明內(nèi)容】
[0003]為了解決上述的現(xiàn)有技術(shù)在總線消息逆向分析上存在的不足,本發(fā)明提供一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的設(shè)計(jì)方案。
[0004]一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,包括以下步驟:(1)建立測(cè)試并監(jiān)控總線消息;(2)對(duì)總線消息進(jìn)行篩選;(3)驗(yàn)證總線消息;(4)輸出結(jié)果并保存總線消息;
具體的,所述步驟(1)的方法為:
(11)設(shè)置待測(cè)試功能,并設(shè)置測(cè)試的次數(shù)。
[0005]( 12)設(shè)置與上述待測(cè)試功能相對(duì)應(yīng)的一個(gè)或多個(gè)測(cè)試用例進(jìn)行測(cè)試。
[0006]( 13)順序?qū)Ω鱾€(gè)測(cè)試用例的總線消息進(jìn)行測(cè)試,根據(jù)測(cè)試用例對(duì)應(yīng)的含義發(fā)出相應(yīng)的等待操作的提示,并開始接收總線消息。
[0007](14)外界的人或設(shè)備根據(jù)相關(guān)提示,進(jìn)行相應(yīng)的操作后進(jìn)行反饋。
[0008](15)若在超時(shí)時(shí)間內(nèi)接收到操作完成的反饋消息,則保存接收到的總線消息,否則發(fā)出錯(cuò)誤警告并退出測(cè)試。
[0009]( 16)取下一個(gè)測(cè)試條目進(jìn)入步驟(13),直到所有測(cè)試用例測(cè)試完畢。
[0010](17)根據(jù)測(cè)試次數(shù)重復(fù)步驟(13)~(16)。
[0011]更具體的,對(duì)總線消息進(jìn)行篩選的方法為:(21)對(duì)接收到的每一條總線消息,獲取其消息的ID及數(shù)據(jù);(22)對(duì)相同ID的多條數(shù)據(jù)進(jìn)行數(shù)據(jù)變化規(guī)律比對(duì),若某一 ID的總線消息數(shù)據(jù)的變化規(guī)律符合待測(cè)功能在總線類型庫內(nèi)定義的變化規(guī)律,則判斷其為所設(shè)置的總線功能對(duì)應(yīng)的總線消息。
[0012]更具體的,總線消息數(shù)據(jù)的變化規(guī)律包括,固定值變化規(guī)律,開關(guān)值變化規(guī)律以及線性值變化規(guī)律;所述固定值變化規(guī)律,開關(guān)值變化規(guī)律以及線性值變化規(guī)律均包含一個(gè)或多個(gè)詳細(xì)變化規(guī)律定義。
[0013]更具體的,所述總線類型庫為待測(cè)試功能與其總線消息類型以及其對(duì)應(yīng)的總線數(shù)據(jù)變化規(guī)律的映射表。所述總線消息類型包含固定類,線性類以及開關(guān)類。
[0014]進(jìn)一步的,設(shè)置操作測(cè)試用例的方法包括:在存放有操作測(cè)試用例定義的數(shù)據(jù)表中選擇。
[0015]更進(jìn)一步的,驗(yàn)證總線消息對(duì)應(yīng)關(guān)系的方法為,重復(fù)一次或多次建立測(cè)試并監(jiān)控總線消息的操作,并根據(jù)多次測(cè)試所獲得的總線消息進(jìn)行比對(duì)判斷,若結(jié)果一致則確認(rèn)其為所設(shè)置的總線消息含義對(duì)應(yīng)的總線消息。
[0016]更進(jìn)一步的,保存總線消息并輸出結(jié)果的方法為:將測(cè)試的結(jié)果輸出,并根據(jù)測(cè)試的結(jié)果,將總線功能對(duì)應(yīng)的總線消息的ID,消息長(zhǎng)度,總線消息含義,數(shù)據(jù)變化的內(nèi)容存入數(shù)據(jù)庫。
[0017]綜上所述,本發(fā)明具有以下有益效果:(1)能夠迅速對(duì)各種車型的總線消息協(xié)議進(jìn)行逆向分析;(2)逆向分析快速準(zhǔn)確,過程簡(jiǎn)單,效率高,大大降低了人工的工作量;(3)能夠建立各種車型的總線消息協(xié)議建立數(shù)據(jù)庫,對(duì)開發(fā)帶來很大的便利,同時(shí)也大大降低了開發(fā)的成本。
【具體實(shí)施方式】
[0018]為了讓本領(lǐng)域的技術(shù)人員能夠更好地了解本發(fā)明的技術(shù)方案,下面對(duì)本發(fā)明作進(jìn)一步的闡述。
[0019]本發(fā)明揭示了一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,包括以下步驟:(1)建立測(cè)試并監(jiān)控總線消息;(2)對(duì)總線消息進(jìn)行篩選;(3)驗(yàn)證總線消息;(4)輸出結(jié)果并保存總線消息。
[0020]對(duì)于總線消息的數(shù)據(jù)變化類型,一般都是表現(xiàn)為下述的三類:
開關(guān)類(對(duì)應(yīng)開關(guān)值變化規(guī)律),在操作過程中在0和I之間變化,如車門信號(hào),安全帶信號(hào)。
[0021]固定編碼類(對(duì)應(yīng)固定值變化規(guī)律),在某個(gè)操作下,只有對(duì)應(yīng)一個(gè)固定的信號(hào)值,如檔位信號(hào)、空調(diào)的送風(fēng)模式信號(hào),不同固定值間沒有明顯的函數(shù)關(guān)系。
[0022]線性類(對(duì)應(yīng)線性值變化規(guī)律),在操作過程中以一定線性關(guān)系進(jìn)行變化的信號(hào),如時(shí)鐘信號(hào),速度信號(hào)。
[0023]測(cè)試時(shí),可以利用PC機(jī)與車輛總線的方式進(jìn)行測(cè)試。
[0024]以車門開關(guān)總線消息為例,開關(guān)車門的時(shí)候,其對(duì)應(yīng)總線消息的數(shù)據(jù)變化量在0和I之間。首先,設(shè)置待測(cè)試功能為開關(guān)車門,并設(shè)置測(cè)試的次數(shù)為I次。再在存放有操作測(cè)試用例定義的數(shù)據(jù)表中選擇開關(guān)車門相對(duì)應(yīng)的操作測(cè)試用例:“車門開”與“車門關(guān)”的操作。
[0025]順序?qū)Α败囬T開”與“車門關(guān)”的總線消息進(jìn)行測(cè)試,先測(cè)試車門開的總線消息,PC機(jī)發(fā)出等待車門開的操作提示,并開始接收總線消息。
[0026]當(dāng)外界的人或設(shè)備收到等待車門開的操作提示后,根據(jù)提示將車門打開,并進(jìn)行反饋,告訴PC機(jī)已經(jīng)完成相應(yīng)的操作。此時(shí)PC機(jī)將收到的所有總線信號(hào)進(jìn)行保存。在打開車門時(shí)車輛總線就會(huì)產(chǎn)生一個(gè)“車門開”的總線信號(hào),因此PC機(jī)保存的總線消息也包括了代表“車門開”的總線信號(hào)??偩€信號(hào)保存后再對(duì)下一個(gè)操作測(cè)試用例“車門關(guān)”進(jìn)行測(cè)試,發(fā)出等待車門關(guān)的操作提示,測(cè)試過程與“車門開”的過程相同。
[0027]為確保測(cè)試數(shù)據(jù)的正常收集,還設(shè)置有超時(shí)保護(hù),若在超時(shí)時(shí)間段內(nèi)接收到操作完成的反饋消息,則保存接收到的總線消息,否則發(fā)出錯(cuò)誤警告并退出測(cè)試。
[0028]當(dāng)“車門開”與“車門關(guān)”的兩個(gè)操作測(cè)試用例測(cè)試結(jié)束后(由于此處設(shè)置的測(cè)試次數(shù)為I次,便無需重復(fù)測(cè)試),由總線類型庫就能夠獲得車門開關(guān)的總線數(shù)據(jù)變化為開關(guān)值變化規(guī)律(即數(shù)據(jù)在0和I之間變化),由此在“車門開” “車門關(guān)”的兩次測(cè)試過程中,根據(jù)所收集到的兩組總線消息的ID及數(shù)據(jù)進(jìn)行變化規(guī)律的對(duì)比,即將同一 ID且變化量在0和I之間的總線消息篩選出來,此時(shí)可以判斷此篩選出來的總線消息便是開關(guān)車門對(duì)應(yīng)的總線消息。
[0029]由于在測(cè)試車門開關(guān)的同時(shí)可能會(huì)存在其他非人為因素所產(chǎn)生的開關(guān)類消息,造成測(cè)試結(jié)果的不準(zhǔn)確,因此,本發(fā)明還設(shè)置有驗(yàn)證總線消息的方法:重復(fù)一次或多次建立測(cè)試并監(jiān)控總線消息的操作,并根據(jù)多次測(cè)試所獲得的總線消息進(jìn)行比對(duì)判斷,若結(jié)果一致則確認(rèn)其為所設(shè)置的總線消息含義對(duì)應(yīng)的總線消息。這樣便能夠?qū)⒉粶?zhǔn)確的結(jié)果去除。
[0030]最后將測(cè)試的結(jié)果輸出,并根據(jù)測(cè)試的結(jié)果,將總線功能對(duì)應(yīng)的總線消息的ID,消息長(zhǎng)度,總線消息含義,數(shù)據(jù)變化的內(nèi)容存入數(shù)據(jù)庫。
[0031]根據(jù)總線消息類型的不同測(cè)試的方法也稍有區(qū)別。以速度的總線消息為例,由于速度的變化率為線性的,并其在測(cè)試的過程中會(huì)以0變化到某高值再從某高值變化為0(此變化規(guī)律在總線類型庫的線性值變化規(guī)律中的詳細(xì)變化規(guī)律定義中進(jìn)行相關(guān)定義)。
[0032]設(shè)置待測(cè)試功能為車輛速度變化,并設(shè)置測(cè)試的次數(shù)為I次。再設(shè)置車輛速度變化相對(duì)應(yīng)的操作測(cè)試用例:“加速”與“減速”的操作。測(cè)試時(shí)實(shí)施加速與減速操作,測(cè)試過程與車門開關(guān)的測(cè)試過程相似。經(jīng)過測(cè)試后,由總線類型庫就能夠獲得速度的總線數(shù)據(jù)變化規(guī)律,并根據(jù)所收集到的所有總線消息的ID及數(shù)據(jù)進(jìn)行變化規(guī)律的對(duì)比,即將同一 ID且數(shù)據(jù)的變化量在0到某個(gè)高值再從某個(gè)高值變化到0的總線消息篩選出來,此時(shí)可以判斷此篩選出來的總線消息便是開關(guān)車門對(duì)應(yīng)的總線消息。同理,為了保證測(cè)試結(jié)果的正確性,進(jìn)行驗(yàn)證總線消息的步驟,最后將結(jié)果輸出并存入數(shù)據(jù)庫。
[0033]對(duì)于固定值變化規(guī)律的總線消息來說,由于其數(shù)據(jù)的變化內(nèi)容是不可預(yù)知的,因此,必須通過多次測(cè)試進(jìn)行確定。以鑰匙檔位為例,其檔位在key out — key in — ACC ON三個(gè)狀態(tài)中切換。故此可以設(shè)置三個(gè)操作測(cè)試用例,對(duì)應(yīng)鑰匙檔位的三個(gè)狀態(tài),并設(shè)置測(cè)試次數(shù)為兩次。在第一次測(cè)試中,與車門開關(guān)測(cè)試相似,但要篩選出所有非開關(guān)值變化規(guī)律且非線性值變化規(guī)律的總線消息,并進(jìn)入第二次測(cè)試。同樣第二次測(cè)試也篩選出所有非開關(guān)值變化規(guī)律且非線性值變化規(guī)律的總線消息,此時(shí)便能夠進(jìn)行比對(duì),若某一 ID的總線消息對(duì)應(yīng)的多個(gè)數(shù)據(jù)在兩次測(cè)試中的變化值一致,則可判斷該總線消息為鑰匙檔位的總線消息。假設(shè)鑰匙檔位在key out - key in — ACC ON三個(gè)狀態(tài)下對(duì)應(yīng)的總線數(shù)據(jù)為0x00 — 0x03 — 0x07,則在兩次測(cè)試中總線消息的數(shù)據(jù)變化均為0x00 — 0x03 — 0x07的總線消息便可判斷其為鑰匙檔位的總線消息。同理測(cè)試后進(jìn)行驗(yàn)證總線消息的步驟,最后將結(jié)果輸出并存入數(shù)據(jù)庫。
[0034]本實(shí)施例只是本發(fā)明的較優(yōu)實(shí)施方式,未進(jìn)行詳細(xì)描述的部分均采用公知的成熟技術(shù)。需要說明的是,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
【權(quán)利要求】
1.一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,包括以下步驟: (1)建立測(cè)試并監(jiān)控總線消息; (2)對(duì)總線消息進(jìn)行篩選; (3)驗(yàn)證總線消息; (4)輸出結(jié)果并保存總線消息; 根據(jù)權(quán)利要求1所述的一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,所述步驟(I)的方法為: (11)設(shè)置待測(cè)試功能,并設(shè)置測(cè)試的次數(shù); (12)設(shè)置與上述待測(cè)試功能相對(duì)應(yīng)的一個(gè)或多個(gè)操作測(cè)試用例進(jìn)行測(cè)試; (13)順序?qū)Ω鱾€(gè)操作測(cè)試用例的總線消息進(jìn)行測(cè)試,根據(jù)測(cè)試用例對(duì)應(yīng)的含義發(fā)出相應(yīng)的等待操作的提示,并開始接收總線消息; (14)外界的人或設(shè)備根據(jù)相關(guān)提示,進(jìn)行相應(yīng)的操作后進(jìn)行反饋; (15)若在超時(shí)時(shí)間內(nèi)接收到操作完成的反饋消息,則保存接收到的總線消息,否則發(fā)出錯(cuò)誤警告并退出測(cè)試; (16)取下一個(gè)測(cè)試條目進(jìn)入步驟(13),直到所有測(cè)試用例測(cè)試完畢; (17)根據(jù)測(cè)試次數(shù)重復(fù)步驟(13)?(16)。
2.根據(jù)權(quán)利要求2所述的一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,(21)對(duì)接收到的每一條總線消息,獲取其消息的ID及數(shù)據(jù); (22)對(duì)相同ID的多條數(shù)據(jù)進(jìn)行數(shù)據(jù)變化規(guī)律比對(duì),若某一 ID的總線消息數(shù)據(jù)的變化規(guī)律符合待測(cè)功能在總線類型庫內(nèi)定義的變化規(guī)律,則判斷其為所設(shè)置的總線功能對(duì)應(yīng)的總線消息。
3.根據(jù)權(quán)利要求3所述的一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,總線消息數(shù)據(jù)的變化規(guī)律包括,固定值變化規(guī)律,開關(guān)值變化規(guī)律以及線性值變化規(guī)律; 所述固定值變化規(guī)律,開關(guān)值變化規(guī)律以及線性值變化規(guī)律均包含一個(gè)或多個(gè)詳細(xì)變化規(guī)律定義。
4.根據(jù)權(quán)利要求4所述的一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,所述總線類型庫為待測(cè)試功能與其總線消息類型以及其對(duì)應(yīng)的總線數(shù)據(jù)變化規(guī)律的映射表。
5.所述總線消息類型包含固定類,線性類以及開關(guān)類。
6.根據(jù)權(quán)利要求5所述的一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,設(shè)置操作測(cè)試用例的方法包括:在存放有操作測(cè)試用例定義的數(shù)據(jù)表中選擇。
7.根據(jù)權(quán)利要求6所述的一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,驗(yàn)證總線消息對(duì)應(yīng)關(guān)系的方法為,重復(fù)一次或多次建立測(cè)試并監(jiān)控總線消息的操作,并根據(jù)多次測(cè)試所獲得的總線消息進(jìn)行比對(duì)判斷,若結(jié)果一致則確認(rèn)其為所設(shè)置的總線消息含義對(duì)應(yīng)的總線消息。
8.根據(jù)權(quán)利要求7所述的一種識(shí)別車輛總線信息對(duì)應(yīng)關(guān)系的方法,其特征在于,保存總線消息并輸出結(jié)果的方法為:將測(cè)試的結(jié)果輸出,并根據(jù)測(cè)試的結(jié)果,將總線功能對(duì)應(yīng)的總線消息的ID,消息長(zhǎng)度,總線消息含義,數(shù)據(jù)變化的內(nèi)容存入數(shù)據(jù)庫。
【文檔編號(hào)】H04L12/26GK103490942SQ201310268342
【公開日】2014年1月1日 申請(qǐng)日期:2013年6月30日 優(yōu)先權(quán)日:2013年6月30日
【發(fā)明者】劉小健, 張皓, 麥志偉, 梁婷艷 申請(qǐng)人:惠州市德賽西威汽車電子有限公司