當前位置: 華文世界 > 科技

一文告訴你,CAN與CANFD的區別

2024-05-09科技

隨著汽車電子和工業自動化的迅速發展, CAN匯流排 所承載的裝置數量和數據量大幅增加,給CAN匯流排帶來了巨大挑戰。農機、礦車等 智慧排程 輔助運輸裝置也不例外。為了應對日益增長的數據需求和更高的頻寬要求,CAN FD(CAN with Flexible Data-Rate)應運而生。那麽,CAN FD與傳統CAN匯流排有何區別?在不同的環境中,該如何選擇這兩種匯流排?

01 CAN FD與CAN的區別

CAN FD是CAN協定的一種協定升級,旨在解決傳統CAN匯流排在數據量負荷逐漸達到極限的問題。相較於傳統CAN協定,CAN FD具備了靈活的數據速率調整機制和更大的數據幀長度,主要區別體現在以下幾個方面:

  • 提高位速率,提供更短的CAN幀:CAN FD支持更高的數據傳輸速率,最高可達8 Mbps,而傳統CAN協定的最高速率為1 Mbps。

  • 更短的延遲時間和更好的即時效能:CAN FD具有更好的即時效能和更高的頻寬,可在處理大量數據時縮短數據傳輸時間,提高系統即時效能。

  • 可容納更多數據的CAN幀:傳統CAN協定中,數據幀的最大長度為8字節,而CAN FD支持的數據幀長度最大可達64字節,極大地減少了數據幀的數量,提高了匯流排利用率。

  • 更高效能的 CRC 演算法:CAN FD采用了更高效的CRC演算法,能夠更有效地檢測數據幀中的錯誤,降低未檢測到錯誤的風險。

  • CAN標準幀和CAN FD標準幀對比圖

    CAN擴充套件幀和CAN FD擴充套件幀對比圖

    0 2 如何選擇這兩種匯流排?

    盡管CAN FD在理論上提供了更高的數據傳輸速率和更大的數據幀長度,但在即時效能方面與傳統的CAN匯流排並沒有顯著的差異。它們都采用相同的即時排程策略,即根據訊息的優先級和時間戳來確定數據幀的發送順序。因此,在即時效能方面,CAN FD並未帶來明顯的改進。然而,由於CAN FD支持更高的數據傳輸速率和更大的數據幀長度,處理大量數據時,數據傳輸時間會相對縮短,從而在一定程度上提高了系統的即時效能。 因此,選擇CAN FD還是傳統CAN匯流排取決於其他因素,如數據傳輸需求和成本考慮等。

    對於智慧排程輔助運輸裝置,如農機、礦車等套用中,目前大多數企業仍然選擇使用傳統的CAN匯流排,正是因為其 相較於其他通訊技術成本較低,且 即時性和可靠性表現並不遜色

    而對於需要更高數據傳輸速率和更大數據幀長度的套用或傳輸來說,可以選擇從平的APOLLO 12二代、APOLLO 7二代等車載智慧平板等支持CAN FD的裝置。而為了實作基於CAN的簡單、高速通訊,從平同時提出了 SocketCAN 方案,如我們的APOLLO 12 PRO支持4路SocketCAN匯流排,可以做到 超高速率+70%負載不丟幀 。SocketCAN是一組針對Linux的開源軟體元件,為處理CAN匯流排裝置提供了一個框架。它可以透過Linux內核提供的Socket API進行CAN匯流排的讀寫操作,工作穩定、效能優異,被廣泛套用於各種工業自動化和汽車領域的CAN匯流排控制中。