基于單片機的自動門控制系統(tǒng)設計.doc
-
資源ID:6682623
資源大?。?span id="xszcdq0" class="font-tahoma">397.50KB
全文頁數(shù):19頁
- 資源格式: DOC
下載積分:9.9積分
快捷下載

會員登錄下載
微信登錄下載
微信掃一掃登錄
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。
|
基于單片機的自動門控制系統(tǒng)設計.doc
第一章 緒論
1.1課題研究的背景
社會的進步、科技的前進將人們的生活投入了一個急劇發(fā)展的數(shù)字化的21世紀。人們生活水平也隨之逐漸升高,讓人們對美好生活環(huán)境追求的欲望也愈來愈強烈,因而各類方便于生活的單片機自動控制系統(tǒng)開始進入了人們的生活。以單片機為核心的自動門系統(tǒng)就是其中之一。因自動門之中使用的芯片和傳感器技術的日漸先進,使它的實用性變的更好,功能也愈來愈多,從而讓它的應用范圍也越來越廣泛。使用自動門會給人們帶來人員出入方便、節(jié)約能源、減少噪音等好處,也令人們的建筑更加的現(xiàn)代化。
1.2國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢
自動門是上個世紀中期在建筑物上得到利用。在上個世紀二十年代之后,自動門開始造美國的超級市場上初次使用。當時使用的是油壓式自動門,這是世界上第一跨自動門,根據(jù)它的使用原理,氣動式自動門也開始得到發(fā)明。到1962年電氣化的進步,電氣式自動門得以發(fā)展,因它較于油壓式和氣動式維護更加方便,電氣式自動門隨著城市化的推進,使用它的用戶也隨之增加。但在上世紀六十年代電氣設備的發(fā)展還處于低級階段,電機轉速難以控制,故此當時的電氣式自動門的性能還是差強人意,能源利用率低下,維護的成本還是相對較高。在進入計算機時代之后,計算機技術的不斷發(fā)展,電子控制技術開始成熟,直接控制電動機的電氣式自動門得到急劇的發(fā)展,使其逐步成為自動門的主流。
在中國自動門現(xiàn)在隨著城市化推進的浪潮在社會中得到廣泛的應用,現(xiàn)在在每個城市都可以見到自動門的身影。但在國內(nèi)因其研發(fā)起步較晚,自主研發(fā)的程度比較低,大部分的專利都在外國人的手中。在進入新世紀之后,國內(nèi)的計算機發(fā)展進入快車道,追趕上國際上的先進水平。利用計算機技術的自動門技術在國內(nèi)也在飛速發(fā)展。
自動平移門是現(xiàn)在最常見的自動門。工作的方式是將兩個人體紅外感應器安裝在門內(nèi)外兩側。當人走近自動門時,任意一個人體紅外感應器感應到人體紅外的存在,就控制步進電機打開門。當人通過門之后,再將門關閉。因為自動平移門可以在進入自動模式后能夠完成自動控制,可以讓建筑物層次得以提升又方便美觀。因此迅速在國內(nèi)外建筑市場得到廣泛的普及。
1.3課題研究意義和目的
21世紀是電子科技不斷發(fā)展的時代, 各種智能控制系統(tǒng)逐漸的進入人們的生活之中。自動門控制系統(tǒng)因它能夠出色的完成疏導人流,降低人員密度,防止再次發(fā)人員踩踏的慘劇,已成為商場、超市、旅店、寫字樓等人流集中地的首選。
為了使自動門更好的為人們服務。為了 獲得一種簡單電路,功能完善,維護方便和性價高等優(yōu)點的自動門系統(tǒng),本文中,研究了一種平開式的自動門控制系統(tǒng)。 實現(xiàn)了自動識別人體紅外識和防擠壓等功能。該系統(tǒng)以STC89C52作為控制核心,以步進電機、紅外傳感器和光電開關結合的簡易單片機系統(tǒng),充分發(fā)揮核心控制系統(tǒng)的性能。具有一定的使用和參考價值。
1.4課題主要研究內(nèi)容
閱讀單片機以及自動控制相關知識。通過去圖書館下載往年有關的論文進行參考,查閱資料,瀏覽圖書館相關文獻,使用網(wǎng)絡參考網(wǎng)絡上的論文。在此基礎上利用單片機實現(xiàn)自動門控制系統(tǒng)的設計。本次設計總體結構大致分為電源模塊、動力模塊、報警模塊、人體感應模塊、門行程檢測模塊、障礙物檢測模塊共六大模塊組成,通過Keil軟件編寫設計所需要的程序并對程序進行檢查分析,Altium designer進行原理圖設計和PCB板的布線,最后使用Proteus軟件進行仿真。本控制系統(tǒng)基本框圖如圖1.1所示
圖1.1紅外檢測框圖
第二章 系統(tǒng)硬件設計
為了滿足生活中日益增長的自動門需求,本設計是完成一種基于89C52單片機的自動門控制系統(tǒng),該系統(tǒng)包括報警電路,HC-SR501人體感應模塊,復位電路,動力模塊,控制方式切電路換等。當有人經(jīng)過人體感應模塊時,人體感應模塊會感應到人體的溫度,之后會將紅外線信號轉化為電壓信號,從而該系統(tǒng)會自動打開門,讓行人通過。當人通過后,人體感應模塊感應不到人體的溫度,之后輸出低電壓信號,從而該系統(tǒng)會自動打關門。該系統(tǒng)操作簡單,可靠性強,靈敏度高,檢測范圍廣,便于安裝,非常適代替原始的手動門,從而達到出入方便的目的。
2.1硬件整體設計思路
根據(jù)需要實現(xiàn)的功能選取基本硬件:
(1) 主控芯片:STC89C52;
(2) 人體感應模塊:HC-SR501;
(3) 報警模塊:蜂鳴器:
(4) 動力模塊:步進電機;
(5) 障礙檢測模塊:E18-D50NK;
(6) 門行程檢測模塊:ITR-9608光電開關
系統(tǒng)整體硬件框圖如圖2.1所示
圖2.1系統(tǒng)硬件框圖
2.2單片機介紹
單片機是微型計算機系統(tǒng)。雖然它小,但具備一臺計算機的大部分部件:運算器、控制器、內(nèi)存、內(nèi)部和外部總線系統(tǒng)。相當于一塊芯片成為了一臺體積小、質(zhì)量輕、價格便宜的計算機。這為它的廣泛應用提供了便利的條件。
根據(jù)系統(tǒng)需求,需要控制芯片能在5V~7V電壓下工作,低功耗響應速度快,具備定時器,UART串口通信,外部中斷,至少具備8個I/O口,能夠驅動小電流設備。根據(jù)以上功能需要,綜合考慮選取在市場上應用比較廣泛且性價比高的Atmel 公司的STC89C52單片機,作為主控芯片,并選取11.0592MHz的晶振外接在主控芯片上圖2.2為STC89C52單片機的最小系統(tǒng)圖。
圖2.2 STC89C52單片機最小系統(tǒng)
2.2.1STC89C52單片機引腳說明
STC89C52單片機擁有40個引腳。表1按照引腳功能可分4個部分。
表2.1單片機引腳說明
單片機引腳
引腳功能
主電源引腳
VCC(40)
電源輸入,接+5V電源
GND(20)
接地線
外接晶振引腳
XTAL1(19)
片內(nèi)振蕩電路的輸入端
XTAL2(18)
片內(nèi)振蕩電路的輸出端
控制引腳
RST/VPP(9)
復位信號輸入端
ALE/PROG(30)
地址鎖存允許信號
PSEN(29)
外部存儲器讀選通信號
EA/VPP(31)
程序存儲器的內(nèi)外部選通,接低電平從外部程序存儲器讀指令,如果接高電平則從內(nèi)部程序存儲器讀指令
可編程輸入/輸出引腳
P0口(32~39)
準雙向8位三態(tài)I/O口
P1口(1~8)
準雙向8位三態(tài)I/O口
P2(21~28)
準雙向8位三態(tài)I/O口
P3(10~17)
準雙向8位三態(tài)I/O口
值得注意的是,P3口的每一個引腳都可以單獨作為第一功能的輸入輸出或第二功能。P3口第二功能如表2.2所示
表2.2 P3口第二功能
P 3.0
PXD(串行輸入口)
P3.1
TXD(串行輸出口)
P3.2
/INT0(外部中斷0)
P3.3
/INT1(外部中斷1)
P3.4
T0(記時器0外部輸入)
P3.5
T1(記時器1外部輸入
P3.6
/WR(外部數(shù)據(jù)存儲器寫選通)
P3.7
/RD(外部數(shù)據(jù)存儲器讀選通)
2.2.2復位及復位電路
復位是單片機的初始化操作。其主要功能是讓單片機初始化為0000H并從0000H單元開始執(zhí)行程序。可以在單片機程序運轉出錯或操作失誤使系統(tǒng)處于死鎖狀況時,擺脫困境。復位電路原理圖如圖2.3所示。
圖2.3復位電路原理圖
2.3人體感應模塊設計
HC-SR501是利用紅外線的技術從而來實現(xiàn)自動控制的功能。當有人經(jīng)過該系統(tǒng)時,該模塊感應到人體的溫度,人體所輻射出來的紅外線被人體感應模塊吸收之后,該人體感應模塊經(jīng)過一系列的處理之后,紅外線就會轉變成電壓信號,該系統(tǒng)就會發(fā)出報警的信號。該人體模塊靈敏度高,廣泛地被應用在自動感應產(chǎn)品之中。它的發(fā)明使好多自動感應產(chǎn)品的制作變得更加的方便快捷,更加的可靠。
2.4步進電機
步進電動機是一種的數(shù)字控制電動機。它是將收到的電脈沖信號轉變成角位移或者線性位移。即給一個脈沖信號,步進電動機就轉動一個角度。步進電機在負載范圍內(nèi)的開啟/停止,轉動頻率,只與控制核心傳輸給它的信號相關,而不受負載大小的影響。由于這特點的存在,所以作常適合于單片機控制。近30年來,數(shù)字技術、計算機技術迅速發(fā)展推動步進電動機的進步,使步進電動機的使用愈來愈廣泛。
2.5 驅動控制系統(tǒng)
在利用步進電機時必需要有由環(huán)形脈沖,功率放大等構成的控制系統(tǒng),其方框圖如圖2.3所示。
圖2.3驅動控制系統(tǒng)框圖
脈沖信號由單片機產(chǎn)生,經(jīng)ULN2003芯片對脈沖信號進行放大,步進電動機根據(jù)脈沖電流進行相應的工作狀態(tài)。在步進電動機的控制中,基本控制如下:
(1)反應式步進電動機控制換相順序
步進電動機的工作方時,按照通電換相次序嚴格執(zhí)行。我們把通電換相過程稱為脈沖分配。四相五線步進電機工作方式通電換相的正序:是A-AB-B-BC-C-CD-D-DA-A;反序為A-DA-D-CD-C-BC-B-AB-A。共有八個通電狀態(tài)。其驅動方式邏輯時序如表2.4示。
表2.4邏輯時序
步進
01
02
03
04
真值表
通電
0
ON
OFF
ON
OFF
1010
AC
1
ON
OFF
OFF
OFF
1000
A
2
ON
OFF
OFF
ON
1001
AD
3
OFF
OFF
OFF
ON
0001
D
4
OFF
ON
OFF
ON
0101
BD
5
OFF
ON
OFF
OFF
0100
B
6
OFF
ON
ON
OFF
0110
BC
7
OFF
OFF
ON
OFF
0010
C
8
ON
OFF
ON
OFF
1010
AC
ULN2003芯片是高壓大電流達林頓晶體管陣列,它是使用七個硅NPN達林頓管組成成。具有電流增益高、工作電流大、帶負載能力強等特性。本設計采用該芯片將信號從微處理器中放大,構成一個功率放大電路,以便于對步進電機驅動。其方框圖如圖2.5所示。
圖2.5ULN2003芯片框圖
2.6檢測模塊
本設計利用E18-D50NK紅外避障器和ITR-9608光電開關組成自動門的檢測系統(tǒng)。
2.6.1E18-D50NK紅外避障器
E18-D50NK是一種集發(fā)射與接收于一體的主動式光電傳感器。E18-D50NK傳感器傳感器具有抗干擾能力強、安裝方便、使用簡單等特點。并且探測距離是可以通過電位器進行調(diào)節(jié)的。廣泛應用在防盜報警、自動門、機器人避障、流水線記數(shù)等方面。
該傳感器主動發(fā)射的光線經(jīng)過調(diào)制后調(diào)制成一定波長的光線在進行發(fā)射,在工作中可以避免被自然光線和各種燈光的干擾具有較大精度。當發(fā)射的光線被擋住,接收器根據(jù)發(fā)射回來的光線進行調(diào)節(jié)輸出信號。單片機處理此信號,最終報警器報警,步進電機停止轉動,以達到放夾功能。保護了行人的安全和防止夾到異物損壞自動門。
2.6.2ITR-9608光電開關
ITR-9608光電開關為槽型光電傳感器。其工作原理是:通過檢查自身發(fā)射器發(fā)射的光線是否被另一端的接收器接收到,接收到光線表示沒有物體通過檢測器,沒有接收到光線表示有物體經(jīng)過,光電開關據(jù)此產(chǎn)生信號。對射式光電開關的特點在于:檢測的物體不限于是不是金屬物體,只要此物體不是不透明的,工作時不易受干擾,感應靈敏度高,工作所需能量小,工作壽命長。主要應用在測速、計數(shù)器、打印機等自動設備上。
在本次設計中利用此傳感器檢測門打開或關閉的位置。在自動門關閉的過程中,當自動門遮擋住JP1時,系統(tǒng)認為自動門已經(jīng)完全關閉,電動機停止關門。在門打開的過程中,當自動門不能繼續(xù)遮擋JP2時,系統(tǒng)認為自動門已經(jīng)完全打開,電動機停止轉動,等待關門指令進行再進行關門動作。門行程檢測電路如圖2.5所示。
圖2.5門行程檢測電路
第三章 課題的軟件設計
3.1系統(tǒng)軟件結構
本設計利用C語言進行程序編寫,整個系統(tǒng)的程序主要由端口設置,標志位設置,延時子函數(shù),報警子函數(shù),順時針/逆時針轉動子函數(shù),門行程檢測子函數(shù),主程序等組成。程序依次正常運行帶動硬件完成設計所需要的功能。全部程序見附錄。
3.2程序流程圖設計
自動門在自動狀態(tài)下首先檢測門的狀態(tài),根據(jù)接收到檢測器的信號判斷自動門上次停機所處的位置。在根據(jù)紅外探測器所接收到的信號,判斷是否有人,是否進入開門狀態(tài)。在開門過程中門限位檢測開關,檢測門的位置,到達預定位置,停止開門。在紅外檢測開關檢測到?jīng)]有人時進入關門程序,在關門過程中,紅外傳感器繼續(xù)檢測是否有人,有人則停止關門,進入開門程序,無人則繼續(xù)關門,同時障礙檢測器在關門過程中檢測是否有障礙無,若檢測到有障礙物,停止關門、報警,直到障礙物消失。若無障礙物繼續(xù)關門,直到右側限位開關檢測到門處于預定位置,停止關門。等待下次紅外檢測器檢測到有人在次循環(huán)。流程圖如圖3.1所示。
3.1系統(tǒng)流程圖
3.3關門/開門子函數(shù)
uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};//順時針方向轉動編碼
uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};//逆時針方向轉動編碼
//順時鐘轉動子函數(shù)
void motor_ffw()
{
uchar i;
for (i=0; i<8; i++)
{
P0=FFW[i];
delay(2);
}
}
///逆時針轉動子函數(shù)
void motor_rev()
{
uchar j;
for (j=0; j<8; j++)
{
P0=REV[j];
delay(2);
}
}
利用用C語言談的For循環(huán)程序,使步進電機在合適的時機進行正確的正反轉。單片機需要開門或者關門自行調(diào)動相關程序,使自動門能夠正確的工作。是設計的主要程序,如果沒有這個程序,單片機無法使電動機轉動。
3.4報警子函數(shù)
void alarm1() //報警子函數(shù)
{
uchar i;
for(i=0;i<200;i++)
{
alarm= ~alarm;//報警
delay(20);
}
alarm=1;//報警完關閉
}
此程序是蜂鳴器啟動程序,在i在小于200時,輸出高低電平脈沖。利用延時程序使脈沖的頻率進行降低,蜂鳴器發(fā)出的聲音頻率降低,延長蜂鳴器的使用壽命。
3.5自動模式子程序
//****************自動模式************************************//
if(ZD==0)//如果自動模式按鍵按下
{
LS=1; //手動模式指示燈滅
for(t=0;t<50;t++) //自動模式燈閃爍約5秒鐘
{
LZ=~LZ;
delay(200);
}
delay(5);
zdms=0; //自動模式標志置零,進入自動模式
sdms=1; //手動模式標志置1,退出手動模式
LZ=0; //自動模式指示燈亮
}
//-------------向右邊平移開門(步進機順時針轉動)-------------------------------//
if((zdms==0)&&(zt3==1)&&(hw_temp==1))//同時被擋住
{
motor_ffw();//調(diào)用順時針轉動子函數(shù)
}
if((zdms==0)&&(zt1==1)&&(hw_temp==1))//右邊被擋住
{
motor_ffw();//調(diào)用順時針轉動子函數(shù)
}
//-------------向左平移關門(步進機逆時針轉動)-------------------------------//
if((bz_temp==1)&&(zdms==0)&&(zt3==0)&&(hw_temp==0))//同時沒有被擋住
{
motor_rev();//調(diào)用逆時針轉動子函數(shù)
}
if((bz_temp==1)&&(zdms==0)&&(zt2==0)&&(hw_temp==0))//左邊沒被擋住
{
motor_rev();//調(diào)用逆時針轉動子函數(shù)
}
自動模式下開門:需要同時滿足以下3個條件。
(1) zdms==0:自動模式按鈕按下。
(2) zt3==1:門行程檢測按鈕感應到門沒有打開,處于關閉或半開啟狀態(tài)。
(3) hw_temp==1:任意一個人體紅外感應器感應到人。
滿足3個條件后,調(diào)動電動機順時針轉動程序,步進電機轉動使門打開。直到門達到預定狀態(tài),步進電機停止轉動。
自動模式下關門:需要同時滿足以下4個條件。
(1) bz_temp==1:障礙檢測器未感應到有障礙物。
(2) zdms==0:自動模式按鈕按下。
(3) zt3==0:門行程檢測按鈕感應到門處于打開狀態(tài)。
(4) hw_temp==0:所有紅外人體感應器感應不到到人體紅外。
3.6障礙物檢測程序
//************如果檢測到障礙物,馬上停止轉動,進入制動報警狀態(tài)
if((bz_temp==0)&&(K2==0)&&(sdms==0))
{
P0=0x00;//步進電機停止轉動
alarm1();
}
if((bz_temp==0)&&(zdms==0)&&(hw_temp==0))
{
P0=0x00;//步進電機停止轉動
alarm1();
}
障礙檢測程序的調(diào)用無論是自動模式還是手動模式,只要滿足關門時障礙檢測器檢測到有人,馬上停止電動機的轉動。進入報警模式,蜂鳴器響起。
3.7電路圖與PCB板的設計
在Altiun上畫出電路的原理圖,并據(jù)此繪制出PCB板的接線圖。在繪制PCB板接線圖時根據(jù)元器件的大小,本著結構緊湊,布局合理,減少跳線的原則圍進行布局排版。原理圖如圖3.2所示,PCB接線圖如圖3.3所示。
3.2原理圖
圖3.3PCB接線
第四章 系統(tǒng)的仿真與調(diào)試
4.1系統(tǒng)仿真
在首先是進行系統(tǒng)仿真。此次仿真利用Proteus軟件,,它的功能很強大,能夠仿真單片機及其外圍電路,并且能將所設計的程序導入到單片機內(nèi)。仿真的目的是排除明顯的硬件故障和軟件問題,檢測硬件軟件是否兼容,能否實現(xiàn)所預設的功能。根據(jù)之前所設計的原理圖和系統(tǒng)程序,并使用原來學過的仿真軟件繪畫仿真圖,測試整體設計。
4.2軟件的調(diào)試
在設計中所用 程序并不是直接燒錄進單片機,而是在進行過各種調(diào)試仿真后,把沒有錯誤,能夠完美實現(xiàn)設計要求的程序燒錄至單片機,使單片機能夠協(xié)調(diào)指揮各個硬件,達到設計的目標。
本次程序調(diào)試使用的是Keil uVision4編碼器進行調(diào)試,在是用Keil uVision4編碼器時,對工程成功的進行編譯后、連接以后,在“主菜單”中打開“調(diào)試”欄,點金“開始/停止調(diào)試”即可進入軟件仿真調(diào)試狀態(tài)。此過程可以檢查程序中存在的錯誤。以便于修改程序。在KeiluVision4軟件調(diào)試過程中可以進行單步調(diào)試,這一步可以使用戶清晰的看到程序執(zhí)行到哪一步,錯誤出現(xiàn)在哪里,減少檢查錯誤的時間,減少工作強度。在檢查程序的過程中,不出現(xiàn)邏輯錯誤,并不代表程序完全沒有錯誤。可以設置端口和斷點,并查看標志位和個寄存器的狀態(tài)。如果出現(xiàn)邏輯錯誤,更正邏輯錯誤,直到程序上完全沒有錯誤。軟件調(diào)試結果如圖4.1所示。
圖4-1程序調(diào)試結果
4.3硬件的調(diào)試
在單片機的焊接過程中繞單片機為中心,從簡單,線路少的元器件開始進行焊接,焊接結束后再進行下一步的調(diào)試。
仔細檢查電路板是否有元器件方向反向、虛焊、漏焊、斷線等現(xiàn)象。檢查完畢后,進行通電檢查電路板是否有異常,一般是檢查是否有因線路接錯而產(chǎn)生短路而引起的電路異常發(fā)熱,發(fā)熱溫度過高有可能使電路板燒毀。如出現(xiàn)此現(xiàn)象,要立即關閉電源,用萬用表檢查電路板,排除故障后,再次對電路板進行功能調(diào)試,直到電路板達到完整運行使用的狀態(tài)。
實物檢測手動模式:按下手動模式開關,手動模式指示燈亮起,按下開門按鈕,步進電機順時針轉動帶動自動門開啟,直到左側限位開關檢測不到門,步進電機停止轉動。按下關門按鈕,步進電機逆時針轉動帶動門關閉,直到右側限位開關檢測到門。