馬健喆,魏巍
(太原理工大學(xué)信息工程學(xué)院,山西太原030024)
基于AT89C51單片機(jī)的紅外線門控系統(tǒng)的設(shè)計(jì)
馬健喆,魏巍
(太原理工大學(xué)信息工程學(xué)院,山西太原030024)
該文采用紅外線為檢測(cè)裝置,基于AT89C51單片機(jī)設(shè)計(jì)實(shí)現(xiàn)了卷簾門自動(dòng)升降控制系統(tǒng)。該系統(tǒng)主要由單片機(jī)及其外圍電路、紅外檢測(cè)電路、步進(jìn)電機(jī)控制電路等組成,通過卷簾門及其電機(jī)的選型來實(shí)現(xiàn)卷簾門的實(shí)際控制,并用步進(jìn)電機(jī)模塊對(duì)其進(jìn)行模擬。實(shí)驗(yàn)結(jié)果表明,該文通過自動(dòng)控制方式、設(shè)置蜂鳴器報(bào)警、設(shè)計(jì)密碼鎖,為避免因意外原因造成密碼誤輸入設(shè)置了退格鍵,采用矩陣鍵盤作為密碼鍵盤,保證了增加可選按鍵的數(shù)量,在軟件設(shè)計(jì)中設(shè)置了相應(yīng)循環(huán)和延時(shí),增強(qiáng)了系統(tǒng)的安全性和可靠性。
單片機(jī);紅外感應(yīng);密碼鎖;步進(jìn)電機(jī)
Abstract:The paper adopts infrared detection device,designs and realizes automatic lifting rolling door control system Based on AT89C51.The system mainly comprises microcontroller and its periphery circuits,infrared detection circuit,stepper motor con?trol circuit and so on,realizes the actual control of rolling door through the selection of rolling door and motor,and simulates by stepper motor module.The experiment results show the automatic control way can enhance the safety and reliability of infrared gate control system.The paper sets the buzzer alarm,designs the combination lock,sets the backspace key avoid of accidental pass?word input error,uses matrix keyboard as a password keyboard,ensures the increase in the number of optional keys,strengthens the security of the system.The corresponding circulation and time delay in the software design enhance the safety and reliability of the system.
Key words:Microcontroller;Infrared sensor;Combination lock;Stepper motor
隨著科技的進(jìn)步,自動(dòng)門控制系統(tǒng)越來越廣泛地應(yīng)用于銀行、酒店、大型商場(chǎng)等公共場(chǎng)所或住宅,同時(shí)對(duì)其安全性及各方面性能的要求越來越高。本文采用紅外線為檢測(cè)裝置,基于AT89C51單片機(jī)設(shè)計(jì)卷簾門自動(dòng)升降控制系統(tǒng)。通過卷簾門及其電機(jī)的選型來實(shí)現(xiàn)卷簾門的實(shí)際控制,并用步進(jìn)電機(jī)模塊對(duì)其進(jìn)行模擬。采用自動(dòng)控制方式可以增強(qiáng)卷簾門的安全性和可靠性,密碼輸入與檢查功能可以進(jìn)一步增強(qiáng)所設(shè)計(jì)自動(dòng)卷簾門系統(tǒng)的安全性和可靠性。
本系統(tǒng)主要由單片機(jī)及其外圍電路、紅外檢測(cè)電路、步進(jìn)電機(jī)控制電路等組成。將單片機(jī)作為步進(jìn)電機(jī)的控制器以實(shí)現(xiàn)卷簾門的自動(dòng)控制。本文采用熱釋電紅外探頭結(jié)合紅外處理芯片來接收人體紅外信號(hào),并通過設(shè)計(jì)相應(yīng)測(cè)量電路將其轉(zhuǎn)換為單片機(jī)可以接收的開關(guān)量信號(hào)輸入到單片機(jī)中。
在單片機(jī)的控制下,結(jié)合擴(kuò)展設(shè)備中的矩陣鍵盤進(jìn)行密碼輸入與檢測(cè)部分的設(shè)計(jì),并在單片機(jī)的輸出側(cè)采用結(jié)合了驅(qū)動(dòng)電路的步進(jìn)電機(jī)作為門驅(qū)動(dòng)裝置,以最終實(shí)現(xiàn)通過單片機(jī)的控制的電機(jī)轉(zhuǎn)動(dòng),從而完成卷簾門在紅外感應(yīng)到人體信號(hào)且密碼輸入成功條件下的啟停和自動(dòng)升降設(shè)計(jì),表現(xiàn)為電機(jī)正轉(zhuǎn)固定時(shí)間后,在人體信號(hào)消失前使卷簾門停留在最高處;人體信號(hào)消失后經(jīng)過一段延時(shí),電機(jī)進(jìn)行與正轉(zhuǎn)速率及時(shí)間相同的反轉(zhuǎn),同時(shí)設(shè)置有蜂鳴器報(bào)警以進(jìn)一步加強(qiáng)系統(tǒng)的安全性。系統(tǒng)原理框圖如圖1所示。
圖1 系統(tǒng)原理框圖
本文采用51系列單片機(jī)中的AT89S51作為控制器,并結(jié)合相關(guān)擴(kuò)展模塊進(jìn)行硬件設(shè)計(jì)。AT89C51具有體積小、價(jià)格低、性能強(qiáng)大、速度快、用途廣、靈活性強(qiáng)、可靠性高、存儲(chǔ)器ROM和RAM嚴(yán)格分工、采用面向控制的指令系統(tǒng)、I/O端口具有復(fù)用功能、硬件功能具有廣泛的通用性等優(yōu)點(diǎn)。AT89S51引腳配置圖見圖2。其中括號(hào)內(nèi)為對(duì)應(yīng)引腳的特殊功能,本文需要使用P3.2口的特殊功能來作為外部中斷0的接口。
圖2 AT89C51單片機(jī)引腳配置圖
本文采用P0口用于動(dòng)態(tài)數(shù)碼管段選信號(hào)的輸出,P1.0~P1.3口用于向驅(qū)動(dòng)模塊及對(duì)應(yīng)的單片機(jī)輸出控制信號(hào),P1.4口連接蜂鳴器及對(duì)應(yīng)電路,P2口用于矩陣鍵盤信號(hào)的輸入,P3.0P3.1P3.6口用于動(dòng)態(tài)數(shù)碼管位選信號(hào)的輸出,P3.2口用于外部中斷0,P3.7口連接到傳感器及測(cè)量電路以檢測(cè)人體紅外感應(yīng)信號(hào),其余I/O口暫不使用。
通過查閱參考文獻(xiàn)并對(duì)實(shí)際情況進(jìn)行考察,應(yīng)用于門控系統(tǒng)的紅外線陣列因需要較長(zhǎng)的檢測(cè)通道以識(shí)別人體信號(hào),且需要較多傳感器及較復(fù)雜算法配合,才能實(shí)現(xiàn)較準(zhǔn)確的信號(hào)采集,故本文采用HC-SR501人體感應(yīng)模塊及測(cè)量電路來感應(yīng)人體紅外信號(hào),并將其轉(zhuǎn)換為單片機(jī)可以識(shí)別的電平信號(hào)。它的主要部件為L(zhǎng)HI778熱釋電紅外探頭與BISS0001紅外處理芯片。本文選用的HC-SR501是基于紅外線技術(shù)的自動(dòng)控制模塊,采用德國(guó)原裝進(jìn)口LHI778探頭結(jié)合BISS0001紅外處理芯片設(shè)計(jì)來感應(yīng)與處理人體紅外信號(hào),具有靈敏度高、可靠性強(qiáng)、超低電壓工作模式等特性。
本文利用步進(jìn)電機(jī)的正反轉(zhuǎn)實(shí)現(xiàn)卷簾門的升降控制。由于難以對(duì)卷簾門進(jìn)行軟硬件設(shè)計(jì)和仿真、實(shí)現(xiàn),故本文通過對(duì)步進(jìn)電機(jī)進(jìn)行設(shè)計(jì)與控制來模擬卷簾門的工作。本文采用TC1117芯片結(jié)合相應(yīng)外圍電路以組成步進(jìn)電機(jī)驅(qū)動(dòng)電路。
本文通過單片機(jī)學(xué)習(xí)板附帶的無源他激蜂鳴器及其外圍電路,設(shè)計(jì)完成了聲音報(bào)警功能。采用與蜂鳴器電路相連的單片機(jī)I/O口輸出方波信號(hào)以控制蜂鳴器報(bào)警,所設(shè)計(jì)的蜂鳴器報(bào)警電路可見圖3,其中J8連接到單片機(jī)的P1.6口。
本文為了增加允許輸入的密碼位數(shù),采用矩陣鍵盤而非獨(dú)立按鍵來設(shè)置15位可選密碼及退格鍵。矩陣鍵盤需要結(jié)合相應(yīng)的程序算法才能實(shí)現(xiàn)按鍵位置的精確檢測(cè),而常用的掃描方法包括逐行掃描法、行列掃描法兩類。本文采用行列掃描法實(shí)現(xiàn)矩陣鍵盤的檢測(cè),所設(shè)計(jì)的矩陣鍵盤電路見圖4。
圖3 報(bào)警電路
為使所設(shè)計(jì)系統(tǒng)的運(yùn)行狀態(tài)更加清晰可見,本文結(jié)合單片機(jī)學(xué)習(xí)板上的3-8譯碼器74LS138與驅(qū)動(dòng)模塊74HC245、八位動(dòng)態(tài)數(shù)碼管及其外圍電路設(shè)置了動(dòng)態(tài)數(shù)碼管顯示功能。譯碼器是一種能將輸入的數(shù)據(jù)翻譯成對(duì)應(yīng)輸出信號(hào)的元件,而74LS138可以根據(jù)輸入的3路地址信號(hào)進(jìn)行8路輸出通道的選通。
74HC245是一種具有雙向三態(tài)輸出的八路信號(hào)收發(fā)器,通常用于提升計(jì)算機(jī)的負(fù)載驅(qū)動(dòng)能力。其工作電壓范圍較寬,通常在3V~5.5V之間,而輸入電壓在-0.5V~邏輯電源電壓+0.5V之間,因此可以直接連接到單片機(jī)的IO口。
相對(duì)靜態(tài)數(shù)碼管而言,動(dòng)態(tài)數(shù)碼管將所有段選線并聯(lián)在一起,而每個(gè)數(shù)碼管是否有效由三根位選線來控制。本文的數(shù)碼管采用動(dòng)態(tài)掃描顯示方式,即以較高頻率向各位數(shù)碼管輪流送出字形碼和相應(yīng)的位選碼,同時(shí)利用發(fā)光管的余輝和人眼視覺暫留作用以使肉眼觀察時(shí)產(chǎn)生八位數(shù)碼管均在顯示信息的感覺。結(jié)合相應(yīng)外圍電路,最終設(shè)計(jì)得到動(dòng)態(tài)數(shù)碼管顯示電路如圖5。
圖4 矩陣鍵盤電路
圖5 動(dòng)態(tài)數(shù)碼管顯示電路
本文采用自鎖開關(guān)來完成緊急停止按鈕電路的設(shè)計(jì)。當(dāng)自鎖開關(guān)的按鈕被第一次按下后,開關(guān)接通并保持(即自鎖);在第二次按下后開關(guān)斷開,同時(shí)開關(guān)按鈕彈回原處,因此可以非常方便地實(shí)現(xiàn)緊急停止和停止后的恢復(fù)運(yùn)行。緊急停止按鈕電路如圖6所示,其中STOP端口連接單片機(jī)的外部中斷0口(P3.2口)。
圖6 緊急停止按鈕電路
本文單片機(jī)系統(tǒng)需要5V電源進(jìn)行供電,而部分模塊需要被施加12V電壓才能正常運(yùn)行,故設(shè)計(jì)了一種可將220VAC的市電轉(zhuǎn)換為12V與5V直流電的電源電路,如圖7所示。
圖7 電源電路
本文采用keilμVision4進(jìn)行程序編寫,并使用PZ-ISP普中自動(dòng)下載軟件將所編寫程序輸入到單片機(jī)。在Keil軟件的仿真中應(yīng)注意仿真中的晶振頻率為11.0592MHz(可以通過將其他晶振接入晶振插孔中以改變?cè)擃l率);仿真器上的復(fù)位按鈕只能使仿真芯片而非目標(biāo)系統(tǒng)復(fù)位;因仿真中單片機(jī)31腳(/EA/VPP)已接至高電平,仿真過程中只能使用片內(nèi)ROM,但仿真器對(duì)應(yīng)的外部引腳與仿真芯片的31腳并不相連,故該仿真器仍可用于帶有外部ROM的單片機(jī)系統(tǒng)(其CPU的/EA引腳接至低電平)。
本文采用C語(yǔ)言中的C51來完成具體程序的編寫任務(wù)。為了增強(qiáng)對(duì)單片機(jī)硬件的操作能力,C51編譯器擴(kuò)展了適合于MCS-51單片機(jī)硬件的數(shù)據(jù)類型、存儲(chǔ)類型、存儲(chǔ)模式、指針類型和中斷函數(shù)等,以使單片機(jī)C語(yǔ)言程序保持C語(yǔ)言程序本身不依賴計(jì)算機(jī)硬件系統(tǒng)的特點(diǎn),而只需要略加補(bǔ)充有關(guān)硬件的操作,就可以在不同的計(jì)算機(jī)系統(tǒng)間進(jìn)行快速移植。
本文采用如圖8所示的程序總體流程圖進(jìn)行設(shè)計(jì),具體步驟如下:
1)在感應(yīng)到人體信號(hào)前電機(jī)停止,矩陣鍵盤全部按鍵按下均無效;
2)在感應(yīng)到人體信號(hào)后進(jìn)入密碼輸入檢測(cè)程序,其間如果密碼輸入錯(cuò)誤可以通過退格鍵進(jìn)行退格;若在密碼輸入完畢前連續(xù)30秒沒有按鍵按下,則本次循環(huán)結(jié)束,系統(tǒng)進(jìn)入下一次循環(huán);
3)六位密碼輸入完畢后與預(yù)先設(shè)定的密碼進(jìn)行比對(duì),若正確,則進(jìn)入電機(jī)運(yùn)行程序,以肉眼可見速度正轉(zhuǎn)數(shù)秒后停止(對(duì)應(yīng)卷簾門逐漸開啟),直到人體感應(yīng)信號(hào)消失(對(duì)應(yīng)人已進(jìn)門)后繼續(xù)延時(shí)一小段時(shí)間,隨后電機(jī)開始反轉(zhuǎn),反轉(zhuǎn)速率與時(shí)間和正轉(zhuǎn)時(shí)相同(對(duì)應(yīng)開啟的卷簾門重新關(guān)閉);期間若緊急停止按鈕(對(duì)應(yīng)外部中斷)被按下,則電機(jī)立即停止轉(zhuǎn)動(dòng),而當(dāng)緊急停止按鈕被再次按下(即自鎖開關(guān)恢復(fù)原狀態(tài)),中斷結(jié)束,電機(jī)以原狀態(tài)恢復(fù)運(yùn)行。若密碼輸入錯(cuò)誤,則執(zhí)行短報(bào)警程序,而連續(xù)輸入錯(cuò)誤三次,則啟動(dòng)不返回的長(zhǎng)報(bào)警程序(即對(duì)應(yīng)報(bào)警直至被斷電關(guān)閉)。在電機(jī)運(yùn)行完畢或短報(bào)警結(jié)束后,重復(fù)執(zhí)行步驟(2)、(3),直至手動(dòng)斷電。
本文主要以AT89C51單片機(jī)的軟硬件設(shè)計(jì)為基礎(chǔ),結(jié)合人體紅外感應(yīng)模塊及測(cè)量電路、步進(jìn)電機(jī)及驅(qū)動(dòng)電路、蜂鳴器電路、矩陣鍵盤電路、電源電路等外部擴(kuò)展來實(shí)現(xiàn)單片機(jī)控制下的步進(jìn)電機(jī)啟停與正反轉(zhuǎn)功能,從而模擬對(duì)實(shí)際卷簾門的啟停和升降控制。本文通過自動(dòng)控制方式增強(qiáng)了紅外線門控系統(tǒng)的安全性和可靠性,設(shè)置了蜂鳴器報(bào)警,設(shè)計(jì)了密碼鎖,為避免因意外原因造成密碼誤輸入設(shè)置了退格鍵,采用矩陣鍵盤作為密碼鍵盤,保證了增加可選按鍵的數(shù)量,增強(qiáng)了系統(tǒng)安全性。在軟件設(shè)計(jì)中設(shè)置了相應(yīng)循環(huán)和延時(shí),保證在人走出感應(yīng)范圍前,門始終停留在頂端,并在人走出這一區(qū)域后繼續(xù)保持一小段時(shí)間停止?fàn)顟B(tài)才開始下降,有利于解決門夾人問題,提高了系統(tǒng)可靠性。針對(duì)基于單片機(jī)和人體紅外感應(yīng)模塊無法通過220V市電直接供電的問題,設(shè)計(jì)了相應(yīng)的電源電路,將市電轉(zhuǎn)化為5V與12V的直流電,使系統(tǒng)可以直接連接電源插座正常工作,減少了門控系統(tǒng)對(duì)環(huán)境的要求。
圖8 程序總體流程圖
[1]李曉林,蘇淑清,許鷗,等.單片機(jī)原理與接口技術(shù)[M].3版.北京:電子工業(yè)出版社,2015.
[2]張志良.單片機(jī)學(xué)習(xí)指導(dǎo)及習(xí)題解答[M].北京:機(jī)械工業(yè)出版社,2005.
[3]鄭鋒,王巧芝,李英建.單片機(jī)典型應(yīng)用開發(fā)系列:51單片機(jī)應(yīng)用系統(tǒng)典型模塊開發(fā)大全[M].3版.北京:中國(guó)鐵道出版社,2013.
[4]王林泓.熱釋電紅外信號(hào)特征分析及人體識(shí)別方法研究[D].重慶:重慶大學(xué),2010.
[5]劉永敬.用于人體目標(biāo)感知與定位的被動(dòng)式雙紅外探測(cè)系統(tǒng)研究[D].天津:天津大學(xué),2014.
[6]劉偉.PWM技術(shù)在電機(jī)驅(qū)動(dòng)控制中的應(yīng)用[D].合肥:合肥工業(yè)大學(xué),2009.
[7]石斐.基于Keil的永磁減速步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)[D].蘇州:蘇州大學(xué),2015.
Design of Infrared Gate Control System Based on AT89C51 Microcontroller
MA Jian-zhe,WEI Wei
(School of Information Engineering,Taiyuan University of Technology,Taiyuan 030024,China)
TP311
A
1009-3044(2017)24-0232-03
2017-06-20