<ins id="cyaqs"></ins>

      <menu id="cyaqs"><strong id="cyaqs"></strong></menu>
      聯系我們

      手 機:13634299313

      報價QQ:421563834

      電 話:0577-27877837

      傳 真:0577-27877835
      地 址:浙江省溫州市樂清柳市鎮柳黃路1600號


      當前位置:首頁 > 新聞資訊 > 公司動態
      智能照明控制器基礎知識三:CAN總線
        發布時間:2016-12-10 14:59:15   發布人:巨川電氣 (人氣: )
      1.CAN總線是什么? CAN(Controller Area Network)是ISO國際標準化的串行通信協議。廣泛應用于汽車、船舶等。具有已經被大家認可的高性能和可靠性。 CAN控制器通過組成總線

      1.CAN總線是什么?

          CAN(Controller Area Network)是ISO國際標準化的串行通信協議。廣泛應用于汽車、船舶等。具有已經被大家認可的高性能和可靠性。

          CAN控制器通過組成總線的2根線(CAN-H和CAN-L)的電位差來確定總線的電平,在任一時刻,總線上有2種電平:顯性電平和隱性電平。

          “顯性”具有“優先”的意味,只要有一個單元輸出顯性電平,總線上即為顯性電平,并且,“隱性”具有“包容”的意味,只有所有的單元都輸出隱性電平,總線上才為隱性電平。(顯性電平比隱性電平更強)。

          總線上執行邏輯上的線“與”時,顯性電平的邏輯值為“0”,隱性電平為“1”。

          下圖顯示了一個典型的CAN拓撲連接圖。

          連接在總線上的所有單元都能夠發送信息,如果有超過一個單元在同一時刻發送信息,有最高優先級的單元獲得發送的資格,所有其它單元執行接收操作。



      2.CAN總線的特點


           CAN總線協議具有下面的特點:

          1) 多主控制

          當總線空閑時,連接到總線上的所有單元都可以啟動發送信息,這就是所謂的多主控制的概念。

          先占有總線的設備獲得在總線上進行發送信息的資格。這就是所謂的CSMA/CR(Carrier Sense MultipleAccess/Collosion Avoidance)方法

          如果多個設備同時開始發送信息,那么發送最高優先級ID消息的設備獲得發送資格。

          2) 信息的發送

          在CAN協議中,所有發送的信息要滿足預先定義的格式。當總線沒有被占用的時候,連接在總線上的任何設備都能起動新信息的傳輸,如果兩個或更多個設備在同時刻啟動信息的傳輸,通過ID來決定優先級。ID并不是指明信息發送的目的地,而是指示信息的優先級。如果2個或者更多的設備在同一時刻啟動信息的傳輸,在總線上按照信息所包含的ID的每一位來競爭,贏得競爭的設備(也就是具有最高優先級的信息)能夠繼續發送,而失敗者則立刻停止發送并進入接收操作。因為總線上同一時刻只可能有一個發送者,而其它均處于接收狀態,所以,并不需要在底層協議中定義地址的概念。

          3) 系統的靈活性

          連接到總線上的單元并沒有類似地址這樣的標識,所以,添加或去除一個設備,無需改變軟件和硬件,或其它設備的應用層軟件。

          4) 通信速度

          可以設置任何通訊速度,以適應網絡規模。

          對一個網絡,所有單元必須有相同的通訊速度,如果不同,就會產生錯誤,并妨礙網絡通訊,然而,不同網絡間可以有不同的通訊速度。

          5) 遠程數據請求

      可以通過發送“遙控幀”,請求其他單元發送數據。

          6) 錯誤檢測、錯誤通知、錯誤恢復功能

      所有單元均可以檢測出錯誤(錯誤檢測功能)。

      檢測到錯誤的單元立刻同時通知其它所有的單元(錯誤通知功能)。如果一個單元發送信息時檢測到一個錯誤,它會強制終止信息傳輸,并通知其它所有設備發生了錯誤,然后它會重傳直到信息正常傳輸出去(錯誤恢復功能)。

          7) 錯誤隔離

      在CAN總線上有兩種類型的錯誤:暫時性的錯誤(總線上的數據由于受到噪聲的影響而暫時出錯);持續性的錯誤(由于設備內部出錯(如驅動器壞了、連接有問題等)而導致的)。CAN能夠區別這兩種類型,一方面降低常出錯單元的通訊優先級以阻止對其它正常設備的影響,另一方面,如果是一種持續性的錯誤,將這個設備從總線上隔離開。

          8) 連接

      CAN總線允許多個設備同時連接到總線上且在邏輯上沒有數目上的限制。然而由于延遲和負載能力的限制,實際可連接得設備還是有限制的,可以通過降低通訊速度來增加連接的設備個數。相反,如果連接的設備少,通訊的速度可以增加。

      3.錯誤

      3.1 錯誤狀態


          設備總是處于下面三個狀態之一:

          1)主動錯誤狀態

          在此狀態下,設備能夠參加總線上的正常通訊。如果處于主動錯誤狀態的設備檢測到一個錯誤,它會發送一個主動錯誤標志,更細節見第6章的“CAN協議”。

          2)被動錯誤狀態

          是指易于引起錯誤的狀態。

          盡管處于被動錯誤狀態的設備能夠參加總線上的通訊,但是在接收期間,它不可能主動地向其它設備發送錯誤通知,以避免影響它們的通訊。處于被動錯誤狀態的設備即使檢測到一個錯誤,如果其它處于主動錯誤狀態的設備沒曾檢測到錯誤,那么也認為在總線上未曾出現過任何錯誤。

          當處于被動錯誤狀態的設備檢測到一個錯誤的時候,它發送一個被動錯誤標志。

          另外,處于被動錯誤狀態的單元在發送結束后不能立刻再次開始發送。在開始下次發送前,在間隔幀期間內必須插入“暫停發送期”(由8個位的隱性位組成)。

      更細節見第6章的“CAN協議”。

          3)總線切斷狀態

          處于此狀態下時,設備不能參加總線的通訊。設備所有的收發操作都被禁止。

          這些狀態是通過發送錯誤計數器和接收錯誤寄存器來管理,相關錯誤狀態由這些計數器值的組合來標識,錯誤狀態和計數器值之間的關系見表1和圖4。




      3.2 錯誤計數器的值

          發送和接收錯誤計數器的值按照規定的條件來改變。

          表2小結了錯誤計數器值改變的條件。

          在一個數據收發操作中可能會發生多個條件重疊。

          錯誤計數器增加的時間發生在錯誤標志的第一bit位置。


      4.CAN協議的基本概念

           CAN協議包括OSI參考模型的傳輸層、數據鏈路層、物理層。圖5顯示了CAN協議每個層的定義。

           數據鏈路層劃分為MAC(Medium Access Control媒體存取控制)和LLC(Logical Link Control羅輯鏈路控制)。MAC子層組成CAN協議的核心。數據鏈路層的功能是將從物理層接收到的信號組織成有意義的信息,提供如傳輸錯誤控制等數據傳輸控制流程。更具體來說,包括:信息如何封裝成一幀,數據沖突仲裁、應答、錯誤的檢測或通知。數據鏈路層的這些功能通常由CAN控制器硬件來實現。

           物理層定義信號的實際傳輸方式、位的時序、位的編碼、同步的過程步驟,然而,CAN協議并沒有定義了信號電平、通訊速度、采樣點值、驅動器和總線電氣特征、連接器形式。對每個系統,這些特征由用戶自行確定。

           在BOSCH公司的CAN協議中,并沒有關于收發器和總線的電氣特征的定義,而在ISO CAN協議中,如ISO11898和ISO11519-2卻對此有明確的定義。



       

      相關文章

      纯肉黄暴np文公交车

      <ins id="cyaqs"></ins>

          <menu id="cyaqs"><strong id="cyaqs"></strong></menu>