基于CAN Bus MCU的電梯控制器和監測應用設計

發(fā)布時(shí)間:2013-4-24 10:44    發(fā)布者:eechina
關(guān)鍵詞: CAN , 總線(xiàn) , 電梯
CAN Bus(Controller Area Network),控制器區域網(wǎng),起源于80年代,由國際標準化組織(ISO)所發(fā)布,因為利用雙線(xiàn)差動(dòng)(two-wired differential),使其即使在電器條件惡劣環(huán)境下,也可正常運作的一種傳輸總線(xiàn)。又因雙線(xiàn)溝通的特性,大幅縮減了其應用線(xiàn)路的使用量,也降低傳統線(xiàn)路復雜易造成錯誤的發(fā)生機會(huì )。

基于以上特性,CAN Bus一大應用層面即被導入于汽車(chē)工業(yè),因傳統的汽車(chē)使用線(xiàn)路復雜,使得早期汽車(chē)內部線(xiàn)路易于發(fā)生故障時(shí)且較難以排除。因此雙線(xiàn)差動(dòng)訊號式CAN Bus的電器特性即被快速導入并廣泛運用在各交通工具領(lǐng)域(航空、輪船與汽車(chē))或是工業(yè)控制。

強健的協(xié)議與其編碼格式

CAN Bus基本的協(xié)議可分為CAN2.0A與CAN2.0B兩個(gè)版本,A版與B版的主要差別在于識別子(ID)長(cháng)度分別為11位與29位。如圖1所示為一個(gè)CAN 2.0協(xié)議傳輸的數據封包(Data Frame)。


圖1. CAN協(xié)議編碼格式圖

圖1為一個(gè)CAN數據封包的格式,可分為起始域、仲裁域、控制域、數據域、CRC域、應答域和結束域。每個(gè)封包(Frame)最長(cháng)可達128位,以下分別說(shuō)明各域的意義,其它詳細資料可參考BOSCH公司的相關(guān)CAN Bus技術(shù)文件。

●起始域(SOF, Start of Frame):該值必為0,表示封包的開(kāi)始。
●仲裁域(Arbitration Field):用于確定封包的優(yōu)先級,由11位或29位識別子(ID)加上一位的RTR(Remote Transfer Request),當RTR為0時(shí),表示傳出資料;RTR為1則表示為接收資料。
●控制域(Control Field):包含兩個(gè)保留位(一般為0)和表示數據域內的數據長(cháng)度DLC0~DLC3共有4位。
●數據域(Data Field):0~8個(gè)Byte的被傳送數據
●CRC域(CRC Field):從SOF到Data Field的CRC驗證碼,用于檢測傳輸上的錯誤,共有15位的長(cháng)度。
●應答域(ACK Field):確認對方接收是否正常,若接收成功則會(huì )回傳1。
●結束域(EOF, End of Frame):表示封包的結束,為7位連續的1。

CAN Bus的特征與優(yōu)點(diǎn)

●CAN Bus可透過(guò)簡(jiǎn)單的信息濾波設定實(shí)現點(diǎn)對點(diǎn)、一對多個(gè)點(diǎn)或全網(wǎng)絡(luò )廣播等資料的傳輸方式。

●沒(méi)有特定的主從端,且可以以多個(gè)主端方式工作,因此Bus上各節點(diǎn)均可在任一時(shí)刻主動(dòng)發(fā)送信息至其它節點(diǎn)。

●藉由封包內仲裁域內的識別子來(lái)判定優(yōu)先權,而非藉由地址,因CAN Bus為非破壞性的總線(xiàn)仲裁之技術(shù),當優(yōu)先層級不同的事件發(fā)生,層級低的節點(diǎn)會(huì )主動(dòng)放棄總線(xiàn)訪(fǎng)問(wèn)的權利,而高優(yōu)先層級的可繼續傳輸而不受影響。

●因具有優(yōu)先層級之特性,大幅節省了當總線(xiàn)發(fā)生沖突時(shí)的仲裁時(shí)間,提升系統的實(shí)時(shí)性,而不會(huì )出現網(wǎng)絡(luò )癱瘓的機會(huì )。

●具有良好的擴充性,因CAN Bus協(xié)議是定義信息,非以站臺方式定義,因此可不需為軟件硬件做修改即可增加站臺。

●傳輸的距離與傳輸速度成反比,當傳輸距離達10km時(shí)傳輸速率約為5Kbps,若需較高的傳輸速率1Mbps,此時(shí)的傳輸距離為40m。

●在CAN Bus上的每個(gè)封包具有強大的CRC檢驗與防錯機制,大幅降低了資料的出錯率。

●CAN Bus的通訊介質(zhì)可為光纖、同軸電纜與常見(jiàn)的雙絞線(xiàn),相較其它通訊方式較為彈性。

CAN Bus的架構與輸出準位

CAN Bus為利用一種雙線(xiàn)的差動(dòng)訊號傳輸規格,典型的CAN節點(diǎn)皆會(huì )由一個(gè)機械控制單元(Micro Controller Unit, MCU)來(lái)做控制,如圖2所示,MCU中CAN Controller透過(guò)CAN_TX與CAN_RX傳送/接收訊號至CAN Transceiver轉換成差動(dòng)訊號CAN_H與CAN_L。而終端電阻120歐姆能有效的吸收CAN網(wǎng)絡(luò )上的反射波,有效地增強信號。


圖2. CAN Bus架構圖

圖3為CAN Bus輸出準位圖,當CAN_H與CAN_L均為2.5V時(shí),數據值為邏輯1(隱性);而CAN_H = 3.5V與CAN_L = 1.5V時(shí),數據值為邏輯0(Dominant)。


圖3. CAN Bus輸出準位圖

強大且可靠的自我檢測能力


CAN Bus協(xié)議中具有五種錯誤偵測的方法,其中三個(gè)是屬于信息(Message)層級,而另外兩個(gè)位(Bit)層級的檢查。當一個(gè)信息發(fā)生錯誤,使該節點(diǎn)不接收這個(gè)信息,并產(chǎn)生一個(gè)錯誤的封包,而發(fā)送端會(huì )嘗試重新發(fā)送新的一個(gè)信息。通過(guò)以下的偵錯方法使CAN Bus的錯誤率低于4.7x10-11。

1. CRC:循環(huán)冗余校驗,CRC檢查為一個(gè)15位的CRC,計算其傳送訊息結尾的FCS(Frame Check Sequence)并進(jìn)行比對,如果不同則為CRC錯誤。
2. ACK Errors:接收的一端在接收訊息后會(huì )發(fā)送ACK告知發(fā)送端,如果發(fā)送訊息的一端沒(méi)有收到則為ACK錯誤。
3. Frame Check:檢查封包中的幾個(gè)特定位,來(lái)驗證內容是否正確。
4. Monitoring:將一個(gè)位的資料寫(xiě)至CAN Bus在讀回來(lái)驗證是否發(fā)生錯誤。
5. Bit Stuffing:用于訊號同步使用。

基于優(yōu)先權的仲裁特色解決多節點(diǎn)發(fā)生沖突的問(wèn)題

CAN Bus采用了非破壞性的仲裁(Non-Destructive Bitwise Arbitration),因為每個(gè)訊息封包都具其優(yōu)先權,而優(yōu)先權由仲裁域內部的識別子決定。當許多結果同時(shí)發(fā)送訊息時(shí),只有發(fā)送高優(yōu)先權的封包的節點(diǎn)才能成為CAN Bus上的主站。

基于在各優(yōu)先層級的仲裁來(lái)自于識別子與跟隨在識別子后的傳送請求(RTR)決定,具有兩個(gè)不同識別子的封包中,較高優(yōu)先權的識別子具有較低的二進(jìn)制數值。因此注意到的是,在一個(gè)系統中每條訊息都需給予唯一的是識別子;具有指定的識別子和Data Length Code (DLC)的數據封包僅可由一個(gè)節點(diǎn)所激活。

當CAN Bus閑置時(shí)呈現隱性電壓準位,這時(shí)任何一個(gè)節點(diǎn)都可以發(fā)送一個(gè)顯性電壓準位做為一個(gè)封包的開(kāi)始;若有兩個(gè)以上的節點(diǎn)發(fā)送,即產(chǎn)生了競爭,而CAN Bus解決的方式為對識別子進(jìn)行仲裁,各發(fā)送節點(diǎn)除了一邊向CAN Bus發(fā)送電壓準位,同時(shí)與回收CAN Bus進(jìn)行比較,若電壓準位相同,則繼續發(fā)送下一位,若電壓準位不同則不向下發(fā)送,退出競爭。因此識別子為隱性準位時(shí),競爭的優(yōu)先級就較低,而最高優(yōu)先級的識別子應該全是顯性準位。

以NUC240/NUC140/NUC130作為電梯控制器和監測應用設計的解決方案

NUC240 CAN Bus的特色

在實(shí)現電梯控制器和監測的設計模塊應用,筆者選擇的解決方案為臺灣新唐科技的NUC240、NUC140與NUC130,新唐科技于2012年年底推出NUC200系列MCU,其中NUC240為NUC200系列中富含最多周邊的產(chǎn)品系列,也是少數具有兩組CAN信道的MCU廠(chǎng)商。使用者亦可透過(guò)Nu-LB-NUC240學(xué)習板搭配BSP鏈接庫(Board Support Package)即可簡(jiǎn)易地對相關(guān)周邊上手。

NUC240 CANBus特色如下:

●支持CAN的協(xié)議規范2.0 A和2.0 B。
●傳輸速率最快可達1 MBit/s。
●32個(gè)訊息目標
●每一個(gè)訊息目標都有自己的識別子屏蔽。
●可程序化的FIFO模式(鏈接訊息目標)
●可作為屏蔽中斷。
●對時(shí)間觸發(fā)的CAN應用關(guān)閉自動(dòng)重傳模式。
●自我檢測時(shí)具可程序化的look-back模式。
●16-bit模塊接口至AMBA APB Bus。
●支持MCU由熟睡模式中喚醒功能。

NuMicro MCU CAN Bus方塊圖


圖4為NuMicro MCU內部CAN模塊的內部架構,主要包含CAN Core、Message RAM、Module Interface和Message Handler四個(gè)部分,其中CAN Core負責錯誤偵測與處里,是CAN的主要核心;Message RAM為傳送與接收的緩沖器;Module Interface為與CAN Core與CPU溝通的主要接口。Message Handler則為傳送與接收命令控制中樞。


圖4. NuMicro MCU CAN Bus方塊圖

電梯控制系統方塊圖說(shuō)明


由圖5電梯控制系統圖得知,在各樓層皆需要一個(gè)MCU來(lái)做為樓層信息的判斷或是錯誤的回報,故選具有一組CAN功能的NUC130作為各樓層的MCU配置。依序將電梯樓層編號1-1~1-7與第二棟樓層編號2-1~2-7以CANBus連至一起,形成一個(gè)網(wǎng)絡(luò )系統(A1)。同理樓層編號3-1~3-7與4-1~4-7形成另一CAN網(wǎng)絡(luò )系統(A2),每一棟電梯皆有其獨立的步進(jìn)馬達來(lái)控制電梯的包廂。

在此選用具有兩組CAN Bus信道的NUC240做為電梯系統主要的運算處理與馬達控制器,其一信道為連接兩棟電梯大樓間的CANBus;另一信道(B)則連接至另一電梯控制器以及中控室的部分。最后中控室可透過(guò)USB方式與PC端連接,做為顯示監控接口或除錯處里。


圖5. 電梯控制與監測系統圖

電梯模塊運作流程說(shuō)明

電梯的運作行為可以很多種方式呈現,但主要的目的皆來(lái)自于接獲各樓層乘客指令,平安地送達至指定樓層。如同搭乘百貨大樓電梯,于樓層顯示面板(NUC130)按下上(下)樓按鍵,此時(shí)因CAN Bus網(wǎng)絡(luò )特性,可發(fā)現不同棟而相同樓層之上下樓按鍵會(huì )同時(shí)顯示燈號,并且所有樓層與NUC240皆顯示當下電梯廂之樓層;待電梯移至被按下上(下)按鍵之樓層,乘客進(jìn)入后再按下指定前往樓層按鍵即可。另外當電梯發(fā)生故障時(shí),位處中控室之管理員亦可透過(guò)簡(jiǎn)單的人機接口以簡(jiǎn)單的USB連接計算機與NUC140將其資料讀出。
本文地址:http://selenalain.com/thread-114100-1-1.html     【打印本頁(yè)】

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

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页