国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

CAN網(wǎng)狀冗余及基于ARM節(jié)點設(shè)計

發(fā)布時間:2010-8-13 15:26    發(fā)布者:lavida
關(guān)鍵詞: arm , CAN , 節(jié)點 , 冗余
一、概述  

CAN(Controller Area Network)即控制器局域網(wǎng),是一種串行數(shù)據(jù)總線CAN總線是國際上應(yīng)用最廣泛的現(xiàn)場總線之一。作為一種技術(shù)先進(jìn)、可靠性高、功能完善、成本合理的遠(yuǎn)程網(wǎng)絡(luò)通訊控制方式,CAN總線已被廣泛應(yīng)用于各個自動化控制系統(tǒng)中。在汽車電子、自動控制、電力系統(tǒng)等領(lǐng)域中,CAN總線尤其具有不可比擬的優(yōu)越性。但是,工業(yè)控制現(xiàn)場工況條件十分惡劣,電纜受拉、壓、砸、擠等造成故障的情況很多,這對于以總線為核心的CAN總線系統(tǒng)是一種極大的威脅。如何保證現(xiàn)場總線控制系統(tǒng)在惡劣環(huán)境下安全、可靠地工作是CAN應(yīng)用中的一個重要課題。  

解決可靠性問題的一個有效的辦法就是對總線進(jìn)行不同程度的冗余,同時使用兩(多)條總線電纜。本文簡單列舉了目前CAN冗余的幾種方式,同時提出了網(wǎng)狀冗余的全新冗余結(jié)構(gòu)。采用內(nèi)置多路CAN總線控制器的LPC2294作為主控制器,設(shè)計給出了應(yīng)用于電源模塊控制系統(tǒng)中的CAN總線網(wǎng)狀冗余節(jié)點方案。  

二、目前幾種總線冗余方法  

典型的CAN電路可分為4個環(huán)節(jié),即單片機(jī)、總線控制器、CAN總線驅(qū)動器、總線。以下是目前從以上4個環(huán)節(jié)考慮的不同程度的冗余方法:  

(1)總線驅(qū)動器的冗余  

使用兩條總線電纜,每個節(jié)點內(nèi)部使用兩個總線驅(qū)動器,但只有一個總線控制器,在總線控制器與兩個總線驅(qū)動器之間設(shè)置判斷電路。如果一個總線發(fā)生故障,則關(guān)閉它與總線控制器之間的信號通道,而正常總線上的報文仍能順利送往總線控制器。  

(2)CAN總線控制器的冗余  

該冗余的思路是同時使用兩條CAN總線,兩個CAN總線驅(qū)動器和兩個CAN總線控制器,單片機(jī)通過不同的端口和中斷同時控制兩個CAN控制器。  

(3)全系統(tǒng)的冗余  

該冗余的思路是對整個CAN系統(tǒng)的四個環(huán)節(jié)進(jìn)行冗余。即同時使用兩套單片機(jī)、總線控制器、CAN總線驅(qū)動器、總線。  

三、新的冗余方式:網(wǎng)狀冗余  

在可靠性要求非常嚴(yán)格的場合,如電廠集散控制系統(tǒng),基本采用網(wǎng)狀冗余結(jié)構(gòu)。由于CAN節(jié)點對系統(tǒng)的構(gòu)成不敏感,全系統(tǒng)的冗余在發(fā)現(xiàn)總線故障以及總線切換及時性方面反而不如部分冗余方法,有鑒于此,本文提出了新的CAN冗余方式:網(wǎng)狀冗余。  

CAN網(wǎng)狀冗余是對整個CAN網(wǎng)絡(luò)、通訊節(jié)點進(jìn)行冗余,如圖1所示。同時使用兩條CAN總線,兩個CAN總線驅(qū)動器和兩個CAN總線控制器,單片機(jī)通過不同的端口和中斷同時控制兩個CAN控制器,組成一個網(wǎng)絡(luò)節(jié)點,再對節(jié)點進(jìn)行冗余設(shè)計。  


  
由于總線故障可以及時通過正常總線通知用戶進(jìn)行維護(hù),網(wǎng)狀冗余在發(fā)現(xiàn)總線故障及時性方面要比全系統(tǒng)冗余后備方式好。對于工業(yè)控制,尤其是本質(zhì)安全型系統(tǒng)來說,這一優(yōu)點是十分重要的。網(wǎng)狀冗余兼有部分冗余和全系統(tǒng)冗余的優(yōu)點,大大提高了系統(tǒng)的可靠性。當(dāng)然,網(wǎng)狀冗余系統(tǒng)軟、硬件的復(fù)雜性和成本都提高了,但是,相對于在工作中系統(tǒng)可靠性的提高,這些犧牲是值得的。  

四、電源模塊控制系統(tǒng)中網(wǎng)狀冗余節(jié)點設(shè)計  

在電源模塊控制系統(tǒng)中,電源模塊控制儀的控制信號以毫秒量級速度向各電源柜發(fā)送控制指令,并獲得各機(jī)柜的工作狀態(tài)。各電源柜在獲得指令后,同步執(zhí)行控制動作,并返回執(zhí)行狀態(tài)。隨著電源個數(shù)的增加,各電源間的實時性、同步性等關(guān)鍵性能下降。  

為提高系統(tǒng)在實時性、同步性、精確性、容錯性等各方面的性能,必須采用高精度同步通訊控制網(wǎng)絡(luò),使電源模塊控制儀與電源模塊之間的信號傳輸滿足系統(tǒng)的技術(shù)性能要求。  

本方案的CAN總線網(wǎng)狀冗余節(jié)點,正是為滿足電源模塊控制系統(tǒng)對于可靠性、實時性的嚴(yán)格要求而設(shè)計的。  

4.1 節(jié)點設(shè)計思想  

節(jié)點基本設(shè)計思想為:使用兩塊控制處理器組件,作為冗余的一對,冗余單元的硬件和軟件結(jié)構(gòu)完全相同,在任何一塊組件發(fā)生硬件故障時,可提供連續(xù)的運行。單元的主備工作狀態(tài)由上電順序決定, 先上電的一方自動進(jìn)入主機(jī)工作狀態(tài),后上電者則進(jìn)入備機(jī)狀態(tài)。主機(jī)在其工作過程中除實現(xiàn)應(yīng)用功能外,定期向備機(jī)發(fā)送反映其工作正常的狀態(tài)數(shù)據(jù)并接收來自備機(jī)的狀態(tài)數(shù)據(jù),當(dāng)發(fā)生接收超時時,主機(jī)認(rèn)為備機(jī)已經(jīng)發(fā)生故障, 并通過總線向用戶給出通知信號,以便及時對備機(jī)進(jìn)行維護(hù)。備機(jī)在工作過程中不完成應(yīng)用功能, 但定期接收來自主機(jī)的狀態(tài)數(shù)據(jù),當(dāng)發(fā)生接收超時或接收到主機(jī)工作狀態(tài)不正常時,自動切換成主機(jī)工作狀態(tài),并通過總線通知用戶對原主機(jī)單元進(jìn)行維護(hù)。  

進(jìn)一步改進(jìn)方案:在需要進(jìn)一步提高系統(tǒng)的實時性的情況下,可以下載、上傳分別使用圖中A、B總線進(jìn)行傳輸(如圖2),從而可以將半雙工類型的串行總線近似為全雙工總線,理論上將系統(tǒng)的傳輸速率提高一倍,有效減少系統(tǒng)數(shù)據(jù)的傳輸延遲。極端情況下,即使上層網(wǎng)絡(luò)或現(xiàn)場總線只有一個端口正常時,系統(tǒng)也不會崩潰,可以將該端口設(shè)成可收、發(fā)信息狀態(tài),只是降低了系統(tǒng)傳輸?shù)乃俣龋黾恿丝刂菩畔鬏斞訒r,但與系統(tǒng)崩潰造成的損失相比將顯得微不足道。  


  
圖2 網(wǎng)狀冗余在電源模塊控制中的應(yīng)用改進(jìn)  

4.2 節(jié)點硬件設(shè)計  

設(shè)計選用PHILIPS公司新推出的一款功能強(qiáng)大的具有ARM7TDMI內(nèi)核的32位微控制器LPC2294,內(nèi)部集成有四路符合CAN規(guī)范CAN2.OB,ISO 11898-1標(biāo)準(zhǔn)的CAN控制器,總線數(shù)據(jù)波特率均可達(dá)1Mbps。  

節(jié)點硬件電路組成:  

CAN節(jié)點硬件電路如圖3所示,由ARM微控制器LPC2294,CAN總線收發(fā)器TJA1050,高速光耦6N137和電源隔離模塊B0505S等組成。由于四路CAN接口的外部電路完全一致,圖中只給出了CAN3、CAN4接口的外部電路。  


  
CAN控制器和物理總線之間的接口選用收發(fā)器TJA1050,不上電時,總線呈現(xiàn)無源特性,在性能上大大優(yōu)于以前的CAN總線收發(fā)器。  

4.3 節(jié)點軟件設(shè)計  

軟件調(diào)試環(huán)境采用ARM公司的ARM核處理器集成開發(fā)工具ADSv1.2。ADSv1.2集成了匯編、C、C++編譯器和調(diào)試器,編譯效率高,提供了功能強(qiáng)大的系統(tǒng)庫,支持軟件調(diào)試JTAG仿真調(diào)試及硬件調(diào)試。  

對于一般的32位ARM應(yīng)用系統(tǒng),在運行主程序前必須初始化運行環(huán)境,即為ARM芯片編寫啟動代碼。啟動代碼包括異常向量表、堆棧初始化、存儲系統(tǒng)初始化和目標(biāo)板初始化等,一般用匯編語言編寫。對于本設(shè)計關(guān)鍵是編寫CAN驅(qū)動程序,主程序通過調(diào)用驅(qū)動程序提供的接口來實現(xiàn)數(shù)據(jù)的接收和發(fā)送。驅(qū)動程序包括四部分內(nèi)容:CAN控制器的初始化、接收數(shù)據(jù)、發(fā)送數(shù)據(jù)和總線異常處理。圖4為主程序流程圖。

  
圖4 主程序流程圖  

4.3.1 CAN控制器初始化  

初始化CAN控制器的操作包括:硬件使能、軟件復(fù)位、設(shè)置報警界限、設(shè)置總線波特率、設(shè)置中斷工作方式、設(shè)置驗收濾波器工作方式、設(shè)置工作模式并啟動CAN等。初始化程序如下:  

HwEnCAN(CanNum); //硬件使能,CanNum=0-3,指四路CAN控制器  

SoftRstCAN(CanNum); //軟件復(fù)位寄存器CANEWL(CanNum).BitsEWL_BIT=USE_EWL_CAN[CanNum]; //設(shè)置報警界限CANBTR(CanNum).Word=USE_BTR_CAN[CanNum]; //初始化波特率  

VICDefVectAddr=(UINT32)CANIntPrg; //初始化中斷為非向量中斷CANIER(CanNum).Word=USE_INT_CAN[CanNum];  

CANAFMR.Bits.AccBP_BIT=1; //設(shè)置驗收濾波器CANMOD(CanNum).Bits.TPM_BIT=USE_TPM_CAN[CanNum]; //初始化工作模式  

SoftEnCAN(CanNum); //啟動CAN端口  

4.3.2數(shù)據(jù)發(fā)送  

將待發(fā)送的數(shù)據(jù)打包成符合CAN協(xié)議的幀格式后,便可寫入發(fā)送緩沖區(qū),并啟動發(fā)送。  

在寫發(fā)送緩沖區(qū)前應(yīng)查詢其狀態(tài)。LPC2294中的每個CAN控制器有三個發(fā)送緩沖區(qū),它們的狀態(tài)可通過查詢CANSR得知。只有當(dāng)其中有空閑的發(fā)送緩沖區(qū)時才可將數(shù)據(jù)寫入。  

4.3.3數(shù)據(jù)接收  

接收數(shù)據(jù)可采用查詢方式或中斷方式。為了提高效率,常采用中斷方式。  

在初始化程序中使能接收中斷,在中斷服務(wù)子程序中,讀取CANICR,判斷是否有接收中斷標(biāo)志,有則讀取接收緩沖區(qū)數(shù)據(jù)。為了防止接收緩沖區(qū)數(shù)據(jù)溢出,可開辟一個循環(huán)接收數(shù)據(jù)隊列來暫時存儲數(shù)據(jù),主程序通過查詢該隊列獲得數(shù)據(jù)。  

4.3.4 異常情況處理  

在總線發(fā)生嚴(yán)重故障的情況下,CAN節(jié)點有可能脫離總線,此時以下寄存器位被置位:CANSR的BS位、CANIR的BEI位和EI位(如果使能)和CANMOD的RM位。  

在應(yīng)用中,若前面?zhèn)鬏數(shù)紺AN控制器的數(shù)據(jù)未被讀出,接收緩沖區(qū)沒有及時釋放,就有可能引起后面信息的丟失。這時必須通過寫命令寄存器來清除CANSR的數(shù)據(jù)溢出位。這種異常可通過異常中斷來處理,只要在中斷子程序中加入處理代碼即可。其它的總線異常處理可根據(jù)使用情況決定是否在軟件中處理。  

五、結(jié)束語  

本文設(shè)計的CAN網(wǎng)狀冗余節(jié)點應(yīng)用于電源模塊控制系統(tǒng),正常通訊時,下載/上傳分開網(wǎng)絡(luò)傳輸,實現(xiàn)CAN全雙工通訊,提高系統(tǒng)傳輸速率,減少了電源模塊的動作延時;在節(jié)點出現(xiàn)問題時,通過熱備節(jié)點進(jìn)行通訊,實現(xiàn)了系統(tǒng)的完全冗余,大大提高了系統(tǒng)可靠性,滿足系統(tǒng)對CAN網(wǎng)絡(luò)節(jié)點的可靠性、實時性和同步性要求  

本文作者創(chuàng)新點:借鑒過程控制中網(wǎng)狀冗余大大增強(qiáng)通訊可靠性的經(jīng)驗,為增加CAN總線可靠性,提出了CAN總線控制系統(tǒng)的全新網(wǎng)狀冗余方式,及在電源模塊控制系統(tǒng)中的節(jié)點冗余設(shè)計思想。
本文地址:http://www.qingdxww.cn/thread-21259-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 你仿真過嗎?使用免費的MPLAB Mindi模擬仿真器降低設(shè)計風(fēng)險
  • 更佳設(shè)計的解決方案——Microchip模擬開發(fā)生態(tài)系統(tǒng)
  • Cortex-M4外設(shè) —— TC&TCC結(jié)合事件系統(tǒng)&DMA優(yōu)化任務(wù)培訓(xùn)教程
  • 我們是Microchip
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 尹人香蕉久久99天天 | 一个人www在线高清观看 | 久久激情免费视频 | 99久久免费国产精品 | 青青草官网| 黄色免费在线观看网站 | 特级全黄一级毛片视频 | 亚洲性大片 | 四虎在线观看免费永久 | 四虎影院成人在线观看 | 国产精品久久久久久永久牛牛 | 在线免费看黄色片 | 亚洲一区二区视频在线观看 | 在线观看人成大片在线影院 | 九九精品免视频国产成人 | 亚洲国产成+人+综合 | 91成人在线观看视频 | 久久成年片色大黄全免费网站 | 国产91精品高跟丝袜在线 | 亚洲视频精品在线观看 | 卡一卡二卡四卡免费观看 | 欧美成a | 日韩成人中文字幕 | 欧美亚洲日本视频 | 久久免费视频7 | 福利一区二区三区视频午夜观看 | 国产91av在线播放 | 香蕉尹人在线观看免费下载 | 国产在线视频www片 国产在线视频99 | 日韩在线观看免费完整版视频 | 粉嫩的美女视频在线观看 | 朝鲜一级一级妇女毛片 | 久久久久久久99久久久毒国产 | 一级毛片免费在线 | 青青青青青草 | 久久精品欧美一区二区 | 中文字幕乱码人成乱码在线视频 | 四虎永久影院 | 三级在线观看视频 | 91在线亚洲 | 四虎在线视频观看大全影视 |