基于現(xiàn)場(chǎng)總線的電梯監(jiān)控系統(tǒng)設(shè)計(jì)
關(guān)鍵詞:CAN總線;串行通信;電梯
現(xiàn)代社會(huì)中,電梯已經(jīng)成為不可缺少的運(yùn)輸設(shè)備。電梯的存在使得每幢高層建筑的交通更為便利。電梯控制技術(shù)的發(fā)展主要經(jīng)歷了三個(gè)階段:繼電器控制階段,微機(jī)控制階段,現(xiàn)場(chǎng)總線控制階段。
與其它幾種現(xiàn)場(chǎng)總線比較而言,CAN總線是最易實(shí)現(xiàn),價(jià)格最為低廉的一種,這也是目前CAN總線在眾多領(lǐng)域被廣泛采用的原因。CAN總線協(xié)議是建立在國(guó)際標(biāo)準(zhǔn)組織開(kāi)放系統(tǒng)互聯(lián)模型基礎(chǔ)上的。作為工業(yè)控制的底層網(wǎng)絡(luò),CAN總線通波特率可高達(dá)1Mbps,最遠(yuǎn)距離可達(dá)l0km;通訊采用短幀結(jié)構(gòu),使得數(shù)據(jù)傳輸?shù)臅r(shí)間短,受干擾的幾率低,并且CAN總線協(xié)議有良好的檢錯(cuò)措施,因此CAN總線通訊的可靠性較高。由于CAN總線的安全性,實(shí)時(shí)性,簡(jiǎn)單易操作性和價(jià)格低廉,使其十分適合在電梯通訊中應(yīng)用。目前電梯井道系統(tǒng)中,主要采用并行通訊,上行、下行電纜比較多,現(xiàn)場(chǎng)安裝調(diào)試比較麻煩。采用CAN總線后,通過(guò)串行通信方式,構(gòu)成控制器局域網(wǎng),僅用四根線,其中兩根為電源線,一根信號(hào)發(fā)送線,一根信號(hào)接收線,實(shí)現(xiàn)呼梯、內(nèi)選及顯示信號(hào)的通信,并為進(jìn)一步實(shí)現(xiàn)多臺(tái)電梯群控、遠(yuǎn)程監(jiān)控、樓宇自動(dòng)化提供便利接口。
1系統(tǒng)組成及硬件設(shè)計(jì)
1.1系統(tǒng)的總體結(jié)構(gòu)
系統(tǒng)基于CAN總線多主結(jié)構(gòu),以CAN總線控制器82526和總線收發(fā)器PCA82C250為主體組成通信控制模塊,設(shè)計(jì)了主控制器、轎廂控制器、門(mén)廳控制器。通過(guò)串行通信方式構(gòu)成控制器局域網(wǎng),實(shí)現(xiàn)呼梯、內(nèi)選及顯示信號(hào)的通信。但是隨著高層建筑的出現(xiàn)和建筑面積的擴(kuò)大,需要并排設(shè)置幾臺(tái)電梯,以完成大樓內(nèi)的垂直運(yùn)輸任務(wù)。為了實(shí)現(xiàn)群控,便存在著電梯相互聯(lián)接的問(wèn)題,這樣就需要有監(jiān)控微機(jī)統(tǒng)一監(jiān)控調(diào)度。這里我們采用485總線實(shí)現(xiàn)單臺(tái)電梯主控制器之間以及與監(jiān)控微機(jī)間的通信。電梯的群控系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1電梯控群控系統(tǒng)結(jié)構(gòu)圖
1.2系統(tǒng)硬件設(shè)計(jì)
在單臺(tái)電梯控制系統(tǒng)中,主控制器要完成其它控制器信號(hào)的采集,顯示信號(hào)的輸出,電梯運(yùn)行控制等一系列的功能。而轎廂及門(mén)廳控制器只需要將呼叫信號(hào)采集,經(jīng)CAN總線送往主控制器,并接收來(lái)自主控制器的顯示信號(hào)將它輸出即可。因此,轎廂、門(mén)廳控制器結(jié)構(gòu)大體與主控制器類(lèi)似且相對(duì)簡(jiǎn)單。
下面以主控制器(如圖2所示)為例介紹硬件設(shè)計(jì)。電梯主控制器CPU采用了AT89C51單片機(jī)。AT89C51單片機(jī)是與8X51系列單片機(jī)兼容的增強(qiáng)型微控制器,其內(nèi)部集成了4K字節(jié)的Flashrom。由于主控制器是電梯控制系統(tǒng)的核心,擔(dān)負(fù)著控制電梯運(yùn)行的重要任務(wù),所編出的程序較大,因此,它的外部還要擴(kuò)展外部程序數(shù)據(jù)存儲(chǔ)器,按常規(guī)采用2764和6264。
在單臺(tái)電梯控制系統(tǒng)中,主控制器與轎廂及門(mén)廳控制器之間采用CAN總線實(shí)現(xiàn)通訊。CAN總線控制器采用INTEL公司82526芯片。PCA82C250作為CAN總線的接口。82526內(nèi)部采用硬件實(shí)現(xiàn)了數(shù)據(jù)鏈路層的全部功能,因而這部分的程序只需將82526中的數(shù)據(jù)讀出和將數(shù)據(jù)寫(xiě)入82526。圖3為CPU與CAN、485接口電路部分的外圍電路接線原理圖。
圖3通訊接口電路原理圖
在主控制器中,因?yàn)樾枰斎氲狞c(diǎn)數(shù)較多,這里我們采用常用的8255作為輸入輸出接口芯片。考慮到實(shí)際調(diào)試、修改程序的方便,主控制器中設(shè)計(jì)了鍵盤(pán)顯示電路,這一部分電路的核心采用專供鍵盤(pán)及顯示器接口用的可編程接口芯片8279,以掃描方式工作。掃瞄線SL0~SL2經(jīng)過(guò)3-8譯碼器產(chǎn)生8路掃描信號(hào)。另外為了解決外部的干擾引起的問(wèn)題,在主控制器中要加入Watchdog電路,保證系統(tǒng)發(fā)生故障時(shí)能及時(shí)讓系統(tǒng)回到正常工作狀態(tài)。
2通訊協(xié)議
本系統(tǒng)采用CAN2.0A標(biāo)準(zhǔn),該協(xié)議最大的優(yōu)點(diǎn)是廢除了傳統(tǒng)的站地址編碼,因此CAN沒(méi)有節(jié)點(diǎn)地址的概念,代之以對(duì)通訊數(shù)據(jù)塊進(jìn)行編碼,支持以數(shù)據(jù)為中心的通信模式。當(dāng)電梯層站數(shù)不同時(shí),只需要在總線上進(jìn)行增減控制器的節(jié)點(diǎn)數(shù),并對(duì)相應(yīng)的數(shù)據(jù)幀進(jìn)行適當(dāng)?shù)男薷摹?
2.1數(shù)據(jù)幀
數(shù)據(jù)幀(如圖4所示)包括七個(gè)部分:幀起始,仲裁場(chǎng),控制場(chǎng),數(shù)據(jù)場(chǎng),CRC序列,ACK場(chǎng),幀結(jié)束。仲裁場(chǎng)包括有報(bào)文標(biāo)識(shí)符(11位)和遠(yuǎn)程發(fā)送申請(qǐng)位(RTR);控制場(chǎng)由六位組成,后四位為數(shù)據(jù)長(zhǎng)度碼,代表數(shù)據(jù)字節(jié)數(shù),這里設(shè)為
2;傳輸信號(hào)每幀數(shù)據(jù)含兩個(gè)字節(jié),高字節(jié)表示具體層樓數(shù),低字節(jié)設(shè)為控制字。
圖4數(shù)據(jù)幀組成
2.2仲裁
總線空閑時(shí),任意節(jié)點(diǎn)都可以發(fā)送數(shù)據(jù),其它節(jié)點(diǎn)都可以接收數(shù)據(jù),只需要通過(guò)報(bào)文濾波即可實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn),一點(diǎn)對(duì)多點(diǎn)及全局廣播等通訊方式,無(wú)需專門(mén)調(diào)度。這里用接收碼寄存器,接收碼屏蔽寄存器實(shí)現(xiàn)報(bào)文濾波。
當(dāng)多個(gè)總線控制器同時(shí)發(fā)送報(bào)文時(shí),為避免沖突需進(jìn)行仲裁,這里采用非破壞性仲裁的方法解決沖突。所謂非破壞性是指這種仲裁方式可以使信息和時(shí)間都沒(méi)有損失,它是借助逐位仲裁幀中的ID號(hào)碼來(lái)實(shí)現(xiàn)的。CAN數(shù)據(jù)幀如前所述仲裁場(chǎng)ID號(hào)碼唯一的標(biāo)識(shí)一個(gè)節(jié)點(diǎn)地址,RTR位為0表示該幀為數(shù)據(jù)幀,為1時(shí)表示遠(yuǎn)程幀,而后者優(yōu)先權(quán)要高于前者。這12位ID號(hào)代表報(bào)文的優(yōu)先權(quán)高低,數(shù)越小優(yōu)先權(quán)越高。
非破壞性仲裁的過(guò)程可以用一個(gè)例子來(lái)說(shuō)明,如圖5,某時(shí)刻網(wǎng)絡(luò)上有三個(gè)節(jié)點(diǎn)a、b、c同時(shí)發(fā)送信息,ID標(biāo)識(shí)符的發(fā)送順序?yàn)閺母呶坏降臀?,即由ID.0到ID.11,每發(fā)送1字符網(wǎng)絡(luò)做一次與運(yùn)算。比如ID.6發(fā)送后,網(wǎng)絡(luò)做運(yùn)算:0∩1∩0=0,則網(wǎng)絡(luò)上各節(jié)點(diǎn)收到的信息為0。ID.6為1的字節(jié)發(fā)現(xiàn)接收到的與發(fā)送的不同,停止發(fā)送。這樣就使優(yōu)先級(jí)低(ID大)的節(jié)點(diǎn)退出發(fā)送。如此比較下去,直到全部ID及RTR發(fā)送完畢,網(wǎng)絡(luò)上僅剩節(jié)點(diǎn)c繼續(xù)發(fā)送信息,并且無(wú)需重發(fā)。
3程序設(shè)計(jì)
圖5CAN的沖突仲裁過(guò)程
主控制器程序流程圖如圖6所示。根據(jù)電梯實(shí)際運(yùn)行的要求,主控制器須通過(guò)與轎廂及門(mén)廳控制期間的通訊,來(lái)實(shí)現(xiàn)對(duì)轎廂和門(mén)廳呼梯信號(hào)的采集,完成對(duì)電梯運(yùn)行方向、當(dāng)前層樓數(shù)的判斷、顯示和中途停車(chē)等的控制。同時(shí)電梯在運(yùn)行過(guò)程中,主控制器還要對(duì)井道中各種開(kāi)關(guān)量限位信號(hào)進(jìn)行采集分析,以實(shí)現(xiàn)對(duì)電梯的準(zhǔn)確控制。在系統(tǒng)調(diào)試時(shí),主控制器還應(yīng)能與PC機(jī)實(shí)現(xiàn)通訊以方便系統(tǒng)的實(shí)時(shí)控制。因此,主控制器的程序設(shè)計(jì)應(yīng)當(dāng)充分考慮到上述功能的有機(jī)結(jié)合。
圖6主控制器程序流程圖
轎廂、門(mén)廳控制器的程序流程框圖如圖7所示。它們所要完成的功能比較簡(jiǎn)單即采集呼梯信號(hào)發(fā)送到主控制器,接收來(lái)自主控制器的顯示信號(hào)并將它們輸出。
圖7轎廂、門(mén)廳控制器程序流程框圖
停車(chē)控制子程序主要負(fù)責(zé)電梯停車(chē)及轎廂開(kāi)關(guān)門(mén)控制。首先,程序輸出停車(chē)控制字。然后,使電梯開(kāi)門(mén)。接著判斷光幕信號(hào)是否被截?cái)?。若是,則等待,沒(méi)有被截?cái)嗟脑?,再判斷此時(shí)電梯是否超重,若超重則報(bào)警等待,沒(méi)有則繼續(xù)判斷是否有關(guān)門(mén)信號(hào),有則電梯關(guān)門(mén)。沒(méi)有則延時(shí)一段時(shí)間后,自動(dòng)關(guān)門(mén),返回主程序。程序流程框圖如圖8所示。
圖8停車(chē)子程序流程框圖
4結(jié)束語(yǔ)
基于CAN總線技術(shù),以AT89C51為核心,采用82526結(jié)合PCA820250芯片構(gòu)成的電梯監(jiān)控系統(tǒng)在實(shí)際應(yīng)用中,主控制器通過(guò)CAN總線收發(fā)器借助CAN總線完成與其他主控制器的數(shù)據(jù)通訊。經(jīng)在兩臺(tái)8層電梯上實(shí)地使用,與代用PLC控制系統(tǒng)相比,故障停梯時(shí)間大大縮短,可靠性明顯提高,調(diào)試和增減內(nèi)容均比較方便,達(dá)到了預(yù)期效果。
參考文獻(xiàn):
[1]鄔寬明編著,CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì),北京,北京航空航天大學(xué)出版社,1996. [2]李恩林,陳斌生主編.微機(jī)接口技術(shù)300例,北京,機(jī)械工業(yè)出版社,2003.
評(píng)論