新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > CAN消極報錯發(fā)送節(jié)點變?yōu)殡x線狀態(tài)的故障

CAN消極報錯發(fā)送節(jié)點變?yōu)殡x線狀態(tài)的故障

作者: 時間:2009-06-30 來源:網(wǎng)絡 收藏

只要有掛起待發(fā)的消息,此錯就重復發(fā)生。由于的地位未變,它的TEC就一直加上去,直到TEC≥256,成為真正的離線。這不是本文第1節(jié)所說的等同離線。在離線下,如果能從總線上讀到128次連續(xù)的11位隱位,它就可以恢復為主動報錯狀態(tài)??偩€上不足11位的隱位將不被計入。因此,這種離線狀態(tài)一般要長于參考文獻[1]所說的等同離線狀態(tài)。為了作比較,假定幀長均為含2字節(jié)數(shù)據(jù)的幀(66位),在掛起的消息傳送16次后,該處于報錯狀態(tài)的成為離線,即16×(66+3)=1 104位后離線;又假設最壞情況下有分散的10位空閑,那么節(jié)點處于離線的時間為128×(66+3+10)=10112位。該處于報錯狀態(tài)的節(jié)點發(fā)現(xiàn)一個本地錯后,將有11 216位的時間不能正常收發(fā)。同樣情況下,一個處于報錯狀態(tài)的接收節(jié)點發(fā)現(xiàn)一個本地錯后在第一次遇到足夠空閑時間時,其等同離線狀態(tài)就會結束。
這種處于消極報錯狀態(tài)的發(fā)送節(jié)點有三種可能的方案:第一種方案是,將消極報錯幀分界符長度按一定的規(guī)則改變,使處于消極報錯狀態(tài)的節(jié)點發(fā)現(xiàn)一個錯后總能與其他節(jié)點幀啟停保持同步。在本文討論的處于消極報錯狀態(tài)的發(fā)送節(jié)點通信控制器芯片要修改。第二種方案是采用某種形式的時間觸發(fā)協(xié)議,預留出一些總線空閑時間,使處于消極報錯狀態(tài)的節(jié)點發(fā)現(xiàn)一個本地錯后仍能與其他節(jié)點幀啟停同步;但是迄今為止討論的CAN時間觸發(fā)協(xié)議都缺少足夠的糾錯能力,它們都禁止CAN的出錯自動重發(fā)機制,在出錯后會導致數(shù)據(jù)的丟失。第三種可能的解決方案是,放棄消極報錯狀態(tài),沒了消極報錯狀態(tài)就沒了消極報錯幀,就不會有不同步的情況出現(xiàn),也就不會有離線和等同離線的情況出現(xiàn)。
消極報錯狀態(tài)使通信控制器在正常工作與停工之間有一個中間狀態(tài),在此種狀態(tài)下,它仍可發(fā)送和接收。唯一的差別是它的報錯能力被限制到很?。褐挥邪l(fā)送節(jié)點在ACK以前的本地錯會被其他節(jié)點知道。在其他情況下,消極報錯幀不會影響其他節(jié)點的收發(fā),不管這種錯是本地錯還是全局錯。這樣,如果這個處于消極報錯狀態(tài)的節(jié)點不正常,那么它對系統(tǒng)性能下降的影響就很?。蝗绻ぷ髡?,則系統(tǒng)的性能沒有損失。
對汽車類的應用來說,環(huán)境很惡劣,出錯是不可避免的,然而在現(xiàn)場進行排障或修理是有難度或不可能的(例如上天或人海的應用)。在那里,能“跛”著回家是最好的策略。這種策略不僅適用于機械部分,也適用于工作失常的電子通信系統(tǒng)。消極報錯狀態(tài)符合這種策略。當車子在這種“跛”著回家方式下工作時,某些暫時性的有可能消失。例如,環(huán)境溫度、電磁場、振動都可能因工況的不同或路段的不同而改變。隨著通信恢復正常,節(jié)點的狀態(tài)也可由消極報錯狀態(tài)回到主動報錯狀態(tài)。如果節(jié)點只有主動報錯和離線二種狀態(tài),那么離線時節(jié)點就要不斷測試通信是否恢復,或者等一段時間測試一下。顯然,這些方法效率要低,不像消極報錯狀態(tài)時仍能提供服務,意味著提供服務的時間的減少。延長處于主動報錯狀態(tài)的時間,而去掉消極報錯狀態(tài),會使有本地的節(jié)點對系統(tǒng)的干擾時間也延長。因此廢棄消極報錯狀態(tài)不是一個好的選擇。從Bosch CAN2.0規(guī)范里也可以體會到這一點:它規(guī)定一個處于消極報錯狀態(tài)的節(jié)點一定不得發(fā)主動報錯標志。消極報錯狀態(tài)的想法也為FlexRay所采用,在它的協(xié)議運行控制部分規(guī)定有三種狀態(tài),分別是POC:NormalActive、POC:Normeal Passive和POC:Halt。


4 小 結
上述分析表明:處于消極報錯狀態(tài)的CAN發(fā)送節(jié)點在某些條件下會因一次誤判而進入離線狀態(tài)。其離線的時間一般比處于消極報錯狀態(tài)的接收節(jié)點因一次誤判而進入的等同離線狀態(tài)要長。為了避免這種類型的失效,最好的解決方案是采用可變長消極報錯幀分界符,使消極報錯狀態(tài)的節(jié)點總能與系統(tǒng)內(nèi)的其他節(jié)點保持幀啟停的同步。在同步的情況下,假設現(xiàn)有CAN調(diào)度分析的理論沒有大的缺失,例如沒有此類故障,沒有引起超載幀的條件,可以提供較為可信的結果。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉