A. 單片機畢業設計,基於51單片機的電梯控制系統的設計
基於51單片機的電梯控制系統的設計
引 言
隨著現代高科技的發展,住房和辦公用樓都已經逐漸向高層發展。電梯是高層賓館、商店、住宅、多層倉庫等高層建築不可缺少的垂直方向的交通運輸工具。1889年美國奧梯斯升降機公司推出的世界上第一部以電動機為動力的升降機,同年在紐約市馬累特大廈安裝成功。隨著建築物規模越來越大,樓層也越來越高,對電梯的調速精度、調速范圍等靜態和動態特性都提出了更高的要求。由於傳統的電梯運行邏輯控制系統採用的是繼電器邏輯控制線路。採用這種控制線路,存在易出故障、維護不便、運行壽命較短、佔用空間大等缺點。從技術發展來看,這種系統將逐漸被淘汰。
目前,由可編程控制器(PLC)或微型計算機組成的電梯運行邏輯控制系統,正以很快的速度發展著。可編程式控制制器,是微機技術與繼電器常規控制技術相結合的產物,是在順序控制器和微機控制器的基礎上發展起來的新型控制器,是一種以微處理器為核心用作數字控制的專用計算機,它有良好的抗干擾性能,適應很多工業控制現場的惡劣環境,所以現在的電梯控制系統主要還是由可編程式控制制器控制。但是由於PLC的針對性較強,每一台PLC都是根據一個設備而設計的,所以價格較昂貴。而單片機價格相當便宜,如果在抗干擾功能上有所提高的話完全可以代替PLC實現對工控設備的控制。當然單片機並不象PLC那麼有針對性,所以由單片機設計的控制系統可以隨著設備的更新而不斷修改完善,更完美的實現設備的升級。
電梯控制系統是比較復雜的一個大型系統,在計算機誕生的幾十年裡,繼電器控制系統為電梯控制的發展做了巨大的貢獻,但在性能上和PLC還是有本質上的差距。在科技的不斷發展下,我想單片機控制系統很快可以解決抗擾性,成為方便有效的電梯控制系統。
由於時間和能力有限,在設計過程中難免有很多疏漏和不足之處,懇請老師批評指正,我將努力改正,爭取做出完美的畢業設計。
目錄
目錄 1
引 言 2
第1章 緒 論 3
1.1 電梯的發展 3
1.2電梯的分類 4
第2章 方案的比較和確定 6
2.1 方案的選擇 6
2.1.1 電梯繼電器控制系統的優缺點 6
2.1.2 PLC控制系統的特點 6
2.1.3 電梯變頻調速控制的特點 7
2.2 單片機控制方案的選擇 7
2.3 變頻器的選型 8
第3章 硬體系統的設計 10
3.1 硬體結構圖 10
3.2 系統硬體原理圖 10
3.3 89C51單片機的原理及其外圍電路的設計 10
3.3.1 89C51單片機的原理與結構 10
3.3.2 單片機外圍電路的設計 14
3.4 輸入模塊的設計 18
3.4.1 鎖存器74LS373及其擴展功能簡介 20
3.4.2 光電感測器 20
3.4.3 KC778B紅外感測器基本應用電路 21
3.4.4 輸入信號的採集 22
3.5 輸出模塊設計 24
3.5.1 DAC0832的功能簡介 25
3.5.2 變頻器功能簡介 26
3.5.3 LED驅動器功能簡介 29
3.5.4 控制信號的輸出 32
第4章 系統軟體的設計 34
4.1 主程序流程圖 34
4.2 讀入信息並顯示子程序的流程圖 37
4.3 延時去抖動子程序 37
4.4 設置目標層子程序流程圖 38
4.5 電機拖動子程序流程圖 39
4.6 電梯載客子程序流程圖 40
4.7 中斷服務流程圖 41
小結與展望 42
致謝 43
參考文獻 44
附錄部分: 45
附錄A 電氣原理圖 45
附錄B 外文文獻及其譯文 46
附錄C 主要參考文獻及其摘要 50
B. 求設計一個模擬電梯的PLC或者單片機原理圖
是程序模擬還是實物模擬運行?
這個問題需要落實,因為如果是實物模擬運行就有兩個行程開關,分別對應門開和門關的狀態。
有沒有行程開關,程序是不一樣的,你先把這個問題落實,我好寫程序。
現在先給你寫了一個程序模擬的程序。
採用的是西門子LOGO,一般的型號就可以用了,市面上大概幾百塊錢,很便宜。
控制採用3個輸入點,都是按鈕。輸出點2個,一個開一個關。
實驗時,為了更好觀察開關轉換,轉換時間為5秒。
運行流程:
按鈕1觸發,開門→延時→關門→延時→開門。
按鈕2(停止)觸發時,動作停止,計數器不復位,觸發按鈕1後動作繼續,計數器繼續計數
按鈕3(復位)觸發時,計數器所計的書清零。動作不受影響。
計數器一個可以計數999999次,如果用兩個,可以計數達到999999X999999,應該足夠你用了。
你先看看是不是適合你的項目,如果還有什麼問題的話,請提出來,我看我能不能給你解決。我的郵箱是[email protected]
C. 單片機LED點陣模仿電梯樓層數字流動顯示c語言程序及電路圖
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit d1=P3^2;
sbit wr=P2^5;
uchar code table1[]={
0x01,0x02,0x04,0x08,
0x10,0x20,0x40,0x80
};
uchar code table2[]={
0xc3,0xdf,0xc3,0xfb,0xc3
};
uchar code table3[]={
0xef,0xef,0xef,
0xef,0xef,0xef
};
void delay(uint z);
uchar tt,num,numm;
void main()
{
tt=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1; while(1)
{
for(num=1,numm=0;num<6;num++,numm++)
{
P0=table1[num];
P1=table3[numm];
delay(2);
}
P0=0x00;
delay(500);
for(num=1,numm=0;numm<5;numm++,num++)
{
P0=table1[num];
P1=table2[numm];
delay(2);
}
P0=0x00;
delay(500);
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=200;y>0;y--);
}
void time0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
tt++;
}
D. 小弟要做電梯模擬設計,下面代碼不懂,求高手幫翻譯每一行是代碼是什麼意思。(我把金幣都給你,重謝!)
實現的功能:此單片機模擬電梯用綠色發光二極體組成的箭頭來指示電梯當前是處於上升狀態還是下降狀態,用數碼管顯示當前是處於哪一層,用紅色發光二極體指示電梯走到哪一層會停.電源接通後,若沒有人按下停止按鍵,它就以每層2秒的速度一直上下運行,若有人按下某一層的停止按鍵,它就會在相應的那一層停止4秒鍾,並伴有開門和關門的聲音提示。
程序初始化1.
tcount航天4ch
航天4dh曾
0000h丙
ljmp開始
000bh丙
ljmp int0x
0030h丙
;;;;;;;;;;;;初始化;;;;;;;;;;;;;;;;;
啟動:mov tmod,# 1小時
mov th0,# 3針
mov tl0,# 0 B0H;50毫秒
mov ie,#小時
setb tr0
mov tcount,4號
CLR F0
mov 20h,# 0
mov r0、# 30小時
mov r1,# 30
清:mov @r0,# 00 H
公司r0
djnz r1、清;把30H到4DH這30個單元清0
並打動,# 6小時
mov p3,# 0 F8H
2主程序調用
小熏:簡森-巴頓p1.0,一
lcall ys10ms
簡森-巴頓p1.0,一個,判斷一層的停止按鍵是否按下
clr p2.0;若按下則把對應的紅色發光二極體點亮
一:簡森-巴頓p1.1,兩個
lcall ys10ms
簡森-巴頓p1.1,兩個,判斷二層的停止按鍵是否按下
clr p2.1;若按下則把對應的紅色發光二極體點亮
二:簡森-巴頓p1.2、射孔
lcall ys10ms
簡森-巴頓p1.2、射孔
clr p2.2
各段:簡森-巴頓p1.3,精打細算
lcall ys10ms
簡森-巴頓p1.3,精打細算,
clr p2.3
台北縣:簡森-巴頓p1.4,FIV的貓咪
lcall ys10ms
簡森-巴頓p1.4,FIV的貓咪
clr p2.4
FIV的貓咪:簡森-巴頓p1.5、共六人
lcall ys10ms
簡森-巴頓p1.5、六
clr p2.5
六:簡森-巴頓p1.6,SEV
lcall ys10ms
簡森-巴頓p1.6,SEV
clr p2.6
SEV:簡森-巴頓p1.7、訓
lcall ys10ms
簡森-巴頓p1.7、訓
clr p2.7
ljmp魯迅
中斷程序調用3.
INT0X:mov th0,# 3針
mov tl0,# 0 B0H
公司tcount
mov,TCOUNT
cjne,5 #,ZHUAN2;50毫秒= 250 * 5女士
mov tcount,# 00 H
簡森-巴頓f0,《左傳》
ljmp zhuan1
《左傳》:ljmp蝦醬
ZHUAN1:mov p3,# 0 F8H;上升的箭頭
mov,蹭
cjne,# 00 H、社裡
並打動,# 06 h,顯示
簡森-巴頓p2.0,SS1_1
公司30h
mov,30小時
cjne,# 1、SSX1_1
clr p3.4;一層門開的聲音開
SSX1_1:cjne,2號,SSX1_2
setb p3.4;一層門開的聲音關
SSX1_2:cjne,# 16,SSX1_3
clr p3.4;一層門關的聲音開
SSX1_3:cjne,17號,ZHUAN2;16 * 250毫秒= 4 S(總共次,但實際在這里停止的時間只有次MS)
mov 30h,# 0
setb p3.4;一層門關的聲音關
setb p2.0;熄滅對應的紅色發光二極體
SS1_1:公司31h
mov,31 H
cjne,# 9,ZHUAN2;8 * 250毫秒= 2秒(總共次,但實際上升一層只用次MS)
mov 31h,# 0
公司曾
社裡:mov,蹭
cjne,# 1小時,SS3
並打動,5 # BH,顯示
簡森-巴頓p2.1,SS2_1
公司32h
mov一個32小時
cjne,# 1、SSX2_1
clr p3.4;二層門開的聲音開
SSX2_1:cjne,2號,SSX2_2
setb p3.4;二層門開的聲音關
SSX2_2:cjne,# 16,SSX2_3
clr p3.4;二層門關的聲音開
SSX2_3:cjne,17號,ZHUAN2;16 * 250毫秒= 4 S(總共次,但實際在這里停止的時間只有次MS)
mov 32h,# 0
setb p3.4;二層門關的聲音關
setb p2.1;熄滅對應的紅色發光二極體
SS2_1:公司33h
mov,33 H
cjne,# 9,ZHUAN2;8 * 250毫秒= 2秒,但實際上升一層只用次MS(總共次嗎?
mov 33h,# 0
ljmp zhuan3
E. 求用STC89C52單片機的電梯控製程序
基於STC89C52單片機電梯設計.doc
文檔名稱:基於STC89C52單片機電梯設計.doc
格式:doc 大小:0.01MB 總頁數:7
展開↓
更多功能
免費預覽本文檔(全文)
下載敬告:
本站不保證該用戶上傳的文檔完整性,不預覽、不比對內容而直接下載產生的反悔問題本站不予受理。如果您已付費下載過本站文檔,您可以點這里二次下載 收起↑
文檔介紹:
基於STC89C52單片機電梯設計 摘 要:隨著人們生活水平的不斷提高和現代科技的猛速發展,高層建築已成為一種用於居住、辦公的主流建築設計。為了更好地提高人們生活和工作的效率,電梯成為生活中不可或缺的垂直代步工具。為了讓電梯在運行過程中實時、有效地實現方向優先、距離優先選擇,本文提出了基於STC89C52單片機的電梯設計。
本文以STC89C52單片機作為背景機通過驅動外圍電路實現電梯垂直運行,該系統主要由硬體和?件兩大部分組成。其中,硬體部分主要由主控晶元、顯示模塊、按鍵模塊、鈴聲提示模塊4大部分組成。主控模塊由STC89C52作為背景機完成驅動外圍電路進行信息處理和控制的功能,顯示模塊負責實時的顯示電梯的升降狀態以及電梯所到樓層數,按鍵電路主要負責完成電梯的外呼內選將樓層到達信號傳輸給單片機,鈴聲提示模塊一方面報警提示乘客到達了所需的樓層,另一方面完成出現緊急停止時的報警提示。
F. 基於51單片機的四層電梯c語言獨立按鍵的四層電梯模擬
4層電梯,按鍵和感測器的基本設置:
1、電梯內部至少6個按鍵,4個樓層加兩個門的控制,定義為:4層樓 PB1,PB2,PB3,PB4,門開,門關,PB5,PB6.
2、樓梯外部每層基本2個按鍵:1層:上PC1,2層上PC2,下PC3,3層上PC4,下PC5.4層,下PC6.對應4和1層最少使用一個就能完成乘坐的基本要求。
3、電梯位置,每層一個,PA1,PB2,PB3,PB4。
4、電梯狀態,停止PD1,向上運動PD2,向下運動PD3. 門打開PD4,門閉合PD5.
5、電梯控制輸出,向上運動DE1,向下運動DE2,停止運動DE3,開門DE4,關門DE5.
6、另外一些指示燈的輸出,最簡單的指示每個按鍵上一個,內外部顯示一個LED點陣指示,
做練習就是編寫按鍵掃描和控制輸出,LED顯示,基本的程序控制,硬體模型就是指示燈和按鍵。
真的做項目,那是兩碼事,一般電梯控制用PLC控制可以直接連接跟電機控制器連接,應用單機也就做個項目中的LED顯示,為了安全軟體和硬體都要加沉余設計。為了好看清晰可以增加更多的顯示和指示。
G. 怎麼用單片機實現電梯控制系統
隨著社會經濟建設的發展,人們生活水平的提高,電梯產品需求的數量化、個性化和多樣化也提到議事日程上來了。電梯是現代建築物的組成部分,在現代化的生活和工作當中人們已經離不開電梯了,而且對電梯的需求量也在不斷的增長,我國已經成為全球最大的電梯市場。為了掌握好現在電梯的發展方向,了解電梯技術的發展,也為了讓所學專業知識得到綜合應用,筆者經過多方查閱資料,制定了一套自己的電梯控制模型系統設計方案。
H. 怎麼用單片機實現電梯控制系統
:我們知道,一個電路總是由元器件通過電線連接而成的,在模擬電路中,連線並不成為一個問題,因為各器件間一般是串列關系,各器件之間的連線並不很多,但計算機電路卻不一樣,它是以微處理器為核心,各器件都要與微處理器相連,各器件之間的工作必須相互協調,所以就需要的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨連線,則線的數量將多得驚人,所以在微處理機中引入了匯流排的概念,各個器件共同享用連線,所有器件的8根數據線全部接到8根公用的線上,即相當於各個器件並聯起來,但僅這樣還不行,如果有兩個器件同時送出數據,一個為0,一個為1,那麼,接收方接收到的究竟是什麼呢?這種情況是不允許的,所以要通過控制線進行控制,使器件分時工作,任何時候只能有一個器件發送數據(可以有多個器件同時接收)。器件的數據線也就被稱為數據匯流排,器件所有的控制線被稱為控制匯流排。在單片機內部或者外部存儲器及其它器件中有存儲單元,這些存儲單元要被分配地址,才能使用,分配地址當然也是以電信號的形式給出的,由於存儲單元比較多,所以,用於地址分配的線也較多,這些線被稱為地址匯流排。
二、數據、地址、指令:之所以將這三者放在一起,是因為這三者的本質都是一樣的——數字,或者說都是一串『0』和『1』組成的序列。換言之,地址、指令也都是數據。指令:由單片機晶元的設計者規定的一種數字,它與我們常用的指令助記符有著嚴格的一一對應關系,不可以由單片機的開發者更改。地址:是尋找單片機內部、外部的存儲單元、輸入輸出口的依據,內部單元的地址值已由晶元設計者規定好,不可更改,外部的單元可以由單片機開發者自行決定,但有一些地址單元是一定要有的(詳見程序的執行過程)。數據:這是由微處理機處理的對象,在各種不同的應用電路中各不相同,一般而言,被處理的數據可能有這么幾種情況:
1�6�1地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。
2�6�1方式字或控制字(如MOV TMOD,#3),3即是控制字。
3�6�1常數(如MOV TH0,#10H)10H即定時常數。
4�6�1實際輸出值(如P1口接彩燈,要燈全亮,則執行指令:MOV P1,#0FFH,要燈全暗,則執行指令:MOV P1,#00H)這里0FFH和00H都是實際輸出值。又如用於LED的字形碼,也是實際輸出的值。
理解了地址、指令的本質,就不難理解程序運行過程中為什麼會跑飛,會把數據當成指令來執行了。
三、P0口、P2口和P3的第二功能用法:初學時往往對P0口、P2口和P3口的第二功能用法迷惑不解,認為第二功能和原功能之間要有一個切換的過程,或者說要有一條指令,事實上,各埠的第二功能完全是自動的,不需要用指令來轉換。如P3.6、P3.7分別是WR、RD信號,當微片理機外接RAM或有外部I/O口時,它們被用作第二功能,不能作為通用I/O口使用,只要一微處理機一執行到MOVX指令,就會有相應的信號從P3.6或P3.7送出,不需要事先用指令說明。事實上『不能作為通用I/O口使用』也並不是『不能』而是(使用者)『不會』將其作為通用I/O口使用。你完全可以在指令中按排一條SETB P3.7的指令,並且當單片機執行到這條指令時,也會使P3.7變為高電平,但使用者不會這么去做,因為這通常這會導致系統的崩潰。
四、程序的執行過程: 單片機在通電復位後8051內的程序計數器(PC)中的值為『0000』,所以程序總是從『0000』單元開始執行,也就是說:在系統的ROM中一定要存在『0000』這個單元,並且在『0000』單元中存放的一定是一條指令。
五、堆棧: 堆棧是一個區域,是用來存放數據的,這個區域本身沒有任何特殊之處,就是內部RAM的一部份,特殊的是它存放和取用數據的方式,即所謂的『先進後出,後進先出』,並且堆棧有特殊的數據傳輸指令,即『PUSH』和『POP』,有一個特殊的專為其服務的單元,即堆棧指針SP,每當執一次PUSH指令時,SP就(在原來值的基礎上)自動加1,每當執行一次POP指令,SP就(在原來值的基礎上)自動減1。由於SP中的值可以用指令加以改變,所以只要在程序開始階段更改了SP的值,就可以把堆棧設置在規定的內存單元中,如在程序開始時,用一條MOV SP,#5FH指令,就時把堆棧設置在從內存單元60H開始的單元中。一般程序的開頭總有這么一條設置堆棧指針的指令,因為開機時,SP的初始值為07H,這樣就使堆棧從08H單元開始往後,而08H到1FH這個區域正是8031的第二、三、四工作寄存器區,經常要被使用,這會造成數據的渾亂。不同作者編寫程序時,初始化堆棧指令也不完全相同,這是作者的習慣問題。當設置好堆棧區後,並不意味著該區域成為一種專用內存,它還是可以象普通內存區域一樣使用,只是一般情況下編程者不會把它當成普通內存用了。
六、單片機的開發過程: 這里所說的開發過程並不是一般書中所說的從任務分析開始,我們假設已設計並製作好硬體,下面就是編寫軟體的工作。在編寫軟體之前,首先要確定一些常數、地址,事實上這些常數、地址在設計階段已被直接或間接地確定下來了。如當某器件的連線設計好後,其地址也就被確定了,當器件的功能被確定下來後,其控制字也就被確定了。然後用文本編輯器(如EDIT、CCED等)編寫軟體,編寫好後,用編譯器對源程序文件編譯,查錯,直到沒有語法錯誤,除了極簡單的程序外,一般應用模擬機對軟體進行調試,直到程序運行正確為止。運行正確後,就可以寫片(將程序固化在EPROM中)。在源程序被編譯後,生成了擴展名為HEX的目標文件,一般編程器能夠識別這種格式的文件,只要將此文件調入即可寫片。在此,為使大家對整個過程有個認識,舉一例說明:
ORG 0000H
LJMP START
ORG 040H
START:
MOV SP,#5FH ;設堆棧
LOOP:
NOP
LJMP LOOP ;循環
END ;結束