CAN現(xiàn)場總線的優(yōu)點是什么?
CAN總線是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò)。其通訊介質(zhì)可以是雙絞線、同軸電纜或光纖。在汽車發(fā)動機控制部件、傳感器等應(yīng)用中,現(xiàn)場總線的位速率至大可達1Mbit/s。
(1)多主控制:在總線空閑時,所有的單元都可開始發(fā)送消息(多主控制)。優(yōu)先訪問總線的單元可獲得發(fā)送權(quán)(CSMA/CA)。多個單元同時開始發(fā)送時,發(fā)送高優(yōu)先級D。?
(2)消息的發(fā)送:在CAN協(xié)議中,所有的消息都以固定的格式發(fā)送。總線空閑時,所有與總線相連的單元都可以開始發(fā)送新消息。兩個以上的單元同時開始發(fā)送消息時,根據(jù)標識符(D)決定優(yōu)先級。兩個以上的單元同時開始發(fā)送消息時,對各消息ID的每個位進行逐個仲裁比較。仲裁獲勝(被判定為優(yōu)先級更高)的單元可繼續(xù)發(fā)送消息,仲裁失利的單元則立刻停止發(fā)送而進行接收工作。?消息的單元可獲得發(fā)送權(quán)
(3)系統(tǒng)的柔軟性:與總線相連的單元沒有類似于“地址”的信息。因此在總線上增加單元時,連接在總線上的其它單元的軟硬件及應(yīng)用層都不需要改變。?
(4)通信速度:根據(jù)整個網(wǎng)絡(luò)的規(guī)模,可設(shè)定適合的通信速度。在同一網(wǎng)絡(luò)中,所有單元必須設(shè)定成統(tǒng)一的通信速度。即使有一個單元的通信速度與其它的不一樣,此單元也會輸出錯誤信號,妨礙整個網(wǎng)絡(luò)的通信。不同網(wǎng)絡(luò)間則可以有不同的通信速度。??
(5)遠程數(shù)據(jù)請求可通過發(fā)送“請求幀”請求其他單元發(fā)送數(shù)據(jù)。?
(6)錯誤檢測功能·錯誤通知功能·錯誤恢復功能:所有的單元都可以檢測錯誤(錯誤檢測功能)。檢測出錯誤的單元會立即同時通知其他所有單元(錯誤通知功能)。正在發(fā)送消息的單元一旦檢測出錯誤,會強制結(jié)束當前的發(fā)送。強制結(jié)束發(fā)送的單元會不斷反復地重新發(fā)送此消息直到成功發(fā)送為止(錯誤恢復功能)。?
(7)故障封閉:CAN可以判斷出錯誤的類型是總線上暫時的數(shù)據(jù)錯誤(如外部噪聲等)還是持續(xù)的數(shù)據(jù)錯誤(如單元內(nèi)部故障、驅(qū)動器故障、斷線等)。由此功能,當總線上發(fā)生持續(xù)數(shù)據(jù)錯誤時,可將引起此故障的單元從總線上隔離出去。?
(8)連接:CAN總線是可同時連接多個單元的總線??蛇B接的單元總數(shù)理論上是沒有限制的。但實際上可連接的單元數(shù)受總線上的時間延遲及電氣負載的限制。降低通信速度,可連接的單元數(shù)增加;提高通信速度,則可連接的單元數(shù)減少。