關(guān)鍵詞: 鏈梯; 單片機(jī); 控制系統(tǒng)
高層建筑遇險(xiǎn)無動(dòng)力循環(huán)鏈梯逃生裝置,對(duì)居住于高層建筑的人們遇火逃生十分必要。無動(dòng)力消防鏈梯是一種典型的變負(fù)載非線性系統(tǒng),隨著負(fù)載的增加,發(fā)電機(jī)繞組中的電流增加,磁場增強(qiáng),轉(zhuǎn)速加快,鏈梯的下降速度也增大。系統(tǒng)要求不論負(fù)載如何變化,鏈梯穩(wěn)定下降的速度必須保持在0.4 m/s~0.5 m/s,為此,本文設(shè)計(jì)了一種基于單片機(jī)的參數(shù)自適應(yīng)模糊PID控制器,根據(jù)鏈梯的實(shí)際響應(yīng)在控制過程中自動(dòng)調(diào)整、修改和完善控制規(guī)則與參數(shù),從而使系統(tǒng)的控制性能不斷完善,達(dá)到最佳的控制效果。
1 系統(tǒng)的主要硬件電路設(shè)計(jì)
控制系統(tǒng)的硬件主要由傳感器、控制器和執(zhí)行器三大部分組成。傳感器作為輸入部分,用于測量發(fā)電機(jī)的轉(zhuǎn)速,將其轉(zhuǎn)換為電信號(hào);控制器的作用是接收傳感器的輸入信號(hào),并按設(shè)定的程序進(jìn)行計(jì)算處理,輸出結(jié)果;執(zhí)行器則根據(jù)控制單元輸出的信號(hào)驅(qū)動(dòng)執(zhí)行機(jī)構(gòu),使之按要求變化??刂葡到y(tǒng)的結(jié)構(gòu)框圖如圖1所示。
通過轉(zhuǎn)速傳感器不斷采集發(fā)電機(jī)轉(zhuǎn)速,進(jìn)入單片機(jī)中進(jìn)行Fuzzy-PID算法處理。單片機(jī)把采集到的速度偏差e和偏差變化值ec經(jīng)模糊算法處理(查表),在線調(diào)整KP、KI、KD,最后通過PID算式計(jì)算控制輸出量u。輸出量u控制晶閘管的通斷來控制負(fù)載電阻的大小。
本控制系統(tǒng)以ATMEL89C52單片機(jī)為核心。AT89C52屬于MCS-51單片機(jī)的改進(jìn)型,是一種高性能的CMOS8位微控制器。由于其內(nèi)置8 KB的Flash存儲(chǔ)器,大大簡化了單片機(jī)系統(tǒng)的結(jié)構(gòu)[1]。
1.1 轉(zhuǎn)速檢測電路
傳感器輸出比較微弱的脈沖信號(hào),需要轉(zhuǎn)換為幅值為+5 V的單片機(jī)標(biāo)準(zhǔn)輸入信號(hào),用LM311比較器實(shí)現(xiàn)。實(shí)際電路如圖2所示。R2、R3用于調(diào)整比較器的基準(zhǔn)電壓,設(shè)定為0.25 V。當(dāng)傳感器的輸出電壓高于基準(zhǔn)電壓時(shí),比較器輸出為+5 V的高電平,反之則輸出為0 V的低電平。比較器上拉電阻的大小會(huì)影響輸出幅度,由500 Ω改為15 kΩ后,輸出幅值增大。經(jīng)過該電路輸出穩(wěn)定、規(guī)則的波形。
1.2 驅(qū)動(dòng)執(zhí)行電路
在單片機(jī)系統(tǒng)中,每一路電阻對(duì)應(yīng)一個(gè)接口,當(dāng)人員發(fā)生變化時(shí),只要根據(jù)控制量使相應(yīng)的端口輸出高電平,晶閘管導(dǎo)通,就可以改變負(fù)載電阻調(diào)節(jié)發(fā)電機(jī)的轉(zhuǎn)速。
由于單片機(jī)輸出的信號(hào)不足以觸發(fā)晶閘管,故須將觸發(fā)功率放大。從單片機(jī)的端口輸出觸發(fā)脈沖,觸發(fā)脈沖要經(jīng)過光電隔離器和三極管。光電隔離器用來提高系統(tǒng)抗干擾能力,三極管用來增大驅(qū)動(dòng)電流。此電路由緩沖器、光電隔離器、變壓器等部件組成,如圖3所示。
當(dāng)單片機(jī)AT89C52端口無脈沖信號(hào)時(shí),光電隔離器TIL117截止,變壓器無脈沖輸出,當(dāng)單片機(jī)端口有脈沖信號(hào)時(shí),光電隔離器TIL117導(dǎo)通,從而使相應(yīng)的三極管BG導(dǎo)通,這樣觸發(fā)脈沖經(jīng)脈沖變壓器T輸出,促使晶閘管觸發(fā)導(dǎo)通。
1.3 看門狗硬件電路
鏈梯系統(tǒng)中為了保證單片機(jī)可靠穩(wěn)定運(yùn)行,需要“看門狗”監(jiān)視器[2]。由于該控制系統(tǒng)采用的AT89C52自身沒有看門狗功能,一旦系統(tǒng)在現(xiàn)場受到突發(fā)干擾使程序跑飛,單片機(jī)沒有自我保護(hù)能力,不能使系統(tǒng)重新工作。為此,本系統(tǒng)采用了MAX706和AT89C52構(gòu)成的“看門狗”硬件電路,如圖4所示。MAX706是一種性能優(yōu)良的低功耗CMOS監(jiān)控電路芯片,其內(nèi)部電路由上電復(fù)位、可重復(fù)觸發(fā)“看門狗”定時(shí)器及電壓比較器等組成[3]。
CPU正常工作時(shí),該電路對(duì)其不加干預(yù),當(dāng)CPU工作失常一段時(shí)間后,看門狗電路動(dòng)作,使系統(tǒng)復(fù)位重新工作。
2 系統(tǒng)軟件設(shè)計(jì)
整個(gè)速度控制系統(tǒng)的軟件設(shè)計(jì)包括主程序設(shè)計(jì)和各種功能的子程序設(shè)計(jì)。其中主程序主要負(fù)責(zé)整個(gè)系統(tǒng)的上電初始化,以及功能化寄存器和端口寄存器的狀態(tài)設(shè)置。下面分別給出主程序和幾個(gè)主要處理子程序流程圖。
2.1 主程序
主程序即管理級(jí)程序,主要完成系統(tǒng)的初始化,并等待中斷信號(hào)。其流程圖如圖5所示。
2.2 測速子程序
本系統(tǒng)發(fā)電機(jī)轉(zhuǎn)速測量采用M/T法[4] 實(shí)現(xiàn),定時(shí)器T0對(duì)外部脈沖計(jì)數(shù),記取傳感器輸出脈沖個(gè)數(shù)m1,定時(shí)器T1對(duì)內(nèi)部脈沖進(jìn)行計(jì)數(shù),記取時(shí)鐘脈沖個(gè)數(shù)m2,定時(shí)器T2確定采樣周期T,定時(shí)器定時(shí)開始時(shí)刻總是與傳感器的第1個(gè)脈沖前沿保持一致,在T時(shí)間內(nèi)得到脈沖數(shù)m1。同時(shí),另一個(gè)計(jì)數(shù)器對(duì)標(biāo)準(zhǔn)時(shí)鐘脈沖進(jìn)行計(jì)數(shù),當(dāng)定時(shí)T結(jié)束,只停止對(duì)外部脈沖計(jì)數(shù),而在定時(shí)結(jié)束后傳感器輸出第一個(gè)脈沖前沿時(shí),才停止對(duì)標(biāo)準(zhǔn)時(shí)鐘的計(jì)數(shù),并得到m2,其持續(xù)時(shí)間Td=T+ΔT,轉(zhuǎn)速
2.3 模糊PID控制程序
為了減少在線計(jì)算的復(fù)雜性,盡可能地提高算法的實(shí)現(xiàn)速度,本系統(tǒng)采用查表的方法實(shí)現(xiàn)PID參數(shù)的模糊實(shí)時(shí)調(diào)節(jié)??刂瞥绦蛄鞒虉D如圖7所示。
本系統(tǒng)通過調(diào)整發(fā)電機(jī)的負(fù)載電流,也即改變負(fù)載電阻來控制發(fā)電機(jī)的轉(zhuǎn)速,從而控制鏈梯的下降速度,這是本文的一個(gè)主要?jiǎng)?chuàng)新點(diǎn)。系統(tǒng)以AT89C52單片機(jī)為核心,進(jìn)行了鏈梯降速控制系統(tǒng)的硬件與軟件設(shè)計(jì)。硬件部分主要是轉(zhuǎn)速檢測電路與驅(qū)動(dòng)執(zhí)行電路的設(shè)計(jì)。另外為了保證系統(tǒng)的正常運(yùn)行,設(shè)計(jì)了看門狗電路。軟件部分主要是主程序與部分子程序的設(shè)計(jì)。此外采用了模糊PID控制算法,在保留常規(guī)PID控制算法優(yōu)點(diǎn)的基礎(chǔ)上,當(dāng)參數(shù)發(fā)生變化時(shí)還具有較強(qiáng)的適應(yīng)能力和良好的抗干擾性能,使鏈梯穩(wěn)定下降的速度始終保持在0.4 m/s 0.5 m/s。
參考文獻(xiàn)
[1] 余永權(quán).ATMEL89系列單片機(jī)應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2002.
[2] 李維國,俞曉紅.一種新的單片機(jī)“看門狗”電路軟件設(shè)計(jì)方法[J].國外電子元器件,2000(10).
[3] MAXIM. Product Selector Guide.2000.
[4] 李永東.交流電機(jī)數(shù)字控制系統(tǒng)[M].北京:機(jī)械工業(yè)出版社,2002.