2013-07-12 86 views
5

我想使用藍牙ELM327無線OBD-II接收器從車輛OBD-II端口獲取數據。我不是想收集有關發動機的信息,而是收集車輛中的一些電子設備。我已經獲得了一定的命令來訪問這些設備,併成功地使用了ELM327以外的其他設備和軟件。福特CAN數據和ELM327

我沒有太多處理CAN總線和數據傳輸的經驗;所以請原諒我,如果我遺漏了這個過程的關鍵部分。但是,我確實瞭解CAN基礎知識,如消息標題和數據字節。

到目前爲止,我一直在使用福特DET工具從設備收集數據。我能夠發送一個8字節的CAN消息並接收數據。我有很多命令需要從它們生成的輸出中解析正確的數據。例如,如果我發送命令

0x727 03 19 02 8F 

我的日誌文件顯示:

00184.3548 (Rx) 0x72F 10 0F 59 02 CA E1 00 00 
00024.8556 (Rx) 0x72F 10 0F 59 02 CA E1 00 00 --- Request DTC Info: Report DTCs By Status Mask (StatusMask: 8F) 
00189.4469 (Tx) 0x727 03 19 02 8F 00 00 00 00 --- Request DTC Info: Report DTCs By Status Mask (StatusMask: 8F) 
00189.4549 (Rx) 0x72F 10 0F 59 02 CA E1 00 00 
00189.4572 (Tx) 0x727 30 00 00 00 00 00 00 00 
00189.4591 (Rx) 0x72F 21 0A E1 01 00 0A 9A 89 
00189.4612 (Rx) 0x72F 22 13 0A 00 00 00 00 00 --- Pos Resp to Read DTCs By Status Mask (3 DTCs) 

這裏是goSerial聊到ELM327時會發生什麼。我已經包含了所有的命令來說明我如何使用ELM327設備。

>ath1 
OK 

>ats1 
OK 

>atal 
OK 

>at sh 727 <-- set the message header to 0x727 
OK 

>03 19 02 8f 
72F 03 7F 03 11 

> 

正如您所看到的,最終生產線上的結果輸出比診斷工程工具給我的要短得多。我沒有正確配置設備嗎?

基本上我試圖讓ELM327輸出匹配福特DET工具的輸出。我明白這是一個非常模糊的問題。

這裏是我的配置一些其他的信息:

  • 波特率:38400(標準車?)
  • CAN版本:ISO 15765-4

我所有的命令開始0x727。流量控制與0x727和0x7A7一起傳輸。

此外,我已閱讀了大部分ELM327文檔,因此請不要將其作爲解決方案。

+0

你能告訴我你已經做了什麼設置來記錄掃描工具發送的命令嗎?我想看到DTC與動力系統(模式$ 03的P代碼)不同。您的方法似乎提供了一種方法,可以顯示/記錄掃描工具發送的ABS,BCM,安全氣囊等命令。 –

回答

3

是什麼讓你認爲「最後一行的結果輸出比診斷工程工具給我的 短得多」?

其實,ECU的反應是完全有效的: 72F 03 7F 03 11

72F - ID of the CAN message 
03 - Length of data bytes 
7F - Negative response 
03 - The negative response is for command 03 
11 - Not supported 

您在您發送的CAN消息 「03 19 02 8F」 行有一個錯誤。 你應該像這樣發送消息:「19 02 8f」。