- ? 系統(tǒng)概述
- 設(shè)計(jì)要求
根據(jù)所學(xué)的知識(shí)以及技能,利用MCS-51系列單片機(jī)為中心設(shè)計(jì)一個(gè)簡(jiǎn)易電梯系統(tǒng),實(shí)現(xiàn)四層電梯的無(wú)故障運(yùn)行,并用數(shù)碼管和指示燈顯示對(duì)應(yīng)樓層和運(yùn)行方向等基本信息。設(shè)計(jì)所用的單片機(jī)為STC89C52為主要的控制器,自帶AD轉(zhuǎn)換,當(dāng)一邊有按鍵按下時(shí),另一邊以數(shù)字的形式在數(shù)碼管上顯示出相應(yīng)的數(shù)字信息。
- 選擇合適的芯片進(jìn)行驅(qū)動(dòng)電路的設(shè)計(jì);
- 運(yùn)行狀態(tài)精確顯示;
- 平層誤差不超過(guò)±1cm。
- 總體設(shè)計(jì)
總的設(shè)計(jì)框圖如圖1-1所示,由單片機(jī)模塊、矩形按鍵模塊以及系統(tǒng)信息模塊三個(gè)大模塊構(gòu)成,它們的作用分別為:
單片機(jī)模塊:數(shù)據(jù)輸入輸出的處理。
矩形按鍵模塊:通過(guò)按鍵,將相關(guān)信息送入單片機(jī)處理。
系統(tǒng)信息模塊:用若干個(gè)發(fā)光二極管和數(shù)碼管作為此模塊的顯示電梯的運(yùn)行狀態(tài),如上行或下行、電梯目前到達(dá)的樓層等信息。
電機(jī)控制模塊:電機(jī)運(yùn)行的方向以及電機(jī)的速度控制。
其中單片機(jī)模塊里面包括了電源模塊、復(fù)位電路模塊、時(shí)鐘電路模塊,當(dāng)通過(guò)按鍵模塊按下需要到達(dá)的樓層,經(jīng)過(guò)單片機(jī)內(nèi)部轉(zhuǎn)換后在數(shù)碼管上顯示出來(lái)。同時(shí)對(duì)按鍵進(jìn)行掃描,定位被按下的按鍵,確定目標(biāo)樓層并檢測(cè)途徑樓層是否有被按下,上行下行通過(guò)燈的亮滅顯示出來(lái),驅(qū)動(dòng)上下行電機(jī)進(jìn)行正轉(zhuǎn)或反轉(zhuǎn),檢測(cè)到達(dá)指定樓層后上下行電機(jī)停止運(yùn)轉(zhuǎn),目標(biāo)樓層的指示燈亮,同時(shí)開(kāi)關(guān)門(mén)電機(jī)進(jìn)行正轉(zhuǎn)實(shí)現(xiàn)開(kāi)門(mén),停留一段時(shí)間后電機(jī)反轉(zhuǎn)實(shí)現(xiàn)關(guān)門(mén)。
圖1-1總體設(shè)計(jì)框圖
- ? 系統(tǒng)設(shè)計(jì)的整體方案
- 主控芯片的方案論證
方案一:51系列單片機(jī)
采用目前通用的單片機(jī)系列STC89C52芯片為核心控制器,其管腳圖如圖2-1所示,此單片機(jī)功能完善具有字節(jié)處理和位處理,軟件編程靈活,容易顯示各種控制功能,價(jià)格比較便宜,在市場(chǎng)上比較多見(jiàn)。
方案二:PIC系列單片機(jī)
采用PIC系列為核心控制器。與51系列單片機(jī)相比,其是一種精簡(jiǎn)指令型的單片機(jī),指令數(shù)量較少,在傳送和邏輯運(yùn)算上都要比51系列單片機(jī)比較復(fù)雜,編寫(xiě)程序比較麻煩,抗干擾性不是很強(qiáng),在市面上的使用不是很廣泛。
綜上所述,結(jié)合自己目前所學(xué)和比較熟悉的,51系列單片機(jī)是自己在校期間所運(yùn)用最多的,所以對(duì)此單片機(jī)系統(tǒng)有較深刻的了解。而且要設(shè)計(jì)出一個(gè)相對(duì)簡(jiǎn)單且容易顯示的系統(tǒng),51系列單片機(jī)比PIC系列單片機(jī)更容易實(shí)現(xiàn),因此設(shè)計(jì)使用方案一。
圖2-1 STC89C52管腳圖
-
- 顯示模塊的方案論證
方案一:LED數(shù)碼管
采用LED數(shù)碼管作為顯示器件,其中數(shù)碼管又分為共陰數(shù)碼管和共陽(yáng)數(shù)碼管(數(shù)碼管原理圖如圖2-2 所示)。使用數(shù)碼管所構(gòu)造的電路簡(jiǎn)單,程序設(shè)計(jì)也相對(duì)簡(jiǎn)單,關(guān)鍵是數(shù)碼管價(jià)格低廉,設(shè)計(jì)成本少 ,顯示亮度高。
方案二:LCD液晶顯示器
采用LCD液晶為顯示器件。雖然使用液晶顯示屏可以顯示很多內(nèi)容,其構(gòu)造的電路也簡(jiǎn)單,程序設(shè)計(jì)也簡(jiǎn)單,但是相比于數(shù)碼管,其顯示要求要高,對(duì)距離也有一定的要求,顯示亮度低,成本上也相差很多。
綜上所述,再結(jié)合上制作的電梯系統(tǒng)的設(shè)計(jì)顯示方面要求較低,只需要顯示運(yùn)行時(shí)相對(duì)應(yīng)的樓層即可,無(wú)需其他顯示。所以在成本上使用數(shù)碼管顯示比較經(jīng)濟(jì)實(shí)在,因此設(shè)計(jì)選用方案一。
圖2-2 數(shù)碼管管腳圖
-
- 電動(dòng)機(jī)的方案論證
方案一:直流電機(jī)
采用直流電機(jī)為動(dòng)力元件。其中直流電機(jī)又分為直流有刷電機(jī)和直流無(wú)刷電機(jī),直流無(wú)刷電機(jī)成本高但壽命長(zhǎng)噪聲低;直流有刷電機(jī)成本低,使用簡(jiǎn)單,但生命短噪聲大。直流電機(jī)的工作原理是只要有合適的電壓就可以轉(zhuǎn)動(dòng),所以在精度控制上不是很好。
方案二:步進(jìn)電機(jī)
采用步進(jìn)電機(jī)為動(dòng)力元件。目前步進(jìn)電機(jī)作為動(dòng)力元件已經(jīng)很廣泛,其中42步進(jìn)電機(jī)更是其行業(yè)最常用的步進(jìn)電機(jī)尺寸。步進(jìn)電機(jī)的工作原理大概是將脈沖信號(hào)轉(zhuǎn)化為角位移的元件,當(dāng)步進(jìn)電機(jī)接收到一個(gè)脈沖信號(hào)時(shí),它就可以向預(yù)設(shè)的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度,從而達(dá)到精確定位的目的。同樣可以通過(guò)控制脈沖頻率來(lái)控制電機(jī)的轉(zhuǎn)動(dòng)速度,達(dá)到調(diào)速的目的。其不受太多外力的影響,控制簡(jiǎn)單。相比與直流電機(jī)的工作原理。步進(jìn)電機(jī)是按照節(jié)拍工作的,可以調(diào)節(jié)很小的角度,在精確度上比較好把控。
綜上所述,根據(jù)系統(tǒng)對(duì)運(yùn)行的狀態(tài)和精度有一定的要求,所以設(shè)計(jì)的動(dòng)力元件要具有很好的把控力,因此設(shè)計(jì)使用方案二。
-
- 電機(jī)驅(qū)動(dòng)模塊的方案論證
方案一:L298N驅(qū)動(dòng)
采用L298N電機(jī)驅(qū)動(dòng)為控制器。其內(nèi)置兩個(gè)芯片,集成性較高,抗干擾能力強(qiáng),轉(zhuǎn)速可調(diào)。不過(guò)L298N構(gòu)成的電路比較復(fù)雜,硬件電路連接較為麻煩。關(guān)鍵其成本還比較高。
方案二:A4988驅(qū)動(dòng)
采用A4988電機(jī)驅(qū)動(dòng)為控制器。A4988是一款帶轉(zhuǎn)換器和過(guò)流保護(hù)的DMOS微步進(jìn)電機(jī)驅(qū)動(dòng)器,它用于操作雙極步進(jìn)電機(jī),在步進(jìn)模式,輸出驅(qū)動(dòng)的能力35V和+2A 。其控制簡(jiǎn)單,只需要控制STEP與DIR兩個(gè)端口; 具有精度調(diào)整,擁有五種不同的步進(jìn)模式:全、半、1/4、1/8、1/16; 可調(diào)電位器可以調(diào)節(jié)輸出電流,從而獲得更高的步進(jìn)率。其是一款成本低,體積小,容易設(shè)計(jì)控制電路。
綜上所述,由于電機(jī)選用42步進(jìn)電機(jī),而且系統(tǒng)對(duì)于控制精度比較高,所以對(duì)比兩個(gè)方案的性價(jià)比之下,選用方案二。
- ? 系統(tǒng)硬件電路設(shè)計(jì)
- 單片機(jī)最小系統(tǒng)的電路設(shè)計(jì)
- STC89C52芯片模塊電路設(shè)計(jì)
- 單片機(jī)最小系統(tǒng)的電路設(shè)計(jì)
根據(jù)方案的選擇,STC89C52作為所設(shè)計(jì)系統(tǒng)的主控芯片,將其端口恰當(dāng)使用,以實(shí)現(xiàn)系統(tǒng)各個(gè)的功能。其端口分別可以控制數(shù)碼管的顯示,和電機(jī)驅(qū)動(dòng)模塊控制(脈沖信號(hào))以及各個(gè)樓層的按鍵功能,設(shè)計(jì)使用單片機(jī)的P0口與數(shù)碼管相連接,使用P1、P2口與樓層的按鍵和顯示燈相連,使用P3^4、P3^5與電機(jī)驅(qū)動(dòng)模塊相接,電路設(shè)計(jì)簡(jiǎn)單,如圖3-1所示。
圖3-1 STC89C52電路設(shè)計(jì)圖
-
-
- 系統(tǒng)時(shí)鐘電路設(shè)計(jì)
-
時(shí)鐘電路是產(chǎn)生像時(shí)鐘一樣準(zhǔn)確運(yùn)動(dòng)的振蕩電路。任何工作都按時(shí)間順序。用于產(chǎn)生這個(gè)時(shí)間的電路就是時(shí)鐘電路。時(shí)鐘電路一般由晶體振蕩器、晶震控制芯片和電容組成。時(shí)鐘電路應(yīng)用十分廣泛。單片機(jī)運(yùn)行需要時(shí)鐘支持就像計(jì)算機(jī)的CPU一樣,如果沒(méi)有時(shí)鐘電路來(lái)產(chǎn)生時(shí)鐘驅(qū)動(dòng)單片機(jī),那單片機(jī)就不能執(zhí)行程序。在MCS-51單片機(jī)片內(nèi)有一個(gè)高增益的反相放大器,反相放大器的輸入端為XTAL1,輸出端為XTAL2,由該放大器構(gòu)成的振蕩電路和時(shí)鐘電路一起構(gòu)成了單片機(jī)的時(shí)鐘方式。如圖3-2所示。
圖3-2 時(shí)鐘電路設(shè)計(jì)圖
-
-
- 復(fù)位電路設(shè)計(jì)
-
對(duì)于一個(gè)完整的電子設(shè)計(jì),其中一個(gè)關(guān)鍵就是系統(tǒng)復(fù)位電路的設(shè)計(jì)。其可以實(shí)現(xiàn)系統(tǒng)的還原和初始化功能。系統(tǒng)所設(shè)計(jì)的復(fù)位電路如圖3-3所示,由R1、C1組成復(fù)位電路,剛上電時(shí),C1是電壓為0,電源開(kāi)始對(duì)C1電容充電,此時(shí)的RST引腳處呈現(xiàn)高電平,高電平時(shí)間為10K*10UF=0.1S。也就是說(shuō)在電腦啟動(dòng)的0.1S內(nèi),單片機(jī)系統(tǒng)自動(dòng)復(fù)位(RST引腳接收到的高電平信號(hào)時(shí)間為0.1S左右)。在單片機(jī)啟動(dòng)0.1S后,電容C1兩端的電壓持續(xù)充電為5V,這是時(shí)候10K電阻兩端的電壓接近與0,當(dāng)按下S1,電源電壓接通到R1, 由于R1阻值比較大,此時(shí)電容開(kāi)始迅速的放電,這個(gè)時(shí)候 R1處的電壓再升高,所以RST引腳處又接受到高電平,即單片機(jī)系統(tǒng)自動(dòng)復(fù)位。
圖3-3 復(fù)位電路設(shè)計(jì)
-
-
- 電源電路設(shè)計(jì)
-
對(duì)于電子系統(tǒng)來(lái)講,其最重要的是電源設(shè)計(jì)。沒(méi)有電源提供電壓,系統(tǒng)將不會(huì)運(yùn)行。所設(shè)計(jì)的電梯系統(tǒng)由于需要雙電源(單片機(jī)的供電電源5V和步進(jìn)電機(jī)驅(qū)動(dòng)的供電電源12V),因此設(shè)計(jì)一個(gè)降壓模塊,當(dāng)輸入電源為直流12V時(shí),經(jīng)過(guò)其模塊內(nèi)部的處理可以得到一個(gè)輸出穩(wěn)定的5V電壓,這樣就可以為單片機(jī)供電,其中的12V電壓是為了給步進(jìn)電機(jī)驅(qū)動(dòng)提供電源的。然后在輸出端設(shè)計(jì)一個(gè)由RC并聯(lián)的濾波電路,RC并聯(lián)電路既能通過(guò)直流信號(hào)又能通過(guò)交流信號(hào),當(dāng)接上電源時(shí)D1就會(huì)亮起,有個(gè)提示的功能。這樣設(shè)計(jì)電路簡(jiǎn)單,應(yīng)用性比較好。電路如圖3-4所示。
圖3-4 電源模塊設(shè)計(jì)
-
- 數(shù)碼管顯示接口電路設(shè)計(jì)
根據(jù)方案選擇設(shè)計(jì),系統(tǒng)采用一位共陽(yáng)數(shù)碼管作為顯示模塊。共陽(yáng)數(shù)碼管是指將所有發(fā)光二極管的陽(yáng)極接到一起形成公共陽(yáng)極(COM)的數(shù)碼管,共陽(yáng)數(shù)碼管在應(yīng)用時(shí)需要公共極的COM接到地線VCC上,當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí),相應(yīng)字段就點(diǎn)亮,當(dāng)某一字段的陰極為高電平時(shí),相應(yīng)字段就不亮。
設(shè)計(jì)的顯示接口是用51單片機(jī)的P0口,如圖3-5所示。在接通電源后,P0口處的輸出電流很低,輸出為低電平。因?yàn)镻0口的片內(nèi)沒(méi)有上拉電阻,而P0為I/0口工作狀態(tài)時(shí),上方的FET被關(guān)斷,從而輸出腳浮空,即使驅(qū)動(dòng)能力再怎么強(qiáng),此時(shí)的輸出都相當(dāng)于沒(méi)有接上電源。對(duì)于一位共陰極數(shù)碼管,需要高電平才能驅(qū)動(dòng)。所以在P0口處設(shè)計(jì)一個(gè)排阻(用作上拉電阻)是用來(lái)解決總線驅(qū)動(dòng)能力不足時(shí)提供電流的,由電源通過(guò)這個(gè)上拉電阻給數(shù)碼管提供電流。這就解決了P0口處輸出的問(wèn)題,使之一位共陰數(shù)碼管可以點(diǎn)亮相應(yīng)的字段。
圖3-5 數(shù)碼管電路設(shè)計(jì)圖
-
- 按鍵控制電路設(shè)計(jì)
根據(jù)系統(tǒng)的要求,設(shè)計(jì)出了如圖3-6所示的樓層按鍵控制電路圖。大致就是分為兩種功能:電梯外部按鍵功能和內(nèi)部按鍵功能,利用51單片的P1^0~P1^5和P2^0~P2^4來(lái)控制實(shí)現(xiàn)電梯外部和內(nèi)部按鍵的功能,其電梯外部按鍵分別為S4、S6、S8、S10、S11、S12(它們分別可以實(shí)現(xiàn)從電梯外部一樓到四樓上下行的功能),內(nèi)部對(duì)應(yīng)樓層的按鍵為S2、S3、S5、S7(它們分別可以實(shí)現(xiàn)從電梯內(nèi)部按下到達(dá)對(duì)應(yīng)樓層的功能)最后設(shè)計(jì)一個(gè)緊急按鍵控制功能(其可以實(shí)現(xiàn)緊急報(bào)警功能)。電路設(shè)計(jì)簡(jiǎn)單,編寫(xiě)程序不用太復(fù)雜,功能容易設(shè)計(jì)實(shí)現(xiàn)。
圖3-6 樓層按鍵電路設(shè)計(jì)
-
- 顯示燈電路設(shè)計(jì)
由系統(tǒng)要求所設(shè)計(jì)出的顯示燈電路,是利用51單片機(jī)的P2^5~P2^7分別與上下行顯示燈所連接的,可以編寫(xiě)程序控制著燈的顯示和熄滅。當(dāng)按下上行的按鍵時(shí),上行燈與之對(duì)應(yīng)(亮起),按下下行按鍵時(shí),下行燈與之對(duì)應(yīng)(亮起),當(dāng)電梯系統(tǒng)出現(xiàn)故障時(shí),則緊急燈亮起。電路設(shè)計(jì)簡(jiǎn)單,容易設(shè)計(jì)控制程序,如圖3-7所示。
圖3-7 電梯顯示燈設(shè)計(jì)電路圖
-
- 步進(jìn)電機(jī)驅(qū)動(dòng)模塊電路設(shè)計(jì)
系統(tǒng)設(shè)計(jì)采用A4988模塊作為電機(jī)驅(qū)動(dòng)器,其是一款完整的微步電機(jī)驅(qū)動(dòng)器,內(nèi)置轉(zhuǎn)換器,操作簡(jiǎn)單。設(shè)計(jì)的電路圖如圖3-8所示。該模塊需要到雙電源才能工作,所以設(shè)計(jì)VMOT接12V電源、VDD接一個(gè)5V電源。其中為了使模塊能夠穩(wěn)定輸出則將ENA口接地,接低電平則模塊開(kāi)始工作,接高電平則模塊關(guān)機(jī),而系統(tǒng)設(shè)計(jì)使用全步進(jìn)模式(步進(jìn)模式如表3-1所示),所以需要將MS1、MS2和MS3全接地。STEP是脈沖輸入口,將它與單片機(jī)的控制口P3^4連接,往這個(gè)腳輸入一個(gè)脈沖,則電機(jī)轉(zhuǎn)動(dòng)一步,也就是往這個(gè)腳持續(xù)輸入脈沖,則電機(jī)持續(xù)轉(zhuǎn)動(dòng)。DIR是方向控制端,將它與單片機(jī)P3^5相連,其工作模式為低電平正轉(zhuǎn),高電平反轉(zhuǎn)。1A、1B、2A、2B端與電機(jī)接口對(duì)應(yīng)連接,電機(jī)才能正常工作。
表3-1 步進(jìn)模式設(shè)置
MS1 | MS2 | MS3 | 微步分辨率 |
L | L | L | 全步 |
H | L | L | 半步 |
L | H | L | 四分之一步 |
H | H | L | 八分之一步 |
H | H | H | 十六分之一步 |
圖3-8 步進(jìn)電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)圖
-
- 電機(jī)電路設(shè)計(jì)
依據(jù)整體設(shè)計(jì)方案,選用42步進(jìn)電機(jī)作為動(dòng)力元件,A4988作為驅(qū)動(dòng)42電機(jī)的驅(qū)動(dòng)器。42電機(jī)是一款二相式電機(jī),其驅(qū)動(dòng)方式是將四根導(dǎo)線分別與驅(qū)動(dòng)器的1A、1B、2A和2B相連接。這樣電機(jī)才能正常工作。電路設(shè)計(jì)如圖3-9所示。
圖3-9 電機(jī)電路設(shè)計(jì)圖
- ? 系統(tǒng)軟件設(shè)計(jì)
- 控制數(shù)碼管顯示的軟件設(shè)計(jì)
首先將數(shù)碼管的各個(gè)段碼設(shè)置好,設(shè)計(jì)一個(gè)顯示的子程序,其中的顯示是按照四個(gè)二進(jìn)制的排序來(lái)顯示相應(yīng)的數(shù)字,如輸入口為0010時(shí)數(shù)碼管上顯示的是對(duì)應(yīng)的數(shù)字為2。一開(kāi)始將系統(tǒng)初始化定義,設(shè)置當(dāng)前樓層為1層,樓層之差為0。當(dāng)按下某層上行按鈕時(shí),電機(jī)開(kāi)始正轉(zhuǎn),上行顯示燈也相應(yīng)的亮起,經(jīng)過(guò)一段時(shí)間電機(jī)停止,電梯到達(dá)某一樓層,則這時(shí)候數(shù)碼管就會(huì)顯示按下對(duì)應(yīng)樓層的層數(shù)。如果在電梯到達(dá)這一層之后,按下某層下行的按鈕時(shí)。電機(jī)開(kāi)始反轉(zhuǎn),經(jīng)過(guò)一段時(shí)間后電機(jī)停止,則這時(shí)候電梯就會(huì)顯示當(dāng)前到達(dá)的樓層層數(shù)。如果在第一層按下第一層的按鈕時(shí),則會(huì)觸發(fā)限位開(kāi)關(guān),這時(shí)候系統(tǒng)將會(huì)回歸初始化狀態(tài),電機(jī)不會(huì)工作,數(shù)碼管則顯示當(dāng)前為1層。直到按下上幾層的按鈕時(shí)電機(jī)點(diǎn)擊才開(kāi)始工作,此時(shí)數(shù)碼管才會(huì)顯示相對(duì)應(yīng)的樓層的數(shù)字。流程圖如圖4-1所示。
圖4-1 控制數(shù)碼管顯示流程圖
-
- 控制步進(jìn)電機(jī)驅(qū)動(dòng)模塊的軟件設(shè)計(jì)
首先設(shè)計(jì)電機(jī)驅(qū)動(dòng)模塊的DIR口為1(DIR=0上行,DIR=1下行)讓電機(jī)反轉(zhuǎn),而STEP口處則提供有一定延遲的脈沖信號(hào),直到觸發(fā)限位開(kāi)關(guān)時(shí),電機(jī)驅(qū)動(dòng)停止工作,這時(shí)候電梯會(huì)顯示在第一層,系統(tǒng)回歸初始化狀態(tài)。當(dāng)電梯停止運(yùn)轉(zhuǎn)后若有呼叫請(qǐng)求(按鍵按下),則對(duì)呼叫樓層與當(dāng)前所在樓層進(jìn)行比較,若呼叫樓層大于當(dāng)前所在樓層則會(huì)上行,若呼叫樓層小于當(dāng)前所在樓層則會(huì)下行。單片機(jī)會(huì)掃描各個(gè)樓層呼叫信號(hào),這樣才可以確定電梯響應(yīng)上升、下降。當(dāng)按下上行按鍵時(shí)(呼叫請(qǐng)求),這時(shí)候電機(jī)的DIR為0、STEP為1,為上行呼叫請(qǐng)求。電機(jī)開(kāi)始正轉(zhuǎn),相應(yīng)的上行燈也會(huì)亮起,直到準(zhǔn)確的到達(dá)某一樓層時(shí)(平層之差),STEP處變?yōu)?(STEP=0沒(méi)有脈沖信號(hào),STEP=1有脈沖信號(hào))電機(jī)驅(qū)動(dòng)才會(huì)停止工作。同樣按下下行按鍵時(shí),DIR則為1、STEP為1,為下行呼叫請(qǐng)求。電機(jī)開(kāi)始反轉(zhuǎn),相應(yīng)的顯示模塊也會(huì)亮起,也是只有準(zhǔn)確到達(dá)平層之后,STEP出變?yōu)?時(shí),電機(jī)驅(qū)動(dòng)停止工作。流程圖如圖4-2所示。
-
- 系統(tǒng)實(shí)驗(yàn)
-
-
- 測(cè)試結(jié)果
-
首先接上電源,若電路板能夠正常使用(電源燈會(huì)亮起等提示)這樣就可以確認(rèn)其能夠被正常的使用,其次用萬(wàn)用表檢測(cè)線路,如果沒(méi)有出現(xiàn)導(dǎo)線接通不良或是虛焊的問(wèn)題,萬(wàn)用表會(huì)顯示相應(yīng)的電壓值,則出現(xiàn)線路沒(méi)有接通就不會(huì)對(duì)應(yīng)的電壓值。將萬(wàn)用表的黑表筆放在地線上,紅表筆放到單片機(jī)的+5V上,記下萬(wàn)用表上的數(shù)值為4.97V。同樣在黑表筆放在地線上,紅表筆放到電機(jī)驅(qū)動(dòng)的+12V上,記下萬(wàn)用表上的數(shù)值為11.98V。數(shù)據(jù)如表5-1所示。然后就是電梯系統(tǒng)各個(gè)樓層的按鍵測(cè)試,將測(cè)試的結(jié)果分別寫(xiě)出。電梯運(yùn)行狀態(tài)的具體情況如表5-2所示(其中兩個(gè)數(shù)字分別代表的是:第一個(gè)數(shù)字為對(duì)應(yīng)樓層;第二個(gè)數(shù)字為上下行1為上行2為下行)。
表5-1 測(cè)試數(shù)據(jù)值
平層差 | +5V | +12V | |
預(yù)估值 | 1cm | 5V | 12V |
實(shí)際值 | 2mm | 5.04V | 12.01V |
表5-2 電梯運(yùn)行狀態(tài)表
???? 電梯所在 樓層 電梯內(nèi) 外呼叫按鈕 |
一樓 | 二樓 | 三樓 | 四樓 |
S11 | 電梯停止 | 電梯下行 | 電梯下行 | 電梯下行 |
S21 | 電梯上行 | 電梯停止 | 電梯下行 | 電梯下行 |
S22 | 電梯上行 | 電梯停止 | 電梯下行 | 電梯下行 |
S31 | 電梯上行 | 電梯上行 | 電梯停止 | 電梯下行 |
S32 | 電梯上行 | 電梯上行 | 電梯停止 | 電梯下行 |
S42 | 電梯上行 | 電梯上行 | 電梯上行 | 電梯停止 |
S1 | 電梯停止 | 電梯下行 | 電梯下行 | 電梯下行 |
S2 | 電梯上行 | 電梯停止 | 電梯下行 | 電梯下行 |
S3 | 電梯上行 | 電梯上行 | 電梯停止 | 電梯下行 |
S4 | 電梯上行 | 電梯上行 | 電梯上行 | 電梯停止 |
部分程序:
#include<reg52.h>
#define uint unsigned int? //無(wú)符號(hào)整形
#define uchar unsigned char//無(wú)符號(hào)字符形
uint lc = 1;????????? //當(dāng)前樓層
uint lcsx = 4; ???? //樓層上限
int lcc = 0;????????? //樓層差
int lcc2 = 0;??????? //樓層差2
uint a1=0;
uint a2=0;
uint a3=0;
uint a4=0;
uint flag=0;
uint x = 0,y = 0,z = 0;
sbit btf11 = P1^0;
sbit btf21 = P1^1;
sbit btf22 = P1^2;
sbit btf31 = P1^3;
sbit btf32 = P1^4;
sbit btf42 = P1^5;
sbit btd0 = P2^4;
sbit btd1 = P2^0;
sbit btd2 = P2^1;
sbit btd3 = P2^2;
sbit btd4 = P2^3;
sbit led1 = P2^5;
sbit led2 = P2^6;
sbit led3 = P2^7;
sbit seg = P3^2;
sbit sw = P3^3;
sbit step? = P3^4;
sbit dir? = P3^5;
資料內(nèi)容包括:
需要完整的資料可在我的資源里下載,也可以加入我的紛傳圈子,里面有資源壓縮包的百度網(wǎng)盤(pán)下載地址及提取碼。
紛傳點(diǎn)擊用微信打開(kāi)即可,過(guò)程有點(diǎn)繁瑣請(qǐng)見(jiàn)諒