精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

lhl545545 ? 來源:ZLG致遠電子 ? 作者:ZLG致遠電子 ? 2020-06-09 16:30 ? 次閱讀

總線關閉是CAN節點比較重要的錯誤處理機制。在總線關閉狀態下,CAN節點的恢復流程是怎樣的?如何理解節點恢復流程的“快恢復”和“慢恢復”機制?本文將為大家詳細分析總線關閉及恢復的機制和原理。

故障界定與總線關閉狀態

為了避免某個設備因為自身原因(例如硬件損壞)導致無法正確收發報文而不斷的破壞總線的數據幀,從而影響其它正常節點通信,CAN網絡具有嚴格的錯誤診斷功能,CAN通用規范中規定每個CAN控制器中有一個發送錯誤計數器和一個接收錯誤計數器。根據計數值不同,節點會處于不同的錯誤狀態,并根據計數值的變化進行狀態轉換,狀態轉換如下圖所示。

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

圖1 節點狀態轉換圖情形1

以上三種錯誤狀態表示發生故障的嚴重程度,總線關閉是節點最嚴重的錯誤狀態。并且,節點在不同的狀態下具有不同的特性,在總線關閉狀態下,節點不能發送報文或應答總線上的報文,也就意味著不能再對總線有任何影響。

狀態跳轉和錯誤計數的規則使得節點在發生通信故障時有了較好的自我錯誤處理和恢復機制,從一種較嚴重的錯誤狀態跳轉到另一種嚴重性相對較低的狀態,本質上就是一種恢復過程。圖1所呈現的轉換過程是CAN通用規范所要求的,我們從設備供應商買回來的CAN控制器已經把這些功能固化在硅片之中。

在通信過程中,錯誤主動和錯誤被動兩種狀態下節點的恢復過程一般不需要MCU進行額外的編程處理,直接使用CAN控制器固有功能即可。但對于總線關閉狀態,往往不直接使用CAN控制器固有的恢復過程,而是對其進行編程控制,以實現“快恢復”和“慢恢復”機制。

注:1、由于篇幅有限,關于錯誤計數的詳細規則以及各狀態下節點的具體特性不在本文進行討論,讀者可以查閱CAN的相關協議規范。2、本文的“CAN控制器”是指已經實現了CAN通用協議物理層和數據鏈路層所要求的功能和特性的器件,如SJA1000;而“節點”是指把CAN控制器與MCU、收發器等相關器件進行整合開發出來的具有一定功能的CAN節點。

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

當節點進入總線關閉狀態后,如果MCU僅是開啟自動恢復功能,CAN控制器在檢測到128次11個連續的隱性位后即可恢復通信,在實際的CAN通信總線中,這一條件是很容易達到的。

以125K的波特率為例,128*11*(1/125000)= 0.011264s。這意味著如果節點所在的CAN總線的幀間隔時間大于0.011264s,節點在總線空閑時間內便可輕易恢復通信。我們已經知道,當進入總線關閉狀態時,節點已經發生了嚴重的錯誤,處于不可信狀態,如果迅速恢復參與總線通信,具有較高的風險,因此,在實際的應用中,往往會通過MCU對CAN控制器總線關閉狀態的恢復過程進行編程處理,以控制節點從總線關閉狀態恢復到錯誤主動狀態的等待時間,達到既提高靈活性又保證節點在功能上的快速響應性的目的。具體包括“快恢復”和“慢恢復”策略,兩種策略一般同時應用。

通過以上的討論,我們可以知道,節點進入總線關閉狀態后,存在以下幾種恢復情況:

MCU僅開啟CAN控制器的自動恢復功能,節點只需檢測到128次11個連續的隱性位便可以恢復通信,恢復過程如圖1所示。

MCU沒有開啟CAN控制器的自動恢復功能,也不主動干預總線關閉錯誤,節點將一直無法“自動”恢復總線通信,只能通過重新上電的方式使節點恢復, 恢復過程如圖2所示。

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

圖2 節點狀態轉換圖情形2

MCU對CAN控制器的恢復過程進行編程處理,這時,節點的恢復行為由具體的編程邏輯決定,各廠家普遍采用了先“快恢復”后“慢恢復”的恢復策略,恢復過程如圖3所示。

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

圖3 節點狀態轉換圖情形3

MCU如何實現“快恢復”和“慢恢復”?

MCU編程實現總線關閉“快恢復”和“慢恢復”的一般過程可用以下流程圖描述:

圖4 MCU實現總線關閉恢復流程

節點以正常發送模式發送報文的過程中,如果出現了發送錯誤,發送錯誤計數會增加,只要發送錯誤計數沒有超過255, CAN控制器便會自動重發報文,如果出現多次發送錯誤,使發送錯誤計數累加超過255,則節點跳轉為總線關閉狀態。MCU能夠第一時間知道節點進入了總線關閉狀態(例如在錯誤中斷處理邏輯中查詢狀態寄存器的相應位),這時MCU控制CAN控制器進入“快恢復”過程,即控制CAN控制器停止報文收發,并進行等待,計時達到需要的時間T1(如100ms)后,MCU重新啟動恢復CAN控制器參與總線通信,這樣便完成了一次“快恢復”過程。

節點每進入一次“快恢復”過程時,MCU會對此進行計數,當節點“快恢復”計數達到設定的值N(如5次),則后續再次進入總線關閉狀態時MCU把恢復總線通信的等待時間T2進行延長(如1000ms),這樣便實現了“慢恢復”過程。“快恢復”和“慢恢復”過程的主要區別就在于恢復節點參與總線通信的等待時間的不同。

通過MCU對于總線關閉后的恢復行為進行編程控制,實際上是對CAN控制器的錯誤管理和恢復機制進行了補充,使得總線關閉狀態后的恢復過程更加靈活,更能適應實際應用的需要。對于 “快恢復”和“慢恢復”的等待時間,以及“快恢復”計數多少次后進入“慢恢復”過程,不同廠家可根據具體的需求進行編程實現。

實測總線關閉恢復過程

通過廣州致遠電子有限公司的CAN總線分析儀的流量分析功能,可以很方便分析總線關閉后節點的恢復過程及測試“快恢復”和“慢恢復”的恢復時間。

第一步,連接DUT但先不要上電。按以下配置,使能接收干擾功能,并開啟報文讀取功能。

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

圖5 功能設置

第二步,給DUT上電,并采集一段時間報文,停止采集后使用流量分析功能進行分析。

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

圖6 采集報文并進行流量分析

第三步,鼠標放置于波形“團”(本文把包含多幀密集幀的波形稱為波形“團”)之間讀取恢復時間。

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

圖7 讀取恢復時間

至此,我們便可以得出結論:該DUT對總線關閉的恢復過程進行了編程控制,采用了先“快恢復”后“慢恢復”的恢復機制,節點進入總線關閉狀態后,進行一次“快恢復”過程,后續進行“慢恢復”過程,兩個恢復過程的恢復時間分別為27.5ms和209.5ms。

那么,我們該如何根據所得波形理解該DUT進入總線關閉狀態及恢復通信的整個過程呢?

把第一個波形“團”放大得到下圖:

為什么需要對總線關閉狀態的節點實現“快恢復”和“慢恢復”策略?

圖8 放大波形“團”觀察

可以清晰的看到,波形“團”中包含共32幀CAN報文。把其余各波形“團”放大后也都是包含32幀,這里不再把詳細的圖片貼出來。

DUT上電后,初始發送和接收錯誤計數都為0。由于在測試時配置了接收干擾功能,當DUT開始發送報文后,每一幀報文都受到CAN總線分析儀的干擾而出現發送錯誤,第一次發送時發送錯誤計數加8,并自動重發,第二次發送時錯誤計數再加8,直到發送了32次后,發送錯誤計數大于255,根據圖3的錯誤狀態的轉換規則,這時DUT跳轉為總線關閉狀態,MCU控制進入“快恢復”過程同時對“快恢復”次數進行計數,并等待約27ms后,MCU控制DUT從總線關閉狀態恢復為錯誤主動狀態,由MCU繼續啟動發送,由于仍然受CAN總線分析儀的持續干擾,發送32幀后再次進入總線關閉狀態,再次執行“快恢復”或“慢恢復”過程,以此類推。

根據流量分析的結果可知,該DUT進入“快恢復”的計數達到1次后便執行“慢恢復”過程,“慢恢復”等待時間約為209ms。

注:1、干擾的設置可以根據需要設置其他的參數,只要保證能對DUT發送的幀進行干擾使其出現發送錯誤即可。2、為了分析完整的總線關閉恢復過程,建議DUT和CAN總線分析儀連接好后,先開啟“報文讀取”和“接收干擾”功能后再上電DUT。因為這樣能確保DUT的接收錯誤計數和發送錯誤計數的初始計數都為0。3、需要對DUT進行連續的干擾,否則DUT恢復后成功發送了報文,“快恢復”次數的計數會遞減,這不利于分析DUT總線關閉后的整個恢復行為。 4、總線關閉后節點的“恢復”是指恢復參與總線的通信,但并不意味著恢復后一定能成功發送或接收報文。如上述案例,DUT恢復通信后由于仍然受CAN總線分析儀的干擾,導致報文發送再次失敗。

總結

在總線關閉狀態下,“快恢復”和“慢恢復”不是CAN控制器固有的功能,而是通過MCU的編程邏輯實現的恢復機制,是總線關閉狀態下恢復過程的補充,使恢復過程更具有靈活性。
責任編輯:pj

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據
    +關注

    關注

    8

    文章

    6899

    瀏覽量

    88842
  • 總線
    +關注

    關注

    10

    文章

    2868

    瀏覽量

    87995
  • CAN節點
    +關注

    關注

    0

    文章

    8

    瀏覽量

    9064
收藏 人收藏

    評論

    相關推薦

    恢復二極管選型參數怎么看?常用型號有哪些?

    恢復二極管選型參數怎么看?常用型號有哪些?
    的頭像 發表于 11-14 17:30 ?234次閱讀
    <b class='flag-5'>快</b><b class='flag-5'>恢復</b>二極管選型參數怎么看?常用型號有哪些?

    恢復二極管的重要參數

    恢復二極管(Fast Recovery Diode, FRD)因其較短的反向恢復時間和良好的開關特性,在高頻電路、開關電源、逆變器及電機驅動等領域得到了廣泛應用。
    的頭像 發表于 09-13 16:32 ?2618次閱讀

    恢復二極管的主要參數有哪些

    恢復二極管是一種專為快速切換應用而設計的二極管,主要用于高頻整流、開關電源和逆變器等領域。1.反向恢復時間(ReverseRecoveryTime,t_rr)反向恢復時間是
    的頭像 發表于 09-11 13:51 ?584次閱讀
    <b class='flag-5'>快</b><b class='flag-5'>恢復</b>二極管的主要參數有哪些

    恢復橋損壞如何判斷

    恢復橋是一種廣泛應用于電力電子設備中的整流器件,通常用于對電流要求較高且需要快速恢復特性的電路中。由于其快速切換特性,
    的頭像 發表于 09-04 14:27 ?248次閱讀
    <b class='flag-5'>快</b><b class='flag-5'>恢復</b>橋損壞如何判斷

    恢復二極管有什么作用

    恢復二極管(Fast Recovery Diode,簡稱FRD)是一種具有快速反向恢復特性的高速開關二極管,它在現代電子工業中扮演著至關重要的角色。以下是對
    的頭像 發表于 08-16 18:10 ?1453次閱讀

    恢復二極管是什么意思

    恢復二極管(Fast Recovery Diode,簡稱FRD)是一種具有特殊電氣特性的半導體二極管,其核心特點在于其極短的反向恢復時間和優異的開關性能。
    的頭像 發表于 08-16 18:10 ?1236次閱讀

    恢復二極管的作用和使用場景

    恢復二極管(Fast Recovery Diode,簡稱FRD)是一種具有特殊性能的半導體二極管,其主要特點是開關特性好、反向恢復時間短。這種特性使得
    的頭像 發表于 07-24 15:24 ?1073次閱讀

    恢復二極管的優勢有哪些?

    高速開關能力。普通整流二極管在反向恢復時,通常需要較長時間才能恢復到初始狀態,而恢復二極管的
    的頭像 發表于 07-23 13:50 ?457次閱讀
    <b class='flag-5'>快</b><b class='flag-5'>恢復</b>二極管的優勢有哪些?

    恢復橋檢查方法有哪些?

    恢復橋作為現代電力電子設備中的重要組成部分,其性能和可靠性直接影響整個系統的效率和穩定性。恢復橋具有較快的恢復時間,廣泛應用于各種高頻電
    的頭像 發表于 07-11 10:38 ?283次閱讀
    <b class='flag-5'>快</b><b class='flag-5'>恢復</b>橋檢查方法有哪些?

    恢復二極管常見的品質問題有哪些?

    恢復二極管是一種常用于高頻、高效能電路中的半導體器件。它們在電力電子設備中扮演著關鍵角色,如開關電源、逆變器和電機驅動器等。然而,恢復二極管在實際應用中可能會遇到各種品質問題,這些
    的頭像 發表于 07-02 09:58 ?296次閱讀
    <b class='flag-5'>快</b><b class='flag-5'>恢復</b>二極管常見的品質問題有哪些?

    開關電源恢復二極管損壞有什么現象

    由于恢復二極管的反向恢復時間短,能迅速截止導通狀態,減小了在開關周期內的開關回路壓降,有助于降低功耗和提高系統性能。
    的頭像 發表于 02-29 17:24 ?1851次閱讀

    恢復二極管的作用有哪些

    夠快速地從正向導通狀態切換到反向截止狀態,并在反向擊穿時承受高電壓。 恢復二極管采用特殊的材料和結構設計,以實現更快的反向
    的頭像 發表于 01-12 15:53 ?1829次閱讀
    <b class='flag-5'>快</b><b class='flag-5'>恢復</b>二極管的作用有哪些

    恢復二極管與整流二極管能代換使用嗎?

    特殊設計的二極管,它具有短恢復時間、低反向恢復電流和高浪涌電容的特點。它通常用于高頻開關電路和需要快速反向恢復的應用,如電源開關模式電源和電機驅動等。
    的頭像 發表于 01-12 14:43 ?3002次閱讀

    簡單認識恢復二極管

    。對于恢復二極管(Fast Recovery Diode, FRD)即續流用功率二極管,要有恢復速度及低通態電壓,同時具備較高的軟度(Softness,也稱作
    的頭像 發表于 01-11 10:21 ?1225次閱讀
    簡單認識<b class='flag-5'>快</b><b class='flag-5'>恢復</b>二極管

    什么是恢復二極管?恢復二極管的作用?恢復二極管有哪些呢?

    、整流器、變頻器等。下面將詳細介紹恢復二極管的作用以及一些常見的恢復二極管。 恢復二極管的
    的頭像 發表于 12-21 10:26 ?3141次閱讀