亚洲美女爱爱-夜夜添夜夜添夜夜摸夜夜摸-97碰成人国产免费公开视频-国产午夜大片-www黄av-国产94在线 | 亚洲-亚洲午夜久久久精品一区二区三剧-精品视频亚洲-久久久久国色av∨免费看-黄色片一区二区-69福利视频-国产老头和老头xxxxx免费-99精品视频一区在线观看-日韩三级黄色毛片-亚洲激情图片区-黄色a一级-99re6在线-91九色视频-日本欧美久久久-成人国产精品免费观看

你的位置:首頁 > 測試測量 > 正文

基于STM32F105微控制器的雙CAN冗余的方案設計

發布時間:2014-10-16 責任編輯:echolady

【導讀】控制局域網又稱CAN,是一種多主方式的串行通訊總線。CAN總線以其抗電磁干擾性強、位速率高、錯誤檢測機制完善的特點被廣泛應用于航空航天、汽車制造等工業領域。尤其是船在行駛時,環境惡劣,通信方面的準確性和可靠性高,雙CAN冗余總線的通信完全符合條件。針對這種情況,本文中的方案設計是基于STM32F105微控制器的雙CAN 冗余設計方案。
 
一、硬件設計

1、平臺搭建
  
STM32F105是一款基于ARM Co rtex- M3內核的32位微控制器, 其內核是專門設計于滿足高性能、低功耗、實時應用的嵌入式領域的要求。由于采用Thumb - 2指令集,與ARM7微控制器相比STM32運行速度最多可快35% 且代碼最多節省45% 。較高的主頻和代碼執行效率使系統在進行CAN 總線數據收發的同時仍可運行總線冗余算法。STM32F105微控制器內部集成2路獨立的CAN 控制器, 控制器集成在芯片內部, 避免了總線外擴引入的干擾, 同時簡化了電路設計、降低成本。
 
2、方案設計
  
系統使用兩條完全獨立的CAN 總線, 兩個CAN 總線收發器和總線控制器, 實現物理層、數據鏈路層的全面冗余。在初始化時兩個控制器被同時激活, 一個作為主CAN, 另一個作為從CAN, 為主控制器的備份。正常運作時, 數據通過主CAN 優先發送; 當主CAN 總線繁忙時, 從CAN 總線分擔部分通信流量; 而當主CAN 總線發生故障時, 數據轉移至從CAN 控制器傳輸, 反之亦然。在任一總線發生故障時,數據都能經由另一條總線傳輸, 而當兩條總線都正常時, 使用兩總線同時傳輸, 增加約1倍的通信帶寬,這樣在保證了通信可靠性的同時提高了實時性。
  
CAN 總線接口電路設計如圖1所示,使用TJA1050作為總線收發器,它完成CAN 控制器與物理總線之間的電平轉換和差動收發。盡管TJA1050本身具備一定的保護能力,但其與總線接口部分還是采用一定的安全和抗干擾措施;TJA1050的CANH 和CANL與地之間并聯兩只10pF的小電容, 可以濾除總線上的高頻干擾;另外,為了增強CAN 總線節點的抗干擾能力,總線輸入端與地之間分別接入一只瞬態抑制二極管,當兩輸入與地之間出現瞬變干擾時,收發器輸入端電壓被鉗位在安全范圍。
 
為防止總線過壓造成節點損壞,STM32F105內置CAN 控制器的數據收發引腳并不與TJA1050直接相連,通過ADuM1201磁隔離器實現信號隔離傳輸。與傳統光耦隔離相比,磁隔離簡化了隔離電路設計,并且磁隔離芯片的功耗很低,大約相當于光耦隔離的1/10。除了將CAN 數據信號隔離外,TJA1050T使用的電源和地也必須與系統完全隔離,使用5V 隔離輸出的開關電源模塊IB0505LS提供隔離電源。由于CAN 總線數據傳輸率較高,為了提高信號質量,網絡拓撲結構應盡量設計成單線結構以避免信號反射, 同時終端連接120歐姆左右的匹配電阻。
 
基于STM32F105微控制器的雙CAN冗余的方案設計
圖1:CAN 接口電路設計
 
 
二、軟件設計
  
CAN 協議規范定義的數據鏈路層和部分物理層并不完整,雙CAN 冗余應用需要實現總線狀態監控、網絡故障的診斷和標識,這就要通過添加軟件冗余模塊來實現。冗余模塊在程序主循環中調用,根據不同總線錯誤狀態執行收發通道切換。CAN 總線錯誤狀態分為3類:錯誤激活、錯誤認可、總線關閉。總線正常工作時處于錯誤激活狀態,控制器檢測到錯誤后將發送/接收錯誤計數器的值遞增,當值大于127時進入錯誤認可,大于255時總線關閉狀態,CAN 總線錯誤檢測模塊通過讀取錯誤狀態寄存器作為總線故障的測試條件,在錯誤狀態發生改變時調用冗余算法,執行總線切換操作。
  
通過實際調試發現,總線連接斷開且只有1個節點不斷發送報文時產生發送錯誤,控制器進入錯誤認可狀態,但不進入總線關閉狀態;其它錯誤均使錯誤計數器增加,依次進入錯誤認可狀態、總線關閉狀態,后兩種狀態表明總線被嚴重干擾 需要采取相應措施。為簡化控制邏輯設計將錯誤認可和總線關閉合并為總線故障。
  
冗余算法使用狀態機實現發送模式的切換,根據不同總線故障選擇發送使用的總線。狀態切換流程圖如圖2所示,程序首先讀取錯誤狀態寄存器獲得總線錯誤狀態,判斷當前總線是否處于錯誤激活模式,若檢測到總線故障程序置相應標志位向其他程序模塊指示錯誤。為提高報文發送效率,發送程序一次將多個報文寫入發送郵箱由硬件控制自動發送,在切換總線時,需先把故障總線發送郵箱中的報文中回讀,通過備份總線優先發送,這一機制保證報文不會因總線切換而丟失。控制器向故障總線發送數據域為空的測試報文,每成功發送1報文,總線發送錯誤計數器的值遞減,直至其值小于128總線恢復到錯誤被動狀態;每隔一定時間冗余程序讀取錯誤狀態寄存器,檢測故障總線是否恢復正常。
  
在2總線同時傳輸模式,發送程序優先寫入總線1郵箱,當總線1郵箱滿時寫入總線2的郵箱,由于報文按優先級仲裁發送,若某一路發送郵箱經常為空,說明該路總線通信流量較小,發送程序將較多報文轉由空閑總線發送,實現報文的負載均衡。
 
基于STM32F105微控制器的雙CAN冗余的方案設計
圖2:總線狀態切換流程圖
[page]
 
三、雙總線冗余的可靠性分析與測試
 
  
對雙CAN 冗余系統的可靠性進行定量分析,引入平均無故障運行時間(M ean T ime To Fa ilure, MTTF)的概念。MTTF描述一個系統從開始工作到發生故障的時間間隔,也即平均壽命。為簡化分析作如下假設: 每路CAN總線的故障率相同;CAN 總線的損壞屬于物理損壞。即不可修復的損壞。指數分布可以很好地用來描述電子元器件的壽命, 假設CAN總線的壽命分布服從指數分布, CAN 總線的可靠性模型如圖3所示。
 
基于STM32F105微控制器的雙CAN冗余的方案設計
圖3:CAN總線模型
 
模型1為單總線的可靠性模型,因為總線壽命服從指數分布,根據單一CAN總線無故障運行時間MTTF1 = 1 /λ。模型2為雙CAN總線冗余可靠性模型,系統由兩條獨立的總線并聯而成,即只有當這2條總線都失效時系統通信才會失敗,于是系統的平均壽命MTTF2 = 3 /2。采用雙線冗余設計使CAN 通信的平均無故障時間增加了50%。
  
雙線CAN 冗余系統的另一關鍵指標是總線切換時間,它等于檢測錯誤所需時間與處理故障總線未發送報文所需時間之和,切換時間越短,總線故障對報文傳輸造成的延遲就越小。檢測錯誤所需時間,即從總線錯誤出現到被冗余程序檢測到所需的時間。以總線斷開故障為例,發送器每發送一個報文產生一次應答錯誤。錯誤計數器每次加8, 需連續進行16次發送,使錯誤計數器值達到128引起總線切換。在位速率125kbps情況下,發送最長為128位的報文,若忽略控制器重發間隔時間,從故障發生到被檢測到的響應時間為:
 
基于STM32F105微控制器的雙CAN冗余的方案設計
 
為避免在總線切換時丟失報文,冗余算法需回讀故障控制器中未發送報文,由此產生額外的故障處理時間,因為每個發送郵箱最多存儲3個報文,假定位速率125kbps不變,備份總線發送時即取得仲裁,最長故障處理時間為:
 
基于STM32F105微控制器的雙CAN冗余的方案設計
 
因此總線切換時間為16. 38+ 3. 07= 19. 45m s。
  
通過實驗測得在125kbps位速率下連續發送不同報文長度的總線切換時間如表1所示:
 
表1:總線切換時間
 
基于STM32F105微控制器的雙CAN冗余的方案設計
 
在125kbps位速率下切換時間為22.80ms, 比理論計算值稍長,這是由總線切換時運行冗余算法及讀取控制器錯誤寄存器( ESR)所額外消耗的,但在實際應用中,發送報文獲取仲裁所需的等待時間遠大于切換時間,總線故障并不頻繁發生,冗余切換算法對系統的運行并無顯著影響。

結語:此次設計方案充分利用了微控制器STM32F105,在其中內置了兩路CAN控制器,這種設計思路與傳統的在單片機總線外擴兩片CAN控制器的冗余方案相比,電路設計更加簡單,成本更低,系統的整體可靠性得到了提高。利用雙總線負載均衡技術,能夠平衡通信負荷,提高總線帶寬。在船舶機艙監控系統中能夠獲得良好的信號傳輸。
 
相關閱讀:

通信系統設計:基于CAN總線的電動汽車電源管理設計
關于CAN總線通訊的電磁兼容設計
用于汽車電池監控的CAN智能傳感器
要采購微控制器么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索

關閉

?

關閉

主站蜘蛛池模板: av免费观看网 | mdyd—856冲田杏梨在线 | 国内精品久久毛片一区二区 | 亚洲女欲精品久久久久久久18 | 国产精品久久久久久久久久久久久久久久久 | 和朋友换娶妻一区二区 | 香蕉eeww99国产精选免费 | 欧美福利一区 | 红杏av在线| 一二区视频| 国产精品户露av在线户外直播 | 国产成人综合欧美精品久久 | 免费成人进口网站 | 日本www | 亚洲国产综合久久久 | 国产一区二区三区久久久久久久久 | 黑人大战日本人妻嗷嗷叫不卡视频 | 亚洲激情五月婷婷 | 国产婷婷色综合av性色av | 久久久久久成人毛片免费看 | 久久天天操| 91精品国产综合久久小仙女图片 | 无遮掩无码h成人av动漫 | 无遮掩60分钟从头啪到尾 | 97视频在线 | 快色在线 | 91色呦呦| 午夜av影院 | 秋霞无码久久久精品 | 中文字幕日产每天更新40 | 国产系列丝袜熟女精品网站 | 黄色试频 | 黄色av片三级三级三级免费看 | 国精品无码人妻一区二区三区 | 欧美日韩国产精品一区 | 亚洲午夜私人影院在线观看 | 亚洲性综合网 | 少妇爆乳无码av专区网站寝取 | 色综合久久88色综合天天6 | 久久亚洲精品无码aⅴ大香 丰满少妇免费做爰大片人 99国产欧美久久久精品蜜芽 | 色撸撸在线观看 | 爱情岛论坛亚洲自拍 | 看全色黄大色黄大片大学生 | 香蕉精品视频在线观看 | 国产亚洲精品视觉盛宴 | 姝姝窝人体www聚色窝 | 天天综合爱天天综合色 | 国产一区二区三区在线 | 啪啪黄色网址 | 欧美成人精品第一区 | 精品一卡2卡三卡4卡乱码理论 | 国产在线最新 | 在线观看免费av片 | 少妇下面好紧好多水真爽播放 | 国产精品黄页免费高清在线观看 | 激情综合网站 | 国产亚洲精品第一综合不卡 | 日韩特黄毛片 | 成人亚洲a片v一区二区三区蜜臀 | 狂野欧美性猛交免费视频 | 国产精品麻豆成人av在线观看 | 噜噜噜久久亚洲精品国产品 | 国产伦精品一区二区 | 日韩永久免费 | 国产公开免费人成视频 | 国内精品久久久久影视老司机 | 少妇一边呻吟一边说使劲 | 又大又黄又粗又爽的免费视频 | 实拍男女野外做爰视频 | h番动漫福利在线观看 | 日韩在线视频线观看一区 | 欧美阿v高清资源不卡在线播放 | 国产无遮挡又爽又黄大胸免费 | 激情综合图 | 三级色视频 | 成人性午夜免费网站蜜蜂 | 欧美色成人综合影院 | 九九爱精品 | 男女裸体做爰爽爽全过程软件 | 97综合| 中文字幕免费在线视频 | 国产一级做a爱片久久毛片a | 中文字幕亚洲高清 | 国产日产精品_国产精品毛片 | 少妇爆乳无码专区网站 | 国产亚洲性欧美日韩在线观看软件 | 一卡二卡三卡在线观看 | 免费网站看av | 中文字幕超清在线免费观看 | 亚洲永久网站 | 精品国产无套在线观看 | 久久精品无码人妻无码av | 久无码久无码av无码 | 欧美精品99久久久久久人 | 国产乱国产乱老熟300部视频 | 麻豆tv在线 | 久久精品麻豆日日躁夜夜躁妓女 | 国产白丝jk绑缚调教网站 | 欧美乱色 |