LIN总线知识基础
LIN(Local Interconnect Network)總線,即本地互聯網是一種通信網絡協議,它是一種單線串行網絡協議,在40米長的總線上支持高達19.2Kbit/s的通信,速度為20bit/s。雖然了解了LIN總線這些規格后,人們可能會意識到CAN總線的強大,但LIN總線的低速也正是它在通信網絡協議世界中存在的原因。LIN總線滿足了對具有相當低的速度和低帶寬要求的組件的低成本選擇的需要。實際上,CAN總線如果用于汽車的每一個部件,成本會很高。因此,LIN作為一種低成本的替代方案,可以在車輛的大部分機電部件之間進行通信。
通常情況下,不影響車輛性能的部件會使用LIN總線進行通信,它主要是由五家汽車制造商開發的;即寶馬、大眾集團、奧迪、沃爾沃汽車、梅賽德斯-奔馳),網絡和硬件等技術由Volcano汽車集團和摩托羅拉提供。LIN 1.3版是新LIN規范的第一個完全實施的版本(2002年11月),于2003年9月又推出2.0版,擴大了配置能力,規定了重要的額外診斷功能和工具接口等。
LIN總線的特點
有許多功能增加了 LIN 總線的普及,比如:
??比其他協議的成本低
??減少線束
??使用可靠
??配置靈活
??觸發調度時間較少
??損失更少
??延遲時間的準確性
??錯誤檢測和校驗
??節點低廉
??不需要協議許可
??支持睡眠和喚醒模式
??分層網絡的可變使能器
??工作電壓為12V[8]
??數據幀的長度(2、4和8字節)
LIN總線工作原理
LIN 僅使用一根線(單線總線), 在這樣一個網絡上,可以容納 16 個節點。16 個節點中的一個充當“主節點”,其他節點自動充當“從節點”;與純粹主-主設置的 CAN 不同,LIN 是典型的主-從配置,其中一個節點傳遞指令或命令,另一個跟隨。這里可以有1到15個從屬設備,主設備同時包含一個主任務和一個從屬任務。主機和從機通常是微控制器。車輛內部的通信網絡是 CAN 和 LIN 總線的協作, LIN 總線用于車身電子,CAN 用于主流動力總成和車身通信。在 LIN 中,各子系統可以通過使用 CAN 總線的骨干網絡連接。
許多組件可以使用LIN總線進行連接。而速度和成本是使用CAN或LIN的重要決定因素。
LIN可以使用標準的串行通用異步接收/發送器(嵌入到大多數現代低成本的8位微控制器中),而且相對來說更為低廉,其中CAN服務于高速且容錯率低的,并在5V差分總線上運行;而LIN在12V單線總線上滿足低速、低帶寬的要求。
幀結構:數據以固定格式的信息(可選擇長度)在總線上傳輸。主站任務傳送一個報頭,包括一個中斷信號,然后是同步和標識符字段。每當有請求時,從站都會以信息(以包含 2、4 和 8 個數據字節以及 3 個字節的控制信息的數據幀的形式)進行響應。從屬設備不會自己進行通信;只有主站可以使它們進行通信。所有的消息都是由主站發起的,最多只有一個從站對給定的消息標識符進行回復。如果從屬任務需要發布響應,它將向總線傳輸1到8個數據字節,然后是一個校驗字節。主節點也可以通過回復其消息來充當從節點。由于主節點發起了所有的通信,因此沒有必要實施沖突檢測。
LIN報文幀分為兩個主要部分,即??
??“報文幀頭 "總是只由主節點傳送,由中斷、同步(同步)和標識符字段組成。
??“報文響應”可由主節點和從節點傳輸,由數據和校驗和字段組成。
Break 中斷: 標志著幀的開始,用來使所有的從站都能收聽到標題中即將出現的部分;由 13 位(顯性位)和 1 位(隱性)中斷定界符(十六進制值 0X00)組成。
Sync 同步:它允許從屬設備調整其內部波特率以與總線同步,通過允許執行自動波特率檢測的從屬設備來測量波特率的周期(十六進制值 0X55)。
Identifier 標識符:該字段為每條消息提供標識,并指定網絡中的哪些節點需要接收或響應每次傳輸。所有從節點都偵聽 ID 字段并驗證它們的奇偶,以確定它們是否必須發送或接收特定標識符(低六位包含原始 ID,高兩位包含奇偶性)。
LIN總線總共提供64個ID
| ID 0-59 | 用于攜帶信號的數據幀 |
| ID 60-61 | 用于攜帶診斷數據 |
| ID 62 | 保留給用戶定義的擴展 |
| ID 63 | 保留給未來的協議增強功能 |
響應空間:LIN幀的ID字段和第一個數據字節消息響應部分之間的時間間隔。當一個特定的 LIN 幀由 LIN 主節點完整傳輸時,包括一個報頭和一個響應,它使用整個響應空間來計算在發送報頭之后何時發送響應。如果 LIN 幀的響應部分來自物理上不同的從節點,則每個節點(主節點和從節點)在其超時計算中使用 50% 的響應空間時間。
數據:標志著信息響應的開始。它由一個LIN從站作為響應傳送到網絡上,形式為1到8個字節的有效載荷數據字節。
校驗和:?LIN總線定義了使用兩種校驗算法中的一種來計算八位校驗和字段中的值。傳統的校驗算法是單獨計算數據字節的總和,而增強型校驗和是通過計算數據字節和受保護的ID的總和。
LIN總線的高級幀類型:根據幀傳輸的時序或它們所包含的數據字節的內容,LIN幀被分為六種高級類型。
| 無條件幀 | ●?最常用的框架類型。 ●?總是攜帶信號/數據。 ●?標識符范圍 - 0至59(0x00至0x3b)。 ●?所有訂閱者都收到該幀。 ●?使其可用于應用程序(假設沒有檢測到錯誤)。 |
| 事件幀 | ●?允許多個從屬站在一個幀槽時間內響應。 ●?節省帶寬。 ●?標識符范圍 - 0至59 ●?攜帶的無條件幀的第一個數據字節等于分配給事件觸發幀的保護標識符。 ●?從站用一個相關的無條件幀進行回復。(只有當其數據值發生變化時) ●?如果沒有任何從屬任務對頭的響應,幀槽的其余部分是靜默的,報頭被忽略。 ●?如果在同一個幀槽中,有一個以上的從屬任務對標頭作出響應,就會發生碰撞。 ●?主站必須在再次請求事件觸發的幀之前,通過請求所有相關的無條件幀來解決碰撞問題。 |
| 零星幀 | ●?由主節點按要求傳送。 ●?無碰撞。 ●?只有當主站任務知道幀中攜帶的信號已被更新時,才應在其相關的幀槽中發送報頭 ●?零星幀的發布者應始終響應報文頭。 ●?使得LIN動態化。 |
| 診斷幀 | ●?攜帶診斷或配置數據。 ●?包含八個數據字節 ●?識別器 60 (0x3C) :主站請求幀。 ● 61 (0x3D) :從站響應幀。 ●?主節點在生成診斷幀的報頭之前,詢問診斷模塊是否應發送或總線是否應沉默。 ●?從屬節點根據其診斷模塊發布和訂閱響應。 |
| 用戶定義幀 | ●?可以攜帶任何種類的信息。 ●?識別器62 (0x3E) ●?幀頭總是在處理分配給該幀的幀槽時被傳送。 |
| 保留幀 | ●?不能在LIN 2.0集群中使用 ●?識別碼63 (0x3F) |
盡管LIN總線是一種具有成本效益的通信方法,但它并不能完全替代CAN總線。它只有在低速或帶寬沒有過高要求,而且成本可以有效操縱的情況下,才是一個很好的替代品。通常情況下,它被用作連接模塊的中央系統CAN總線的子系統支持,這些模塊對車輛性能或安全并不重要。
在Influx Technology 公司,數據記錄儀支持LIN總線和CAN總線(數字和模擬), "完整的數據記錄儀 "使其成為您的車輛網絡系統的理想選擇。
總結
- 上一篇: Pod控制器(一)ReplicaSet
- 下一篇: STC15单片机-ADC获取环境温度(N