詳解CAN總線(xiàn):CAN總線(xiàn)故障界定與管理
CAN總線(xiàn)故障界定的目標(biāo)是實(shí)現(xiàn)數(shù)據(jù)傳輸系統(tǒng)即使在節(jié)點(diǎn)發(fā)生故障的情況下也能維持很高的可用性。
因此故障界定策略必須證明在以下2個(gè)方面是可靠的:
區(qū)分短期故障和永久性故障;
找到并斷開(kāi)故障節(jié)點(diǎn)。
故障界定策略是每個(gè)節(jié)點(diǎn)都配備有一個(gè)發(fā)送錯(cuò)誤接收器及一個(gè)接收錯(cuò)誤接收器,前者記錄發(fā)送幀期間發(fā)生的錯(cuò)誤數(shù)目,后者則記錄接收幀期間發(fā)生的錯(cuò)誤數(shù)目。
1
錯(cuò)誤狀態(tài)的種類(lèi)
對(duì)故障界定而言,CAN節(jié)點(diǎn)根據(jù)錯(cuò)誤計(jì)數(shù)結(jié)果的不同,可以處于下列3種狀態(tài)之:主動(dòng)錯(cuò)誤狀態(tài)、被動(dòng)錯(cuò)誤狀態(tài)和總線(xiàn)關(guān)閉態(tài)。
1、主動(dòng)錯(cuò)誤狀態(tài)
主動(dòng)錯(cuò)誤狀態(tài)是可以正常參加總線(xiàn)通信的狀態(tài)。處于主動(dòng)錯(cuò)誤狀態(tài)的單元檢測(cè)出錯(cuò)誤時(shí),輸出主動(dòng)錯(cuò)誤標(biāo)志。
2、被動(dòng)錯(cuò)誤狀態(tài)
被動(dòng)錯(cuò)誤狀態(tài)是易引起錯(cuò)誤的狀態(tài)。
處于被動(dòng)錯(cuò)誤狀態(tài)的單元雖能參加總線(xiàn)通信,但為不妨礙其它單元通信,接收時(shí)不能積極地發(fā)送錯(cuò)誤通知。
處于被動(dòng)錯(cuò)誤狀態(tài)的單元即使檢測(cè)出錯(cuò)誤,而其它處于主動(dòng)錯(cuò)誤狀態(tài)的單元如果沒(méi)發(fā)現(xiàn)錯(cuò)誤,整個(gè)總線(xiàn)也被認(rèn)為是沒(méi)有錯(cuò)誤的。
處于被動(dòng)錯(cuò)誤狀態(tài)的單元檢測(cè)出錯(cuò)誤時(shí),輸出被動(dòng)錯(cuò)誤標(biāo)志。
另外,處于被動(dòng)錯(cuò)誤狀態(tài)的單元在發(fā)送結(jié)束后不能馬上再次開(kāi)始發(fā)送。在開(kāi)始下次發(fā)送前,在間隔幀期間內(nèi)必須插入“延遲傳送”(8 個(gè)位的隱性位)。
3、總線(xiàn)關(guān)閉態(tài)
總線(xiàn)關(guān)閉態(tài)是不能參加總線(xiàn)上通信的狀態(tài)。信息的接收和發(fā)送均被禁止。
這些狀態(tài)依靠發(fā)送錯(cuò)誤計(jì)數(shù)和接收錯(cuò)誤計(jì)數(shù)來(lái)管理,根據(jù)計(jì)數(shù)值決定進(jìn)入何種狀態(tài)。錯(cuò)誤狀態(tài)和計(jì)數(shù)值的關(guān)系如下表和圖所示:
![圖片](http://editerupload.eepw.com.cn/fetch/202210/c29b084259ba4cd928a4997fc37b7a8c.png)
2
故障界定規(guī)則
發(fā)送錯(cuò)誤計(jì)數(shù)值和接收錯(cuò)誤計(jì)數(shù)值根據(jù)一定的條件發(fā)生變化。錯(cuò)誤計(jì)數(shù)器在錯(cuò)誤標(biāo)志的第一個(gè)位出現(xiàn)的時(shí)間點(diǎn)上開(kāi)始計(jì)數(shù)。一次數(shù)據(jù)的接收和發(fā)送可能同時(shí)滿(mǎn)足多個(gè)條件。
錯(cuò)誤計(jì)數(shù)值的變動(dòng)條件如下表所示:
![圖片](http://editerupload.eepw.com.cn/fetch/202210/8401bfd52df60feb9a8c2c4728ffa8e5.png)
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。