版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、誠信承諾書本人鄭重承諾和聲明:我承諾在畢業(yè)論文撰寫過程中遵守學(xué)校有關(guān)規(guī)定,恪守學(xué)術(shù)規(guī)范,此畢業(yè)設(shè)計(jì)中均系本人在指導(dǎo)教師指導(dǎo)下獨(dú)立完成,沒有剽竊、抄襲他人的學(xué)術(shù)觀點(diǎn)、思想和成果,沒有篡改研究數(shù)據(jù),凡涉及其他作者的觀點(diǎn)和材料,均作了注釋,如有違規(guī)行為發(fā)生,我愿意承擔(dān)一切責(zé)任,接受學(xué)校的處理,并且承擔(dān)相應(yīng)的法律責(zé)任。畢業(yè)設(shè)計(jì)作者簽名:年 月 日摘 要電梯是現(xiàn)代生活中重要的交通運(yùn)輸工具,是集自動(dòng)控制原理、機(jī)械原理應(yīng)用、電氣控制技術(shù)、微處理器技術(shù)、系統(tǒng)工程學(xué)等多學(xué)科和技術(shù)分支于一體的機(jī)電設(shè)備。本設(shè)計(jì)選用STC89C52單片機(jī)為核心控制元件,設(shè)計(jì)一個(gè)三層電梯控制系統(tǒng),使用C語言進(jìn)行編程,實(shí)現(xiàn)運(yùn)送乘客到任意
2、樓層,顯示電梯當(dāng)前樓層及上下行等基本功能。利用單片機(jī)設(shè)計(jì)電梯控制系統(tǒng),具有通用性強(qiáng),靈活性大、成本低及易于實(shí)現(xiàn)復(fù)雜控制等優(yōu)點(diǎn)。由于其系統(tǒng)實(shí)現(xiàn)的功能簡(jiǎn)單,因此具有一定的可擴(kuò)展性。關(guān)鍵詞:電梯、STC89C52、控制系統(tǒng)ABSTRACTElevator is a important transport of daily life, that application of the principleset machinery, electrical conrtl technology,microprocessortechnology,systems engineering an other tech
3、nical disiplines and branches of the integration of mechanical and electrica equipment.This paper choices STC89C52 control of the core components, designed a new 3 storey lift systems, using C language programming, transporting passengers arrived a floor, it also shows the elevator floor and downlin
4、k SCM contrors elevator low cost, versatility and flexibility and ease of large complex control advantages. Because ofthe function of the system is simple, so it has certain scalality.Keywords: Elevator、STC89C52、controller system目 錄第一章 緒 論11.1 課題研究的意義及目的11.2 課題研究方向11.3 總體設(shè)計(jì)要求及設(shè)計(jì)方案2第二章 電梯的概述32.1 電梯的發(fā)
5、展史32.2 電梯的發(fā)展方向3第三章 硬件設(shè)計(jì)43.1 系統(tǒng)方案分析43.2 硬件系統(tǒng)5單片機(jī)最小系統(tǒng)5STC89C52單片機(jī)5時(shí)鐘電路6復(fù)位電路6顯示模塊7按鍵模塊8電機(jī)模塊8第四章 軟件設(shè)計(jì)94.1 軟硬件開發(fā)環(huán)境94.1.1 STC89C52程序開發(fā)軟件keil94.1.2 proteus硬件仿真軟件94.2 程序設(shè)計(jì)思路104.3 程序流程圖104.4 程序設(shè)計(jì)124.4.1 端口初始化設(shè)計(jì)124.4.2 顯示模塊程序設(shè)計(jì)124.4.3 延時(shí)程序設(shè)計(jì)134.4.4 定時(shí)器程序設(shè)計(jì)134.4.5 主函數(shù)14第五章 系統(tǒng)調(diào)試175.1 軟件調(diào)試175.2 硬件調(diào)試17第六章 結(jié) 論18致
6、謝19參考文獻(xiàn)20附錄一 原理圖21附錄二 PCB圖22第一章 緒 論1.1 課題研究的意義及目的隨著城市化進(jìn)程的不斷加快,高層建筑已不知不覺地進(jìn)入了我們的生活中,然而電梯便成了這個(gè)時(shí)代的必需品。因?yàn)殡娞莸母咝?、方便、快捷,所以電梯受到了大家的熱烈歡迎。電梯已被應(yīng)用于賓館、飯店、辦公大樓、商場(chǎng)、娛樂場(chǎng)所、倉庫以及居民住宅大樓等。未來的社會(huì)發(fā)展趨勢(shì)是城鎮(zhèn)與城市漸漸融合,相互影響。電梯的應(yīng)用將會(huì)不斷拓展,款式將各種各樣,其目的就是為了滿足人們的多種多樣的需求。 隨著科技的不斷進(jìn)步,經(jīng)濟(jì)的深入發(fā)展,科技將引領(lǐng)電梯進(jìn)行質(zhì)的飛躍,電梯將越來越智能化,越來越安全穩(wěn)定。電梯將是現(xiàn)代人不可或缺的代步工具。本次
7、設(shè)計(jì)的目的是為了對(duì)四年來所學(xué)的專業(yè)知識(shí)做一個(gè)系統(tǒng)的貫穿,把所學(xué)知識(shí)應(yīng)用于實(shí)際當(dāng)中。掌握如何利用單片機(jī)控制LED動(dòng)態(tài)顯示及C語言程序?qū)τ布糠值目刂?。由可編程控制器(PLC)或微型計(jì)算機(jī)組成的電梯運(yùn)行邏輯控制系統(tǒng),正以很快的速度發(fā)展著??删幊炭刂破?,是微機(jī)技術(shù)與繼電器常規(guī)控制技術(shù)相結(jié)合的產(chǎn)物,是在順序控制器和微機(jī)控制器的基礎(chǔ)上發(fā)展起來的新型控制器,是一種以微處理器為核心用作數(shù)字控制的專用計(jì)算機(jī),它有良好的抗干擾性能,適應(yīng)很多工業(yè)控制現(xiàn)場(chǎng)的惡劣環(huán)境,所以現(xiàn)在的電梯控制系統(tǒng)主要還是由可編程控制器控制。但是由于PLC的針對(duì)性較強(qiáng),每一臺(tái)PLC都是根據(jù)一個(gè)設(shè)備而設(shè)計(jì)的,所以價(jià)格較昂貴。而單片機(jī)價(jià)格相當(dāng)便
8、宜,如果在抗干擾功能上有所提高的話完全可以代替PLC實(shí)現(xiàn)對(duì)工控設(shè)備的控制。當(dāng)然單片機(jī)并不象PLC那么有針對(duì)性,所以由單片機(jī)設(shè)計(jì)的控制系統(tǒng)可以隨著設(shè)備的更新而不斷修改完善,更完美的實(shí)現(xiàn)設(shè)備的升級(jí)。在科技的不斷發(fā)展下,單片機(jī)控制系統(tǒng)很快可以解決抗擾性,成為方便有效的電梯控制系統(tǒng)。1.2 課題研究方向早期的電梯系統(tǒng)一般是采用繼電器和PLC系統(tǒng)控制,由于PLC的針對(duì)性強(qiáng),所以對(duì)于設(shè)備的改進(jìn)和擴(kuò)充都比較困難,勢(shì)必造成資源的浪費(fèi),不符合可持續(xù)發(fā)展的時(shí)代潮流。所以本課題的研究將朝著資源可持續(xù)利用的方向進(jìn)行,單片機(jī)價(jià)格便宜并且運(yùn)用靈活,可以通過C語言編程對(duì)其控制,實(shí)現(xiàn)設(shè)備的改進(jìn)和擴(kuò)充,C語言編程簡(jiǎn)單,開發(fā)周期
9、短,使得設(shè)備更新?lián)Q代快,提供給人們更加方便舒適的生活,所以利用單片機(jī)實(shí)現(xiàn)對(duì)電梯設(shè)備的控制是本次課題研究的方向。本文主要研究?jī)?nèi)容有以下幾個(gè)方面:1、將電梯控制功能分為若干模塊,用不同控制器完成各部分特定的功能2、分析電梯運(yùn)行的特性,設(shè)計(jì)以STC89C52為核心控制器即電梯控制器。3、研究設(shè)計(jì)電梯實(shí)現(xiàn)的各種功能及軟件說明4、實(shí)現(xiàn)功能調(diào)試。1.3 總體設(shè)計(jì)要求及設(shè)計(jì)方案設(shè)計(jì)一個(gè)自動(dòng)電梯模擬升降控制系統(tǒng),通過乘客的自行按鍵達(dá)到電梯的升降功能。結(jié)合硬件與軟件對(duì)應(yīng)。端口P0.0-0.6用來控制LED燈的亮與滅,其中從低位到高位分別為一層燈,二層燈,三層燈(前述三個(gè)信號(hào)為電梯內(nèi)請(qǐng)求信號(hào),乘客在電梯內(nèi)部方可置
10、為有效),一層上燈,二層上燈,二層下燈,三層下燈(上述四個(gè)信號(hào)為電梯外部信號(hào),乘客在電梯外部方可置為有效)P2口與鍵盤對(duì)應(yīng)連接,數(shù)碼管采用串行輸入方式,鍵盤從低位到高位分別為一層按鍵,二層按鍵,三層按鍵,一層上升按鍵,二層上升按鍵,二層下降按鍵,三層下降按鍵.P1.0與數(shù)碼管的時(shí)鐘輸入端相連,P1.1與數(shù)碼管的串行口相連,用來顯示電梯的上升下降和當(dāng)前所在樓層,電梯門是否開啟三種狀態(tài)。電梯是根據(jù)外部呼叫信號(hào)(呼梯信號(hào))以及自身控制規(guī)律等運(yùn)行的,而呼叫是隨機(jī)的,電梯實(shí)際上是一個(gè)人機(jī)交互式的控制系統(tǒng),單純用順序控制或邏輯控制是不能滿足控制要求的,因此,大部分電梯控制系統(tǒng)都采用隨機(jī)邏輯方式控制。在目前
11、廣泛使用的電梯控制系統(tǒng)中,絕大多數(shù)為繼電器控制型,所有的邏輯及控制關(guān)系完全由諸多繼電器互相配合來完成,該控制系統(tǒng)的缺點(diǎn)是:(1)隨著樓層的增高,使用繼電器的數(shù)量越來越多,造價(jià)和體積也越來越大;(2)繼電器這種觸點(diǎn)式的電控元器件不宜長(zhǎng)時(shí)間頻繁工作,因而采用在電梯系統(tǒng)當(dāng)中常發(fā)生觸電表面燒結(jié)、控制失靈的故障。 因此我們?cè)O(shè)計(jì)一個(gè)3層自動(dòng)電梯模擬升降控制系統(tǒng),通過乘客的自行按鍵達(dá)到升降功能。采用單片機(jī)作為控制核心進(jìn)行仿真。 單片機(jī)不像PLC那么有針對(duì)性,利用單片機(jī)設(shè)計(jì)的控制系統(tǒng)可以隨著設(shè)備的更新而不斷修改完善,更完美的實(shí)現(xiàn)設(shè)備的升級(jí),減少元器件的浪費(fèi),實(shí)現(xiàn)綠色環(huán)保。并且單片機(jī)價(jià)格較低,大大減低成本,將更
12、能適應(yīng)可持續(xù)發(fā)展的大環(huán)境。本次設(shè)計(jì)是應(yīng)用STC89C52芯片進(jìn)行設(shè)計(jì)制作的模擬電梯控制系統(tǒng),通過乘客的按鍵達(dá)到對(duì)電梯升降的控制,并且模擬電梯的運(yùn)行狀態(tài)。在設(shè)計(jì)方案中,通過對(duì)各個(gè)P口的合理安排和統(tǒng)一協(xié)調(diào),通過按鍵、和LED數(shù)碼管來實(shí)現(xiàn)對(duì)設(shè)計(jì)方案的仿真演示。另外在實(shí)驗(yàn)程序中通過對(duì)不同按鍵鍵碼在功能上的分配,在按鍵按下之后使CPU做相應(yīng)的工作,即LED數(shù)碼管顯示與之相應(yīng)的樓層和使彩燈顯示相應(yīng)的電梯狀態(tài)。最后,結(jié)合PCB板的實(shí)際接線情況進(jìn)行編程。使實(shí)驗(yàn)順利完成。第二章 電梯的概述電梯是一種以電動(dòng)機(jī)為動(dòng)力的垂直升降機(jī),用于多層建筑乘人或載運(yùn)貨物。也有臺(tái)階式,踏步板裝在履帶上連續(xù)運(yùn)行,俗稱自動(dòng)扶梯或自動(dòng)人
13、行道。服務(wù)于規(guī)定樓層的固定式升降設(shè)備。2.1 電梯的發(fā)展史科技在發(fā)展,電梯也在進(jìn)步。電梯的材質(zhì)、樣式,功能都在發(fā)生著變化。一個(gè)半世紀(jì)的風(fēng)風(fēng)雨雨,翻天覆地的是歷史的變遷,永恒不變的是電梯提升人們生活質(zhì)量的承諾。100多年來,電梯的發(fā)展經(jīng)歷了幾個(gè)階段:1853年9月20日,在紐約的楊克斯先生在一家破產(chǎn)公司辦起了自己的車間,奧的斯電梯公司由此產(chǎn)生;1862年,奧的斯公司采用單獨(dú)蒸汽機(jī)控制的升降機(jī)問世;1902年,瑞士迅達(dá)電梯公司開發(fā)了自動(dòng)按鈕控制的乘客電梯;1076年,日本富士達(dá)公司開發(fā)了直流無齒輪拽引電梯;1985年,三菱電機(jī)公司研制出曲線運(yùn)行的螺旋形自動(dòng)扶梯,已成功投入生產(chǎn)2。2.2 電梯的發(fā)展
14、方向21世紀(jì)將會(huì)發(fā)展多用途,全功能的塔式建筑,超高速電梯繼續(xù)成為研究方向。除了拽引式電梯外,直線電動(dòng)機(jī)驅(qū)動(dòng)電梯也有較大研究空間。隨著計(jì)算機(jī)技術(shù),通訊技術(shù)與控制技術(shù)的發(fā)展使大廈的智能化成為現(xiàn)實(shí),而電梯是智能建筑中重要的交通工具。從電梯運(yùn)行的控制智能化角度講,要求電梯有優(yōu)質(zhì)的服務(wù)。未來電梯的發(fā)展方向:系統(tǒng)將更加智能化;電梯的運(yùn)行速度也會(huì)越來越高;藍(lán)牙技術(shù)是一種全球開放的,短距無線通訊技術(shù),也將應(yīng)用于電梯設(shè)備之中,把電梯的各種電子設(shè)備連接起來,無需縱橫交錯(cuò)的電纜線;綠色環(huán)保一直是全世界關(guān)注的問題,綠色電梯要求電梯成本低,污染小,噪聲低,壽命長(zhǎng),太陽能作為電梯的補(bǔ)充能源將是電梯的重要研究方向;科技不斷
15、在進(jìn)步,相信未來電梯設(shè)備將會(huì)更好的服務(wù)于人類。第三章 硬件設(shè)計(jì)3.1 系統(tǒng)方案分析設(shè)計(jì)一個(gè)自動(dòng)電梯模擬升降控制系統(tǒng)。本設(shè)計(jì)是應(yīng)用STC89C52芯片進(jìn)行設(shè)計(jì)制作的模擬電梯控制系統(tǒng),通過乘客的按鍵達(dá)到對(duì)電梯升降的控制,并且模擬電梯的運(yùn)行狀態(tài)。在實(shí)驗(yàn)程序中通過對(duì)不同按鍵鍵碼在功能上的分配,在按鍵按下之后使CPU做相應(yīng)的工作,即LED數(shù)碼管顯示與之相應(yīng)的樓層和使彩燈顯示相應(yīng)的電梯狀態(tài)。最后,結(jié)合PCB板的實(shí)際接線情況進(jìn)行編程。使實(shí)驗(yàn)順利完成。根據(jù)電梯控制的要求,可將本系統(tǒng)分為三個(gè)模塊,第一模塊是控制模塊,主要負(fù)責(zé)整個(gè)系統(tǒng)的控制,從而使各模塊正常工作,第二個(gè)模塊式LED和數(shù)碼管顯示模塊;第三是電源模塊
16、,給各模塊提供電源,讓各模塊工作;第四是電機(jī)模塊,正反轉(zhuǎn)控制電梯的上下。其系統(tǒng)功能設(shè)計(jì)結(jié)構(gòu)如圖:上電復(fù)位電路STC89C52LED顯示模塊和數(shù)碼管顯示數(shù)據(jù)信號(hào)振蕩電路電機(jī)模塊按鍵模塊圖3.1 總體功能結(jié)構(gòu)框圖本系統(tǒng)采用一個(gè)STC89C52芯片,一個(gè)由64個(gè)發(fā)光二極管組成的8*8點(diǎn)陣,一個(gè)102排阻,兩個(gè)30pf電容和一個(gè)10uf電容,一個(gè)10k電阻,一個(gè)12mHz晶體振蕩器,一個(gè)自鎖開關(guān)和4個(gè)按鍵,用紅色發(fā)光二極管組成的箭頭和數(shù)字來顯示當(dāng)前電梯處于上升狀態(tài)還是下降狀態(tài)及當(dāng)前所處的樓層。根據(jù)系統(tǒng)的原理框圖,分別分析各部分電路的元器件的功能以及選擇合適的元件。具體設(shè)計(jì)思路如下:收集并整理資料,硬件
17、設(shè)計(jì),軟件設(shè)計(jì),Proteus仿真,做出實(shí)物,設(shè)計(jì)體會(huì)與總結(jié)。3.2 硬件系統(tǒng)單片機(jī)最小系統(tǒng)STC89C52單片機(jī)Protues下的STC89C52引腳圖:圖3.2 STC89C52引腳圖引腳說明: 電源引腳 Vcc(40腳):典型值5V。 Vss(20腳):接低電平。 外部晶振 X1、X2分別與晶體兩端相連接。當(dāng)采用外部時(shí)鐘信號(hào)時(shí),X2接振蕩信號(hào),X1接地 輸入輸出口引腳: P0口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。 P1口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。 P2口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。 P3口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”
18、。 控制引腳: RST/Vpd、ALE/-PROG、-PSEN、-EA/Vpp組成了MSC-51的控制總線。 RST/Vpd(9腳):復(fù)位信號(hào)輸入端(高電平有效)。 第二功能:加+5V備用電源,可以實(shí)現(xiàn)掉電保護(hù)RAM信息不丟失。 ALE/-PROG(30腳):地址鎖存信號(hào)輸出端。 第二功能:編程脈沖輸入。 -PSEN(29腳):外部程序存儲(chǔ)器讀選通信號(hào)。 -EA/Vpp(31腳):外部程序存儲(chǔ)器使能端。時(shí)鐘電路圖3.3時(shí)鐘電路(晶振)XTAL1是片內(nèi)振蕩器的反相放大器輸入端,XTAL2則是輸出端,使用外部振蕩器時(shí),外部振蕩信號(hào)應(yīng)直接加到XTAL1,而XTAL2懸空。內(nèi)部方式時(shí),時(shí)鐘發(fā)生器對(duì)振蕩
19、脈沖二分頻,如晶振為12MHz,時(shí)鐘頻率就為6MHz。晶振的頻率可以在1MHz-24MHz內(nèi)選擇。電容取30PF左右。系統(tǒng)的時(shí)鐘電路設(shè)計(jì)是采用的內(nèi)部方式,即利用芯片內(nèi)部的振蕩電路。AT89單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器。引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外晶體諧振器一起構(gòu)成一個(gè)自激振蕩器。外接晶體諧振器以及電容C1和C2構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。對(duì)外接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會(huì)影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為12MHz,電容應(yīng)
20、盡可能的選擇陶瓷電容,電容值約為22F。在焊接刷電路板時(shí),晶體振蕩器和電容應(yīng)盡可能安裝得與單片機(jī)芯片靠近,以減少寄生電容,更好地保證震蕩器穩(wěn)定和可靠地工作。復(fù)位電路在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期(24個(gè)振蕩周期)以上的高電平出現(xiàn)在此引腿時(shí),將使單片機(jī)復(fù)位,只要這個(gè)腳保持高電平,51芯片便循環(huán)復(fù)位。復(fù)位后P0P3口均置1引腳表現(xiàn)為高電平,程序計(jì)數(shù)器和特殊功能寄存器SFR全部清零。當(dāng)復(fù)位腳由高電平變?yōu)榈碗娖綍r(shí),芯片為ROM的00H處開始運(yùn)行程序。復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。片內(nèi)復(fù)位電路是復(fù)位引腳RST通過一個(gè)斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來抑制噪聲,它的輸出在每個(gè)機(jī)器周期的S5P2
21、,由復(fù)位電路采樣一次。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式,此電路系統(tǒng)采用的是上電與按鈕復(fù)位電路。當(dāng)時(shí)鐘頻率選用6MHz時(shí),C取22F,Rs約為200,Rk約為1K。復(fù)位操作不會(huì)對(duì)內(nèi)部RAM有所影響。本設(shè)計(jì)采用的復(fù)位電路如下圖所示:圖3.4 復(fù)位電路圖顯示模塊本系統(tǒng)采用一個(gè)8*8的點(diǎn)陣,是由64個(gè)發(fā)光二極管組成,通過紅色的發(fā)光二極管組成不同的圖案來判斷電梯處于上升狀態(tài)還是下降狀態(tài)及所處樓層。圖3.5 顯示電路按鍵模塊方案一:由于本系統(tǒng)設(shè)計(jì)需要用較多的單片機(jī)接口,所以需要擴(kuò)展I/O口,在這里采用74LS373芯片進(jìn)行I/O口擴(kuò)展,雖然可以達(dá)到預(yù)期的目的但是增加了電路的復(fù)雜性,不可靠因素
22、增加。方案二:采用44矩陣鍵盤,通過逐行掃描,不斷檢測(cè)是否有按鍵按下而引起電平的改變并把信息傳送到單片機(jī)從而做出動(dòng)作來響應(yīng)用戶的請(qǐng)求,這樣設(shè)計(jì)簡(jiǎn)單實(shí)用。 綜上分析,選擇方案二。電機(jī)模塊方案一:采用步進(jìn)電機(jī)作為本設(shè)計(jì)的執(zhí)行元件,步進(jìn)電機(jī)在定位性能方面十分優(yōu)越。步進(jìn)電機(jī)和普通電機(jī)的區(qū)別主要就在于其脈沖驅(qū)動(dòng)的形式,步進(jìn)電機(jī)不需要A/D 轉(zhuǎn)換,能夠直接將數(shù)字脈沖信號(hào)轉(zhuǎn)化成為角位移。在應(yīng)用中,步進(jìn)電機(jī)可以同時(shí)完成兩個(gè)工作,其一是傳遞轉(zhuǎn)矩,其二是傳遞信息,升降精度很高。方案二:采用直流電機(jī)作為本設(shè)計(jì)的執(zhí)行元件,直流電機(jī)工作是讓線圈始終交替地處于穩(wěn)定狀態(tài)和非穩(wěn)定平衡狀態(tài),通過控制電流的方向可以實(shí)現(xiàn)電機(jī)的正反
23、轉(zhuǎn)。直流電機(jī)在高起動(dòng)轉(zhuǎn)矩、大轉(zhuǎn)矩、低慣量的系統(tǒng)中經(jīng)常使用到。由于此系統(tǒng)電機(jī)要帶的的負(fù)載較大,對(duì)升降精度要求不是很高,所以采用方案二。第四章 軟件設(shè)計(jì)本設(shè)計(jì)采用C語言來編寫程序,編程及調(diào)試簡(jiǎn)單,C語言是在國內(nèi)外廣泛使用的一種計(jì)算機(jī)語言,也是一種結(jié)構(gòu)化語言。它層次清晰,便于按模塊化方式組織程序,易于調(diào)試和維護(hù)。C語言的表現(xiàn)能力和處理能力極強(qiáng)。它不僅具有豐富的運(yùn)算符和數(shù)據(jù)類型,便于實(shí)現(xiàn)各類復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。由于C語言實(shí)現(xiàn)了對(duì)硬件的編程操作,因此C語言集高級(jí)語言和低級(jí)語言的功能于一體。既可用于系統(tǒng)軟件的開發(fā),也適合于應(yīng)用軟件的開發(fā)。此外,C語言還具有效率高,可移植性強(qiáng)等特點(diǎn)。本設(shè)計(jì)采用C語言來編寫程序,
24、編程及調(diào)試簡(jiǎn)單,大大縮短開發(fā)周期;而且軟件可讀性強(qiáng),便于改進(jìn)和擴(kuò)充,生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。C語言有一個(gè)突出的優(yōu)點(diǎn)就是適合于多種操作系統(tǒng),使得運(yùn)用比較靈活。4.1 軟硬件開發(fā)環(huán)境4.1.1 STC89C52程序開發(fā)軟件keil單片機(jī)開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過匯編軟件將源程序變?yōu)闄C(jī)器碼,隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級(jí)語言開發(fā),單片機(jī)的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)MCS-51系列單
25、片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。運(yùn)行Keil軟件需要Pentium或以上的CPU,16MB或更多RAM20M以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對(duì)于使用51系列單片機(jī)的愛好者來說是十分必要的。 Keil C51 軟件是眾多單片機(jī)應(yīng)用開發(fā)的優(yōu)秀軟件之一,它集編輯,編譯,仿真于一體,支持匯編,PLM 語言和 C 語言的程序設(shè)計(jì),界面友好,易學(xué)易用。4
26、.1.2 proteus硬件仿真軟件Proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機(jī)愛好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一設(shè)計(jì)平臺(tái),其處理器模型支持
27、8051、HC11PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器Proteus軟件具有其它EDA工具軟件(例:multisim)的功能。這些功能是: (1)原理布圖 (2)PCB自動(dòng)或人工布線 (3)SPICE電路仿真 革命性的特點(diǎn)(1)互動(dòng)的電路仿真 用戶甚至可以實(shí)時(shí)采用諸如RAM,ROM,鍵盤,馬達(dá),LED,LCD,AD/DA,部分SPI器件,部分IIC器件。 (2)仿真處理器及其外圍電路 可以仿真
28、51系列、AVR、PIC、ARM、等常用主流單片機(jī)。還可以直接在基于原理圖的虛擬原型 加上編程,再配合顯示及輸出,能看到運(yùn)行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,Proteus建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境。4.2 程序設(shè)計(jì)思路首先,設(shè)計(jì)程序時(shí)必須得合理考慮按鍵的響應(yīng)問題。一段時(shí)間內(nèi)可能有多個(gè)不同的按鍵有動(dòng)作,程序必須記錄每一個(gè)按鍵的動(dòng)作,并根據(jù)電梯本身所處的樓層情況與按鍵樓層之間的位置關(guān)系,合理判斷出電梯應(yīng)當(dāng)做出上升或下降的響應(yīng)動(dòng)作。其次,電梯系統(tǒng)還有一個(gè)判斷是否無人的情況。即電梯到達(dá)某樓層后,其他樓層無按鍵動(dòng)作,且電梯內(nèi)也無樓層選擇按鍵動(dòng)作,那么就可以判斷此時(shí)電梯內(nèi)無人。
29、若電梯內(nèi)無人,電梯應(yīng)自動(dòng)返回到1層等待。然后,兩個(gè)樓層之間應(yīng)考慮有一段運(yùn)行時(shí)間,而且也要設(shè)置在一個(gè)樓層的停留時(shí)間。本設(shè)計(jì)中兩個(gè)樓層之間的運(yùn)行時(shí)間設(shè)為1s,每層停留時(shí)間設(shè)為5s。當(dāng)執(zhí)行結(jié)束之前命令,進(jìn)入定時(shí)0中斷后,可利用此發(fā)送電動(dòng)機(jī)PWM脈沖信號(hào),經(jīng)驅(qū)動(dòng)器驅(qū)動(dòng)后,直流電機(jī)正反轉(zhuǎn)執(zhí)行相應(yīng)的動(dòng)作指令。另外,當(dāng)電梯上升或者下降時(shí),相應(yīng)的狀態(tài)指示燈應(yīng)及時(shí)同步點(diǎn)亮5。4.3 程序流程圖本設(shè)計(jì)程序流程圖主要包括主程序流程圖、啟動(dòng)電梯子程序流程圖、選擇當(dāng)前要去樓層子程序流程圖。程序流程圖畫法簡(jiǎn)單,結(jié)構(gòu)清晰,邏輯性強(qiáng),便于描述,容易理解。通過不同的流程圖來充分說明電梯控制器的運(yùn)行方式及實(shí)現(xiàn)的功能。1、設(shè)計(jì)所實(shí)
30、現(xiàn)的功能有:初始化程序使其顯示為零,其他處于等待工作狀態(tài)。主程序主要功能有:判斷電梯所在的位置,根據(jù)呼叫和選層情況決定電梯的運(yùn)行。判斷電梯所在樓層并進(jìn)行相應(yīng)顯示。根據(jù)操作需要進(jìn)行開關(guān)門的控制。2、軟件流程圖如下:開始顯示電梯所在的樓層數(shù)電梯未運(yùn)行或運(yùn)行卻沒停止調(diào)用選擇當(dāng)前要去樓層子程序喂狗已到目的層調(diào)用啟動(dòng)電梯子程序停留5秒電梯停止運(yùn)行NNNYYY圖4.1 主程序流程圖本程序設(shè)計(jì)一個(gè)自動(dòng)電梯模擬升降控制系統(tǒng),通過乘客的自行按鍵達(dá)到電梯的升降功能。結(jié)合硬件與軟件對(duì)應(yīng)。STC89C52芯片自帶看門口功能,防止程序跑飛。在喂狗沒問題的前提下,功能程序正常運(yùn)行。端口P0.0-0.6用來控制LED燈的亮
31、與滅,其中從低位到高位分別為一層燈,二層燈,三層燈(前述三個(gè)信號(hào)為電梯內(nèi)請(qǐng)求信號(hào),乘客在電梯內(nèi)部方可置為有效),一層上燈,二層上燈,二層下燈,三層下燈(上述四個(gè)信號(hào)為電梯外部信號(hào),乘客在電梯外部方可置為有效)P2口與鍵盤對(duì)應(yīng)連接,數(shù)碼管采用串行輸入方式,鍵盤從低位到高位分別為一層按鍵,二層按鍵,三層按鍵,一層上升按鍵,二層上升按鍵,二層下降按鍵,三層下降按鍵.P1.0與數(shù)碼管的時(shí)鐘輸入端相連,P1.1與數(shù)碼管的串行口相連,用來顯示電梯的上升下降和當(dāng)前所在樓層,電梯門是否開啟三種狀態(tài)。4.4 程序設(shè)計(jì)采用C語言通過對(duì)每個(gè)模塊編寫程序,簡(jiǎn)單易于理解,并且刷記錄清晰,讓人一目了然。包括顯示模塊、系統(tǒng)
32、延時(shí)、定時(shí)器模塊,最后是主函數(shù)調(diào)用。4.4.1 端口初始化設(shè)計(jì)#include #define uchar unsigned char/宏定義#define uint unsigned int/宏定義基礎(chǔ)定義uchar m=0,n=0;uchar o,p,d;uchar time=0;void init() /端口初始化 P0=0xff;P1=0xf8;P2=tablelc;P3=0x00;4.4.2 顯示模塊程序設(shè)計(jì)通過對(duì)8*8LED點(diǎn)陣屏仿電梯數(shù)字滾動(dòng)系統(tǒng)的設(shè)計(jì),模擬電梯顯示屏上下滾動(dòng)顯示樓層數(shù)及上下運(yùn)行狀態(tài)的效果,當(dāng)目標(biāo)樓層大于當(dāng)前樓層時(shí),將向上滾動(dòng)顯示,反之向下滾動(dòng)顯示。#includ
33、e #define uchar unsigned char/宏定義#define uint unsigned int/宏定義基礎(chǔ)定義uchar m=0,n=0;uchar o,p,d;uchar time=0;uchar code taba=0xff,0xef,0xef,0xef,0xab,0xc7,0xef,0xff;/編碼定義uchar code tab1=0xff,0xef,0xcf,0xef,0xef,0xef,0xef,0xc7;/編碼定義uchar code tab2=0xff,0xc7,0xbb,0xfb,0xf7,0xcf,0xbf,0x83;/編碼定義uchar code t
34、ab3=0xff,0xc7,0xbb,0xfb,0xe7,0xfb,0xbb,0xc7;/編碼定義4.4.3 延時(shí)程序設(shè)計(jì)每執(zhí)行一次指令都有固定的時(shí)序這一特征,令其重復(fù)執(zhí)行某些指令從而達(dá)到延時(shí)的目的。較長(zhǎng)時(shí)間的延時(shí)子程序,可以采用多重循環(huán)來實(shí)現(xiàn)。其延時(shí)子程序如下:#include #define uchar unsigned char/宏定義#define uint unsigned int/宏定義基礎(chǔ)定義uchar m=0,n=0;uchar o,p,d;uchar time=0;void delay(uchar n)/延時(shí)子函數(shù)uchar i,j;for(i=n;i0;i-)for(j=2
35、55;j0;j-);4.4.4 定時(shí)器程序設(shè)計(jì)定時(shí)器是單片機(jī)的重要功能模塊之一,在控制領(lǐng)域有廣泛的應(yīng)用。定時(shí)器的事件源若是周期固定的脈沖,就可以實(shí)現(xiàn)定時(shí)功能,其程序代碼如下:#include #define uchar unsigned char/宏定義#define uint unsigned int/宏定義基礎(chǔ)定義uchar m=0,n=0;uchar o,p,d;uchar time=0;void com_initialize(void)/定時(shí)器初始化TMOD = 0x01;/設(shè)定定時(shí)器0為工作方式1TH0 = (65536-50000)/256;/裝初值TL0 = (65536-500
36、00)%256;/裝初值EA = 1; /開總中斷ET0 = 1;/開定時(shí)器0中斷TR0 = 1;/啟動(dòng)定時(shí)器04.4.5 主函數(shù)主函數(shù)主要是一個(gè)循環(huán)結(jié)構(gòu),判斷轎廂是否已到當(dāng)前樓層,然后經(jīng)過一段時(shí)間延時(shí)做出響應(yīng),執(zhí)行循環(huán)體。void main()/主函數(shù)uchar i=0,j=0,k=0;uchar tmp=0;uchar om=0;d=0;m=0;o=1;p=1;n=0xff;com_initialize();while(1)/主循環(huán)for(i=0;ii; /刷新if(+k=50) /延時(shí)k=0;m=P1; /記錄按鍵if(m != 0xff & d=0 & m!=om)om=m; swit
37、ch(m)/開關(guān)語句case 0xfb:tmp=1;break;case 0xf7:tmp=2;break;case 0xef:tmp=3;break;default:tmp=o;break;if(o!=tmp)p=o;o=tmp;time=0;n=m;if(n=0xfe) /識(shí)別按鍵值if(k=0)j=+j%8;P2=taba7-(i+j)%8;else if(n=0xfd)if(k=0)if(j0)j-;elsej=7;P2=taba(i+j)%8;else if(n=0xfb)P2=tab1i;else if(n=0xf7)P2=tab2i;else if(n=0xef)P2=tab3i
38、;delay(5);第五章 系統(tǒng)調(diào)試5.1 軟件調(diào)試Proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。選擇要使用的元器件時(shí),只需在Pick Device窗口雙擊相應(yīng)元件名稱,即可將元件添加到主界面右側(cè)的列表中,使用很方便。實(shí)驗(yàn)步驟如下:1、在Proues軟件中按照系統(tǒng)硬件連線圖連好。2、把編寫好的程序在KEIL編譯器下進(jìn)行編譯并生成.hex文件,輸入STC89C52單片機(jī)仿真器,最后對(duì)其進(jìn)行初始化。3、先按下開啟鍵,觀察LED能否正常顯示,在觀察發(fā)
39、光二極管形成的上升下降信號(hào)和LED顯示的數(shù)字增大或減小是否一致,當(dāng)這些都符合指標(biāo)后,在按下任意鍵,看其是否能達(dá)到預(yù)想目的。接著試驗(yàn)復(fù)位開關(guān),檢驗(yàn)?zāi)芊裢瓿汕辶愕墓δ?,并做出相?yīng)調(diào)整11。5.2 硬件調(diào)試硬件調(diào)試是利用開發(fā)系統(tǒng)、基本測(cè)試儀器(萬用表、示波器等),檢查用戶系統(tǒng)硬件中存在的故障。硬件調(diào)試可分為動(dòng)態(tài)與靜態(tài)調(diào)試兩步進(jìn)行。1、靜態(tài)調(diào)試靜態(tài)調(diào)試是在用戶系統(tǒng)未工作時(shí)的一種硬件檢測(cè)。第一步:檢查外部的各種元件或者是電路是不是有虛焊點(diǎn)或漏焊。第二步:用萬用表復(fù)核目測(cè)中可疑的連接點(diǎn)。第三步:給板加電,檢測(cè)所有的插座或是器件的電源端是否符合要求的值。2、動(dòng)態(tài)調(diào)試動(dòng)態(tài)調(diào)試是在用戶系統(tǒng)工作的情況下,發(fā)現(xiàn)和排
40、除系統(tǒng)硬件中存在的器件問題、器件連接邏輯錯(cuò)誤等的一種檢查。動(dòng)態(tài)調(diào)試的一般循序漸進(jìn)的方法是由近及遠(yuǎn),有分到合順序,逐步進(jìn)行。由近到遠(yuǎn)是將信號(hào)流經(jīng)的各元器件按照距離單片機(jī)的邏輯距離進(jìn)行由近及遠(yuǎn)的分層,然后分層調(diào)試。有分到合是指首先按邏輯功能將硬件電路分為若干塊。當(dāng)調(diào)試電路時(shí),與該元件無關(guān)的器件暫時(shí)全部去掉,這樣可以快速將故障限定在局部的電路上11。第六章 結(jié) 論本文充分利用stc89c52芯片的各引腳功能來設(shè)計(jì),以實(shí)現(xiàn)模擬簡(jiǎn)單的電梯控制系統(tǒng)。系統(tǒng)設(shè)計(jì)簡(jiǎn)便、實(shí)用性強(qiáng)、操作簡(jiǎn)單,基本完成模擬電梯的基本功能。本次畢業(yè)設(shè)計(jì)是對(duì)傳統(tǒng)電梯設(shè)計(jì)的部分改進(jìn),可以降低電梯的設(shè)計(jì)成本,實(shí)現(xiàn)樓層快速通行的模擬控制。另外由于此次設(shè)計(jì)實(shí)現(xiàn)的功能簡(jiǎn)單,簡(jiǎn)化處理了一些實(shí)際情況,沒有去考慮這種電梯在實(shí)際應(yīng)用中的故障問題,及一些更智能的硬件與軟件的安裝與調(diào)試。單片機(jī)在接口性能和計(jì)算速度等方面均
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 煤炭合作框架協(xié)議書
- 雪上運(yùn)動(dòng)器材租賃擔(dān)保合同
- 垃圾處理兼職操作員協(xié)議
- 倉儲(chǔ)物流環(huán)境管理員聘用協(xié)議
- 學(xué)校自來水供應(yīng)系統(tǒng)安裝協(xié)議
- 上市公司保姆服務(wù)合同樣本
- 機(jī)場(chǎng)擴(kuò)建箱涵施工協(xié)議
- 生態(tài)園生態(tài)能源基地施工合同
- 電子元件清罐施工合同
- 網(wǎng)絡(luò)存儲(chǔ)服務(wù)器租賃合同
- 隧道工程鉆爆法開挖技術(shù)
- 過駁操作計(jì)劃SHIP-TO-SHIP
- 拆遷復(fù)耕施工方案
- 錨索施工安全技術(shù)交底
- 小數(shù)乘除法四則混合運(yùn)算含簡(jiǎn)算專項(xiàng)練習(xí)(6套)
- 《數(shù)學(xué)建?!菲谀┛荚囋嚲硪慌c參考答案
- 五年級(jí)信息技術(shù)上冊(cè)期末測(cè)試卷答案
- 2019第五版新版PFMEA-注塑實(shí)例
- 新團(tuán)員入團(tuán)儀式PPT模板
- 八年級(jí)歷史上冊(cè)教案:第16課 毛澤東開辟井岡山道路
- 2023春國家開放大學(xué)-04016人文英語4-期末考試題帶答案
評(píng)論
0/150
提交評(píng)論