J1939

J1939是一種支持閉環控制的在多個ECU之間高速通信的網路協定岡。主要運用於載貨車和客車上。它是以CAN2.0為網路核心。

(1)J1939與CAN

J1939是一種支持閉環控制的在多個ECU之間高速通信的網路協定岡。主要運用於載貨車和客車上。它是以CAN2.0為網路核心。可以看出,J1939標識符包括:PRIORTY(優先權位);R(保留位);DP(數據頁位);PDU FORMAAT(協定數據單元);PDU SPECIFIC(擴展單元)和SOURCE ADDRESS(源地址)。而報文單元還包括64位的數據場。
(2)數據傳轉協定
J1939通信中的核心是負責數據傳輸的傳輸協定。它的功能分為兩部分:
(1)數據的拆分打包和重組。一個J1939的報文單元只有8個位元組的數據場。因此如果所要傳送的數據超過了8位元組,就應該分成幾個小的數據包分批傳送。數據場的第一個位元組從1開始作為報文的序號,後7個位元組用來存放數據。所以可以傳送255×7=1785個位元組的數據。報文被接收以後按序號重新組合成原來的數據。
(2)連線管理。主要對節點之間連線的建立和關閉,數據的傳送進行管理。其中定義了5種幀結構:傳送請求幀、傳送清除幀、結束應答幀、連線失敗幀以及用來全局接收的廣播幀。節點之間的連線通過一個節點向目的地址傳送一個傳送請求幀而建立。在接收傳送請求幀以後,節點如果有足夠的空間來接收數據並且數據有效,則傳送一個傳送清除幀,開始數據的傳送。如果存儲空間不夠或者數據無效等原因,節點需要拒絕連線,則傳送連線失敗幀,連線關閉。如果數據接收全部完成。則節點傳送一個結束應答幀,連線關閉。
(3)J1939的參數格式
J1939中還定義了參數的具體格式,如標識符、優先權、數據長度、參數的範圍等。參數又劃分為狀態參數和測量參數。狀態參數表示具有多態信號的某一種狀態,如發動機剎車使能/禁能、巡航控制激活/關閉,扭矩/速度控制超載模式、錯誤代碼等。而測量參數則表示所接收到的信號的值的具體大小,如缸內爆發壓力、最大巡航速度、發動機轉速等。
3.J1939協定的套用
(1)J1939套用於網路構建
J1939網路層中定義了如何構建網路及連線的功能。網路層的功能包括數據的過濾、重新打包和轉發。分別由以下各部分實現。
a.中繼器。可以增強數據信號,使數據傳輸更遠的距離。
b.網橋。數據的轉發和過濾。它可以把網路拆解成網路分支、分割網路數據流,隔離分支中發生的故障,這樣就可以減少每個網路分支的數據信息流量而使每個網路更有效,提高整個網路效率。
c.路由。可以使網路段具有獨立的地址空間不同的數據傳輸率和媒介。
d.網關。可以在不同的協定和數據設定的網段之間傳送數據。圖1為典型的汽車網路連線。
(2)J1939套用於故障診斷
J1939包括線上故障診斷功能,由診斷套用層定義。診斷套用層面向以下幾方面。
a.安全。在數據鏈路層上定義一個安全的框架,使得符合工業標準的開發工具執行必要的診斷任務。包括獲取診斷信息,獲取節點配置信息,標定控制模式。但對非開放型的數據加密。
b.連線。建立J1939網路節點與開發工具之間的連線。連線器的設計也必須符合J1939協定。
c.診斷狀態數據支持。提供一系列的數據格式。包括讀取出錯數據、清除錯誤數據、監測通信參數、獲取節點的配置以及其他的一些信息。
d.診斷測試支持。可以使開發工具把各種控制節點放到具體的測試模式中以正確設計子網體系。診斷工具通過連線器與其他節點進行通信以獲取診斷數據。因此所有的控制節點都應該具備以下功能:讀取診斷故障代碼、清除診斷故障代碼、獲取實時信息。而診斷故障代碼記載了出錯的參數及所在的節點等主要信息。

相關詞條

熱門詞條

聯絡我們