基于數據請求循環的obd產品識別方法及系統的制作方法
【專利摘要】基于數據請求循環的OBD產品識別方法及系統,上位機接收OBD產品請求數據,當數目達到一定量的時候,進行特征庫第一次匹配,根據與車輛的Can數據交互得到車輛當前狀態,選擇當前狀態下特征庫,直到得到第一次的匹配結果。當數據再一次達到一定次數時,進行特征庫第二次匹配,根據與車輛的Can數據交互得到車輛當前狀態,直到得到第二次的匹配結果,第一次匹配結果與第二次匹配結果進行對比,如果一致,認為識別成功,若不相同,當接收數據達到再一次一定次數時進行第三次匹配,若有和以前相同結果,則認為識別成功,若不成功,以此類推。本發明能快速識別插入車輛OBD產品,讓用戶對插入OBD產品有一定的了解,方便用戶設置OBD產品黑名單和白名單。
【專利說明】
基于數據請求循環的OBD產品識別方法及系統
技術領域
[0001]本發明屬于OBD設備領域,具體說是一種基于數據請求循環的OBD產品識別方法及系統。
【背景技術】
[0002]OBD是英文On-Board Diagnostics的縮寫,中文翻譯為“車載自動診斷系統”。實現汽車智能化,車型前置標準配置和后裝OBD產品是兩大途徑。對于中低端車型等沒有智能化標準配置車型,OBD產品更是重要可行的選擇,借助OBD終端+手機APP+后臺系統服務,低成本實現數據采集、數據分析、結果展現等功能。為后續對數據的開發打下一定的基礎,需要識別OBD設備的種類,但目前尚未發現如何識別OBD設備的方法或系統。
【發明內容】
[0003]本發明針對以上問題,提出了一種基于數據請求循環的OBD產品識別方法及系統,能識別插入車輛OBD設備,讓用戶對插入OBD設備有一定的了解。對后續用戶可設置OBD產品黑名單,白名單有一定的作用。
[0004]一方面,本發明提供了基于數據請求循環的OBD產品識別的方法,包括:
[0005]SI: OBD產品插入車輛時,OBD產品向車輛發送請求數據,請求數據以廣播形式在Can總線之間通信,故上位機可以接收到請求數據和車輛對OBD產品請求數據的回應;
[0006]S2:上位機接收OBD產品請求數據,當數據達到一定量的時候,進行特征庫第一次匹配,根據與車輛的Can數據交互得到車輛當前狀態,選擇當前狀態下特征庫,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第一次的匹配結果;
[0007]S3:當數據再一次達到一定量時,進行特征庫第二次匹配,根據與車輛的Can數據交互得到車輛當前狀態,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第二次的匹配結果;
[0008]S4:第一次匹配結果與第二次匹配結果進行對比,如果一致,認為識別成功,若不相同,當接收數據達到再一次一定量時進行第三次匹配,若有和之前相同結果,則認為識別成功,若不成功,則繼續進行匹配。
[0009]具體的,本方法還包括如果匹配時間超過3-4分鐘,則新建特征庫,列入新的OBD產品O
[0010]具體的,請求數據為請求轉速數據。
[0011 ]具體的,步驟S2是通過如下步驟進行建立特征庫的:
[0012]A、上位機向車輛發送請求轉速數據;
[0013]B、判斷數據回復狀態:
[0014]如果無數據回復,則車輛為未上電狀態;
[0015]如果有數據回復,且數值為0,則車輛為上電狀態;
[0016]如果有數據回復,且數值不為O,則車輛為打火狀態;
[0017]C、判斷是否有數據請求循環體,如果有,則分別記錄為OBD產品對應的未上電請求循環體特征庫、上電請求循環體特征庫和打火請求循環體特征庫。
[0018]更具體的,步驟S2-S4中,當數據達到20-30次時進行特征庫第一次匹配;當數據達至IJ50-70次時進行特征庫第二次匹配;以后每次增加20-30次。
[0019]另一方面,本發明還提供了一種基于數據請求循環的OBD設備識別系統,包括:
[0020]OBD產品,向車輛發送請求數據;
[0021]OBD三通,分別監聽OBD產品和車輛之間交互的數據、上位機與車輛之間交互的數據。
[0022]上位機,根據OBD產品請求數據進行特征庫匹配;
[0023]車載診斷系統,監控發動機的運行狀況和尾氣后處理系統的工作狀態,發現排放超標情況,則發出警示;
[0024]所述的OBD三通分別與OBD產品、上位機、車載診斷系統相連。
[0025]進一步的,所述的OBD三通與車載診斷系統是通過OBD延長線相連的。
[0026]進一步的,所述的OBD三通與OBD產品是通過OBD延長線相連的。
[0027]更進進一步的,0BD三通與上位機是通過Can總線節點進行數據交互的。
[0028]上述循環體是一組被重復請求的數據,包括請求順序和請求內容;建立的循環體步驟為:
[0029]當OBD產品第一次插入車輛,開始統計OBD產品與車輛交互的數據,統計時間為N秒,將數據寫入哈希表I;
[0030]統計哈希表I中各類數據請求的次數,按照從多到少進行排序,選出次數相差小于等于總次數M%的請求數據,作為循環體I,將循環體I遍歷哈希表1:若能找到,則循環體I計為OBD產品某階段請求循環體特征庫;如不能找到,將循環體I數據的第一位數據與第二位數據交換順序記為循環體Π,將循環體Π遍歷哈希表I,若能找到則循環體Π計為OBD產品某階段請求循環體特征庫,若不能找到將循環體I第一位與第三位交換順序,依次類推,將循環體I按照冒泡的排序方法得到循環體i,將循環體i遍歷哈希表I,將直至找到,記為OBD產品某階段請求循環體特征庫。
[0031]本發明由于采用以上技術方法,能夠取得如下的技術效果:本發明能實時接收OBD產品數據,為后續對數據的開發打下一定的基礎;能快速識別插入車輛OBD產品,讓用戶對插入OBD產品有一定的了解,方便用戶設置OBD產品黑名單和白名單;能夠為后續OBD產品黑名單攔截起到幫助作用。
【附圖說明】
[0032]為了更清楚的說明本發明的實施例或現有技術的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖做一簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0033]圖1為基于數據請求循環的OBD產品識別方法的流程圖;
[0034]圖2為基于數據請求循環的OBD產品識別系統的結構框圖;
[0035]圖3為建立特征庫流程圖。
【具體實施方式】
[0036]為使本發明的實施例的目的、技術方案和優點更加清楚,下面結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚完整的描述:
[0037]實施例1
[0038]基于數據請求循環的OBD產品識別的方法,包括:
[0039]S1:0BD產品插入車輛時,OBD產品向車輛發送請求數據,請求數據以廣播形式在Can總線之間通信,故上位機可以接收到請求數據和車輛對OBD產品請求數據的回應;
[0040]S2:上位機接收OBD產品請求數據,當數據達到20次的時候,進行特征庫第一次匹配,根據與車輛的Can數據交互得到車輛當前狀態,選擇當前狀態下特征庫,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第一次的匹配結果;
[0041 ]具體的,是通過如下步驟進行建立特征庫的:
[0042]A、上位機向車輛發送請求轉速數據;
[0043]B、判斷數據回復狀態:
[0044]如果無數據回復,則車輛為未上電狀態;
[0045]如果有數據回復,且數值為0,則車輛為上電狀態;
[0046]如果有數據回復,且數值不為0,則車輛為打火狀態;
[0047]C、判斷是否有數據請求循環體,如果有,則分別記錄為OBD產品對應的未上電請求循環體特征庫、上電請求循環體特征庫和打火請求循環體特征庫。
[0048]S3:當數據達到50次時,進行特征庫第二次匹配,根據與車輛的Can數據交互得到車輛當前狀態,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第二次的匹配結果;
[0049]S4:第一次匹配結果與第二次匹配結果進行對比,如果一致,認為識別成功,若不相同,當接收數據達到70次時進行第三次匹配,若有和之前相同結果,則認為識別成功,若不成功,則繼續進行匹配。
[0050]S5:如果匹配時間超過3-4分鐘,則新建特征庫,列入新的OBD產品。
[0051]另一方面,本發明還提供了一種基于數據請求循環的OBD產品識別系統,包括:
[0052]OBD產品,向車輛發送請求數據;
[0053 ] OBD三通,分別監聽OBD產品和車輛之間交互的數據、上位機與車輛之間交互的數據;
[0054]上位機,根據OBD產品請求數據進行特征庫匹配;
[0055]車載診斷系統,監控發動機的運行狀況和尾氣后處理系統的工作狀態,發現排放超標情況,則發出警示;
[0056]所述的OBD三通通過OBD延長線分別與車載診斷系統、OBD產品相連;OBD三通與上位機是通過Can總線節點進行數據交互的。
[0057]上述循環體是一組被重復請求的數據,包括請求順序和請求內容;建立的循環體步驟為:
[0058]當OBD產品第一次插入車輛,開始統計OBD產品與車輛交互的數據,統計時間為1秒,將數據寫入哈希表I;
[0059]統計哈希表I中各類數據請求的次數,按照從多到少進行排序,選出次數相差小于等于總次數5%的請求數據,如:車速請求10次,轉速請求9次,總次數100次,(10-9)〈(100*5% ),作為循環體I,將循環體I遍歷哈希表1:若能找到,則循環體I計為OBD產品某階段請求循環體特征庫;如不能找到,將循環體I數據的第一位數據與第二位數據交換順序記為循環體Π,將循環體Π遍歷哈希表I,若能找到則循環體Π計為OBD產品某階段請求循環體特征庫,若不能找到將循環體I第一位與第三位交換順序,依次類推,將循環體I按照冒泡的排序方法得到循環體i,將循環體i遍歷哈希表I,將直至找到,記為OBD產品某階段請求循環體特征庫。
[0060]實施例2
[0061]基于數據請求循環的OBD產品識別的方法,包括:
[0062]S1:0BD產品插入車輛時,OBD產品向車輛發送請求轉速數據,請求轉速數據以廣播形式在Can總線之間通信,故上位機接收到請求轉速數據和車輛對OBD產品請求轉速數據的回應;
[0063]S2:上位機接收OBD產品請求轉速數據,當數據達到30次的時候,進行特征庫第一次匹配,根據與車輛的Can數據交互得到車輛當前狀態,選擇當前狀態下特征庫,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第一次的匹配結果;
[0064]具體的,是通過如下步驟進行建立特征庫的:
[0065]A、上位機向車輛發送請求請求轉速數據;
[0066]B、判斷數據回復狀態:
[0067]如果無數據回復,則車輛為未上電狀態;
[0068]如果有數據回復,且數值為0,則車輛為上電狀態;
[0069]如果有數據回復,且數值不為0,則車輛為打火狀態;
[0070]C、判斷是否有數據請求循環體,如果有,則分別記錄為OBD產品對應的未上電請求循環體特征庫、上電請求循環體特征庫和打火請求循環體特征庫。
[0071]S3:當數據達到70次時,進行特征庫第二次匹配,根據與車輛的Can數據交互得到車輛當前狀態,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第二次的匹配結果;
[0072]S4:第一次匹配結果與第二次匹配結果進行對比,如果一致,認為識別成功,若不相同,當接收數據達到100次時進行第三次匹配,若有和之前相同結果,則認為識別成功,若不成功,則繼續進行匹配。
[0073]S5:如果匹配時間超過3-4分鐘,則新建特征庫,列入新的OBD產品。
[0074]另一方面,本發明還提供了一種基于數據請求循環的OBD產品識別系統,包括:
[0075]OBD產品,向車輛發送請求轉速數據;
[0076]OBD三通,分別監聽OBD產品和車輛之間交互的數據、上位機與車輛之間交互的數據;
[0077]上位機,根據OBD產品請求轉速數據進行特征庫匹配;
[0078]車載診斷系統,監控發動機的運行狀況和尾氣后處理系統的工作狀態,發現排放超標情況,則發出警示;
[0079]所述的OBD三通通過OBD延長線分別與車載診斷系統、OBD產品相連;所述的OBD三通與上位機是通過Can總線節點進行數據交互的。
[0080]上述循環體是一組被重復請求的數據,包括請求順序和請求內容;建立的循環體步驟為:
[0081 ]當OBD產品第一次插入車輛,開始統計OBD產品與車輛交互的數據,統計時間為20秒,將數據寫入哈希表I;
[0082]統計哈希表I中各類數據請求的次數,按照從多到少進行排序,選出次數相差小于等于總次數8%的請求數據,如:車速請求10次,轉速請求9次,總次數100次,(10-9)〈(100*8% ),作為循環體I,將循環體I遍歷哈希表1:若能找到,則循環體I計為OBD產品某階段請求循環體特征庫;如不能找到,將循環體I數據的第一位數據與第二位數據交換順序記為循環體Π,將循環體Π遍歷哈希表I,若能找到則循環體Π計為OBD產品某階段請求循環體特征庫,若不能找到將循環體I第一位與第三位交換順序,依次類推,將循環體I按照冒泡的排序方法得到循環體i,將循環體i遍歷哈希表I,將直至找到,記為OBD產品某階段請求循環體特征庫。
[0083]上述OBD產品可以為騰訊路寶;本發明能實時接收OBD產品數據,為后續對數據的開發打下一定的基礎;能快速識別插入車輛OBD產品,讓用戶對插入OBD產品有一定的了解,方便用戶設置OBD產品黑名單和白名單。
[0084]以上所述,僅為本發明較佳的【具體實施方式】,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明披露的技術范圍內,根據本發明的技術方案及其發明構思加以等同替換或改變,都應涵蓋在本發明的保護范圍之內。
【主權項】
1.基于數據請求循環的om)產品識別的方法,其特征在于,包括: S1:OBD產品插入車輛時,OBD產品向車輛發送請求數據,請求數據以廣播形式在Can總線之間通信,故上位機接收到請求數據和車輛對OBD產品請求數據的回應; S2:上位機接收OBD產品請求數據,當數據達到一定量的時候,進行特征庫第一次匹配,根據與車輛的Can數據交互得到車輛當前狀態,選擇當前狀態下特征庫,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第一次的匹配結果; S3:當數據再一次達到一定量時,進行特征庫第二次匹配,根據與車輛的Can數據交互得到車輛當前狀態,依次用特征庫下的產品請求循環體和當前接收的數據進行匹配,直至得到第二次的匹配結果; S4:第一次匹配結果與第二次匹配結果進行對比,如果一致,認為識別成功,若不相同,當接收數據達到再一次一定量時進行第三次匹配,若有和之前相同結果,則認為識別成功,若不成功,則繼續進行匹配。2.根據權利要求1所述的基于數據請求循環的OBD產品識別的方法,其特征在于,本方法還包括如果匹配時間超過3-4分鐘,則新建特征庫,列入新的OBD產品。3.根據權利要求1所述的基于數據請求循環的OBD產品識別的方法,其特征在于,請求數據為請求轉速數據。4.根據權利要求1所述的基于數據請求循環的OBD產品識別的方法,其特征在于,步驟S2是通過如下步驟進行建立特征庫的: A、上位機向車輛發送請求轉速數據; B、判斷數據回復狀態: 如果無數據回復,則車輛為未上電狀態; 如果有數據回復,且數值為O,則車輛為上電狀態; 如果有數據回復,且數值不為O,則車輛為打火狀態; C、判斷是否有數據請求循環體,如果有,則數據分別記錄為OBD產品對應的未上電請求循環體特征庫、上電請求循環體特征庫和打火請求循環體特征庫。5.根據權利要求1所述的基于數據請求循環的OBD產品識別的方法,其特征在于,循環體是一組被重復請求的數據,包括請求順序和請求內容;建立的循環體步驟為: 當OBD產品第一次插入車輛,開始統計OBD產品與車輛交互的數據,統計時間為財少,將數據寫入哈希表I; 統計哈希表I中各類數據請求的次數,按照從多到少進行排序,選出次數相差小于等于總次數M%的請求數據,作為循環體I,將循環體I遍歷哈希表1:若能找到,則循環體I計為OBD產品某階段請求循環體特征庫;如不能找到,將循環體I數據的第一位數據與第二位數據交換順序記為循環體Π,將循環體Π遍歷哈希表I,若能找到則循環體Π計為OBD產品某階段請求循環體特征庫,若不能找到將循環體I第一位與第三位交換順序,依次類推,將循環體I按照冒泡的排序方法得到循環體i,將循環體i遍歷哈希表I,將直至找到,記為OBD產品某階段請求循環體特征庫。6.根據權利要求1所述的基于數據請求循環的OBD產品識別的方法,其特征在于,步驟S2-S4中,當數據達到20-30次時進行特征庫第一次匹配;當數據達到50-70次時進行特征庫第二次匹配;以后每次增加20-30次。7.基于數據請求循環的om)產品識別系統,其特征在于,包括: CM)產品,向車輛發送請求數據; om)三通,分別監聽om)產品和車輛之間交互的數據、上位機與車輛之間交互的數據; 上位機,根據om)產品請求數據進行特征庫匹配; 車載診斷系統,監控發動機的運行狀況和尾氣后處理系統的工作狀態,發現排放超標情況,則發出警示; 所述的om)三通分別與om)產品、上位機、車載診斷系統相連。8.根據權利要求7所述的基于數據請求循環的OBD產品識別系統,其特征在于,所述的OBD三通與車載診斷系統是通過OBD延長線相連的。9.根據權利要求7所述的基于數據請求循環的OBD產品識別系統,其特征在于,所述的OBD三通與OBD產品是通過OBD延長線相連的。10.根據權利要求7所述的基于數據請求循環的OBD產品識別系統,其特征在于,所述的OBD三通與上位機是通過Can總線節點進行數據交互的。
【文檔編號】G05B19/042GK105929724SQ201610196235
【公開日】2016年9月7日
【申請日】2016年3月31日
【發明人】田雨農, 李永久, 秦東旭
【申請人】大連樓蘭科技股份有限公司