OBD 介面能獲取的車輛數據具體有哪些?

OBD是不是類似於飛機的黑匣子一樣能記錄所有行車的數據呢


OBD口采數據事實上就是通過(這個年代主要是)CAN匯流排實現數據交互。確實幾乎所有數據都有,但是你能記錄多少是依賴於用於採集的硬體設備的。

數據分兩大類:

1. CAN匯流排數據

CAN匯流排數據是各個控制模塊交互所需要的數據。舉個例子,油門踏板位置信號通過感測器傳給發動機了,而這個信號對自動變速箱也是最基本的輸入信號,於是發動機控制模塊會把這個信號一直往CAN匯流排上發,變速箱控制模塊實時讀取這個信號。

因為匯流排數據是用來交互的,數據流一直在匯流排上走,所以採集這些數據僅僅去讀就行了。原理比較簡單,搜一搜就能找到很多資料,此處不展開。

CAN匯流排上的數據已經比較豐富了:車速、各種溫度、輪速、發動機扭矩、油門、制動踏板、排檔桿位置、空調等各種設備是否工作、故障信息……非常多。這些信號的特點一般是:不同控制模塊都會需要用到的數據。

2. 控制器內部數據

說簡單一點,CAN匯流排給你提供一個數據流通的通道。通過這個通道,採集設備給相關的控制器發送指令,控制器返回相關數據。通過這種方式可以採集到控制器軟體運行中的各種變數,於是幾乎所有的數據都能採集到。因為多了發送指令的動作,所以更加耗費資源。這種數據的豐富程度,遠遠遠遠遠遠遠遠大於前一種。但是只有開發方才可能知道怎樣配置來採集這些數據,非開發方還是別想了,除非有人泄密給你。

能記錄任何數據並不代表能記錄所有數據。特別是對於控制器數據來說,可以去讀的量實在太多了。即使購買最貴的設備,因為帶寬有限,也只能記錄很小一部分。對控制器內部數據的採集還和控制器本身的能力有關。產品車的控制器就比較弱,可同時採集的數據少。用於開發的車輛則會使用更加強大的控制器。

普通車輛在運行的時候會自動記錄一些故障信息等少量基本信息,而對車輛運行的實時數據是不做記錄的。因為需要額外加裝設備,成本也不低。所以產品車上是沒有黑匣子的。


這個問題需要分解回答:1.OBD是什麼?(解釋是不是類似黑匣子)2.通過OBD介面可以獲取的數據有哪些?
1.OBD全稱是on-borad diagnostic s 業內通常叫法叫隨車診斷系統。它是如何工作的我們可以從比較熟悉的OBD介面開始捯飭,下圖是OBD介面示意圖:

一般位於車輛離合踏板和方向盤之間的隱蔽位置。共十六個針腳。其實它就是一個介面,關鍵是這些針腳是什麼、連接到哪裡去。針腳定義示例如下:

除卻各種電源和地線之外,關鍵的有CAN線、ISO 0141-2 K線、J1850匯流排,三個是同一個作用,就是讀取故障信息及車輛實時運行信息(部分),只不過通訊協議不同而已。現在CAN已經勝出,明顯有普及的勢頭。
如果拆開看(非汽車研發人員不建議實施,尤其是自己的車的話)會發現診斷線連接在ECM(或叫ECU,發動機控制單元)上(補:CAN線車型則是網關)。

由此可以看出,OBD並不是一個物理硬體上十分獨立的系統,它只是提供一個介面進入發動機管理系統(及整車各控制系統)。當然,軟體和控制策略上來說還是獨立的、相當大的一塊的(據說專做OBD標定的五年上工程師可以要到30-50W,who knows)。
2.能獲取哪些數據?
從上面介紹來看,OBD能讀到什麼關鍵看發動機及車輛其他控制器反饋給它什麼。主要分為兩部分:實時的信息和儲存的信息
實時的信息:
如果您有診斷儀,或者更牛逼的開發階段用的連接設備和INCA軟體(挺貴的,而且不賣個人和4S店,連我們整車廠要想獲得都要談好久付好多錢,具體價格不便透漏),那麼你只要上電,就開始反饋給你部分的運行信息,譬如轉速、水溫、lambda等等(和發動機及車輛控制器實際處理的變數比只是九牛一毛),另外還有實時的故障信息(主要是和排放相關的)
儲存的信息:
如果像飛機黑匣子那樣記錄的話,車上就需要硬碟,非常遺憾的是您車上只有非常有限的存儲空間,類似內存的緩存區,空間小所以只能存儲故障信息(其實只是一個代碼,代表不同的故障),好在ECM不斷電,所以緩存不會清空,除非你拔電瓶(竊以為不失為一種自助清故障的方法,雖然只適用於偶發故障)。

總結:OBD與黑匣子不是特別類似,只是依附於控制單元少部分硬體加半獨立軟體;記錄的數據也沒有我們想像的那麼多,畢竟OBD第一關注點是排放,其次是重大故障,平時的數據流是不記錄的。

so,不知道我說明白了沒,第一次上知乎,多包涵吧


瀉藥。樓上配圖及解釋有誤,可以從obd得到主要有兩方面的數據,一個是obd標準裡面規定的,另外一些就是廠家專有數據,廠家專有數據一般要得到廠家的協議或mid等之類的東東才能得到。
這裡主要談到在obd協議裡面可以得到的,以下內容出自wikipedia:
第一,十模式,每種模式完成不同功能。

Mode of operation[edit]

Mode $01 is used to identify what powertrain information is available to the scan tool.

Mode $02 displays Freeze Frame data.

Mode $03 lists the emission-related "confirmed" diagnostic trouble codes stored. It displays exact numeric, 4 digit codes identifying the faults.

Mode $04 is used to clear emission-related diagnostic information. This includes clearing the stored pending/confirmed DTCs and Freeze Frame data.

Mode $05 displays the oxygen sensor monitor screen and the test results gathered about the oxygen sensor.


Mode $06 is a Request for On-Board Monitoring Test Results for Continuously and Non-Continuously Monitored System. There are typically a minimum value, a maximum value, and a current value for each non-continuous monitor.

Mode $07 is a Request for emission-related diagnostic trouble codes detected during current or last completed driving cycle. It enables the external test equipment to obtain "pending" diagnostic trouble codes detected during current or last completed driving cycle for emission-related components/systems. This is used by service technicians after a vehicle repair, and after clearing diagnostic information to see test results after a single driving cycle to determine if the repair has fixed the problem.

Mode $08 could enable the off-board test device to control the operation of an on-board system, test, or component.

Mode $09 is used to retrieve vehicle information. Among others, the following information is a

Mode $0A lists emission-related "permanent" diagnostic trouble codes stored. As per CARB, any diagnostic trouble codes that is commanding MIL on and stored into non-volatile memory shall be logged as a permanent fault code.

第二 模式1可以得到的數據,這應該也是你最感興趣的。

見鏈接OBD-II PIDs


首先,OBD是一個外部測試設備與車輛連接的介面,並不是你所說的黑匣子。就如同電腦上USB介面一樣。

其次,我參與開發過的幾款車型差不多都是基於CAN匯流排的,網路拓撲不盡相同所以題主你這個問題的後半截要分成兩種情況來考慮。

第一種情況,假設OBD介面上只有一路CAN線,那麼基本上你從OBD上能看到的CAN報文很可能並不是整車所有CAN匯流排上的全部報文,當前乘用車市場上基本上不存在只有一條CAN線的車型了,網路拓撲上一般都有一個專門的網關控制器(也有用儀錶控制器車身控制器來兼用的)負責轉發各條CAN線之間的報文。

第二種情況,假設OBD介面上把整車所有CAN線都引出來了(別懷疑,我遇到過這麼設計的……),那麼恭喜你,你隨便找幾塊CAN卡就能採集到整車所有CAN報文了。

但是,你拿到這些CAN報文又能怎麼樣呢?只有主機廠和控制器供應商手裡掌握著通訊協議,普通人想了解這些報文是幹什麼用的基本是不可能的。


終於有個問題我能夠回答了。好興奮。
首先說明什麼是OBD吧。通俗的OBD是指整車的診斷介面。你可以理解為網路中的網線插口。具體定義可以看的soly Ju答案。它是車載網路與外界通訊的介面。
由於它只是一個介面,不能記錄任何東西,自然也就不是黑匣子了。

但是他可以外接設備來實現記錄功能。針對不同的車型網路架構,採用不同的記錄儀,能夠記錄相關的數據。比如其他答主都提到的CAN匯流排架構。CAN匯流排工作方式可以參看Jeff YU的答案,由於ECU(電控單元,通俗的說就是大家常說的行車電腦)之間的通訊,ECU會在CAN匯流排進行廣播,將自己的數據發給其他ECU,這些數據可以通過匯流排監聽直接獲取。如果這個ECU支持診斷功能,那麼也可以通過診斷測試設備直接向ECU發出讀取各種數據的請求。

回到題主的問題,整車廠是絕對有能力去實現類似黑匣子的功能,而且根本不需要通過OBD介面實現。如果第三方廠家希望開發黑匣子功能,就需要用到OBD介面。如果是CAN匯流排車型,可以直接接收匯流排數據。但需要搞到解析這些數據的定義文檔才能理解這些數據的含義(這些數據都是16進位的需要轉換成字元或者數字)。如果更厲害一點,可以搞到診斷協議,那麼就不是被動的接受數據,而是主動的詢問ECU各種數據參數(這些數據只有你想不到的,沒有得不到)。甚至可以直接控制ECU功能。

因此題主的第二個問題,可以獲得哪些數據?答案是可以基本上所有數據都可以。比如儀錶上面顯示的所有數據,已經ECU各種狀態,感測器的各種參數等等等。


我有個OBD相關的專利。
能獲取的數據跟車輛ECU有關,跟協議有關,跟廠商有關,說起來話就長了。有興趣可以讀SAE的SPEC。
一般鼓搗這玩意兒,就是想獲得更多的關於動力,制動,傳動甚至娛樂系統的數據,實現信息展示,故障診斷預警,更進一步是想控制車輛的行為。
而標準里公開的參數比較少,老一點的國產車能獲取到的參數更是少得可憐。所以就要用一些黑方法甚至破線,解碼也是個難題。
現在的車逐漸都統一到CAN了,分高速和低速CAN,控制和娛樂信息分開的。


車上的OBD介面只是一個物理介面,一般位於駕駛員側下護板處,如下圖所示。

OBD是On-Board Diagnostics的縮寫,OBD介面並不能提供數據存儲功能,與飛機上的黑匣子還是有本質區別的。當然,通過外接設備可以實現獲取匯流排數據,以及進行故障診斷等功能。
1. 匯流排實時數據
該部分數據是有匯流排上各節點以周期或者事件觸發的方式發送的,從OBD介面處可以讀取到raw數據。對於用戶來說,raw數據並沒有太大的意義,關鍵在於OEM對於信號的定義。實際應用時,匯流排數據會有相應資料庫的支撐,從而才會解析出不同的信號,例如發動機轉速、車速、檔位等信息。

2. 診斷數據
診斷一般是通過問答方式進行通訊,即通過tester向目標ECU發送診斷請求,目標ECU才會將診斷結果發送回來。診斷部分包括ECU的軟硬體版本號等信息、故障碼的讀取和清除、數據刷寫和標定等功能。4S店使用的診斷儀就是通過此種方式來進行工作的。

無論上述哪部分數據都需要OEM提供的協議進行支持。雖然不清楚目前市面上OBD產品是如何獲取這部分協議的,但是據我猜測應該是破解的可能性比較大。一款OBD產品要兼容市面上大部分車型的話,這部分破解的工作量還真是蠻大的..
另外,對於普通用戶來說,我覺得當前的OBD產品都比較雞肋。因為從OBD介面上讀到的發動機轉速、車速等必要信息儀錶上都會顯示,其他更詳細的信息(例如發動機升扭降扭請求等)對於普通用戶來說完全沒有意義。所以對於OBD產品的市場並不太看好。


基於4G全網通信技術的車載WIFI熱點OBD設備

通過OBD介面採集汽車ECU相關數據同時集成GPS定位,並通過4G網路將數據上傳伺服器,提供車載WIFI、車輛體檢、車輛軌跡、精確的行程報告、油耗分析、駕駛行為分析等功能的智能汽車車載終端。

(1)即插即用、安裝方便簡單、支持遠程升級、串口升級等各種升級方式。

(2)工業級模塊,適合長期連續工作,抗干擾能力強。

(3)支持TDD-LTE和FDD-LTE,移動聯通電信全網通,支持車載WIFI高速上網,同時最多接入10個終端設備上網。

(4)自動識別,支持車輛診斷協議,實時了解車輛的當前工作狀態。

(5)內置GPS可以實現精準定位車輛具體位置。

(6)內置3D加速度感測器。

(7)設備自動轉彎補償、高速補償,保證軌跡平滑順暢。

(8)大容量FALSH存儲,盲區數據自動補傳。

(9)點火熄火報告,熄火自動休眠,低功耗。

(10)精準里程分析、油耗分析,不僅提供單次行程的里程油耗分析,還提供超速、高速、中速、低速、怠速的里程油耗分析。

(11)駕駛行為分析:設備提供急加速、急減速、急加油、急轉彎、長時間怠速、超速、疲勞駕駛等的實時提醒,可以準備的分析出超速/高速行駛的時間、里程比例,車主行駛的時間和里程等。

(12)支持車輛體檢、汽車發動機故障、保養提醒、節氣門清理、電瓶虧電、超速、疲勞、冷卻液溫度高等10多種報警。

(13)設備不僅可以完美支持OBDII協議的車型,對於不支持OBDII的車型也能很好的支持,真正車型全覆蓋。

希望得到OBD內專業人員,的指點,抱拳了老鐵


沒必要,車輛就算出了機械故障,可以停車檢修,黑匣子是為追溯飛機墜機事故原因的最後手段,飛機墜毀後很難從殘骸里找出故障點,有了飛參記錄儀,對事故的定性就容易的多。


我做過一個匯流排採集器,通過OBD採集所有的匯流排數據,可以連續記錄幾天數據;如果車帶網關,要想採集所有數據就只能改線了


同網段的can報文(含從別的網段路由過來的)均可讀取。



這個是什麼軟體啊啊??朱志強


推薦閱讀:

去 4S 店買車需要知道哪些內幕以避免被忽悠?
從二手車評估切入二手車市場,是否可行?
中國本土工程機械發展為什麼遠好於本土汽車?
如何制訂一個良好的校車安全標準?
日本車當初是怎麼擊敗美國汽車的 美國後來是怎麼反制的?

TAG:互聯網 | 汽車 | 數據分析 | OBD |