回覆列表
  • 1 # 使用者2002505543991

    CAN匯流排需要保持一個低的負載率,主要原因是為了避免資料碰撞引起仲裁後,優先順序較低的節點無法發出訊息的情況。

    引用金晶同學的論文《車用CAN網路實時性與可靠性研究》中的實驗資料。

    以上實驗資料為總線上接有8個節點,優先順序分別為1~8,透過調整資料傳送週期來改變負載率,測試匯流排在不同負載情況下的資料平均傳輸時間。所有的資料均為8個位元組。

    理論傳輸時間可由以下公式計算

    那麼125Kbps情況下,理論傳輸時間為1.211ms,1Mbps下理論傳輸時間為0.151ms。

    可以看到,在負載率為30%的情況下,優先順序較高的節點的平均報文傳輸時間與理論傳輸時間相差無幾。但優先順序最低的仍有20%左右的延時。

    在負載率達到60%的情況下,優先順序最高的節點都已經有至少25%的延時了,優先順序最低的延時達到了4倍,根本無法保證實時性。

    因此,負載率當然是越低越好,越能保證實時性,但是負載率太低就無法傳輸足夠的資料。這也是CAN的一個問題之一,在資料量大的時候難免無法保證實時性。一般的說法是30%左右是最好的。

    在自動駕駛日益發達,導航系統日益完善,安全系統的安全係數仍需提升的今天,資料量也在不斷上升。可以看出在未來,CAN可能無法滿足使用要求而被淘汰。但目前而言,由於車用乙太網等,一個是技術不夠成熟,另一個是成本也不夠低,CAN應該仍佔主流。

  • 中秋節和大豐收的關聯?
  • 《當》歌詞?