單片機(jī)課程設(shè)計(jì)1課件_第1頁
單片機(jī)課程設(shè)計(jì)1課件_第2頁
單片機(jī)課程設(shè)計(jì)1課件_第3頁
單片機(jī)課程設(shè)計(jì)1課件_第4頁
單片機(jī)課程設(shè)計(jì)1課件_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 作業(yè) 題 目 單片機(jī)控制步進(jìn)電機(jī) 課 程 名 稱 單片機(jī)原理及接口技術(shù) 學(xué) 生 姓 名 學(xué) 號 目 錄1設(shè)計(jì)任務(wù)和要求32設(shè)計(jì)思路43系統(tǒng)硬件設(shè)計(jì)53.1 硬件電路的工作原理53.2步進(jìn)電機(jī)模塊53.3控制模塊63.4主要元件介紹:64軟件編程115 調(diào)試過程與結(jié)果205.1正轉(zhuǎn)結(jié)果顯示:205.1.1正轉(zhuǎn)加速:215.1.2正轉(zhuǎn)減速:211設(shè)計(jì)任務(wù)和要求單片機(jī)課程設(shè)計(jì)是考察學(xué)生利用所學(xué)過的專業(yè)知識,進(jìn)行綜合的電機(jī)控制系統(tǒng)設(shè)計(jì)并最終完成實(shí)際系統(tǒng)連接,能夠使學(xué)生對電氣與自動化的專業(yè)知識進(jìn)行綜合應(yīng)用,培養(yǎng)學(xué)生的創(chuàng)新能力和團(tuán)隊(duì)協(xié)作能力,提高學(xué)生的動手實(shí)踐能力。最終形成一篇符合規(guī)范的設(shè)計(jì)說明書,并參

2、加綜合實(shí)踐答辯,為后期的畢業(yè)設(shè)計(jì)做好準(zhǔn)備。本次設(shè)計(jì)考核的能力主要有:1) 專業(yè)知識應(yīng)用能力,包括電路分析、電子技術(shù)、單片機(jī)、檢測技術(shù)、電氣控制、電機(jī)與拖動、微特電機(jī)及其驅(qū)動、計(jì)算機(jī)高級語言、計(jì)算機(jī)輔助設(shè)計(jì)、計(jì)算機(jī)辦公軟件等課程,還包括本專業(yè)的拓展性課程如變頻器、組態(tài)技術(shù)、現(xiàn)場總線技術(shù)、伺服電機(jī)等課程。2) 項(xiàng)目設(shè)計(jì)與運(yùn)作能力,團(tuán)隊(duì)協(xié)作能力,技術(shù)文檔撰寫能力,PPT匯報(bào)與口頭表達(dá)能力。3) 電氣與自動化系統(tǒng)的設(shè)計(jì)與實(shí)際應(yīng)用能力。要求完成的工作量包括:1) 現(xiàn)場仿真演示效果。2) 學(xué)生結(jié)合課題進(jìn)行PPT演講與答辯。3) 學(xué)生上交課題要求的各類設(shè)計(jì)技術(shù)文檔。2設(shè)計(jì)思路電路基本理論:步進(jìn)電機(jī)是一種將電

3、脈沖轉(zhuǎn)變?yōu)榻俏灰频膱?zhí)行機(jī)構(gòu),通俗一點(diǎn)講:當(dāng)步進(jìn)驅(qū)動器接收到一個(gè)脈沖信號,它就驅(qū)動步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動一個(gè)固定的角度??赏ㄟ^控制脈沖數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確的定位目的。通過對步進(jìn)電機(jī)的軟件設(shè)計(jì)和硬件設(shè)計(jì)包括步進(jìn)電機(jī)的結(jié)構(gòu)、原理及應(yīng)用,根據(jù)原理和硬件的設(shè)計(jì)利用c語言編寫程序,經(jīng)過反復(fù)運(yùn)行和調(diào)試,實(shí)現(xiàn)單片機(jī)對步進(jìn)電機(jī)的控制。步進(jìn)電機(jī)是機(jī)電控制中一種常用的執(zhí)行機(jī)構(gòu),它的用途是將電脈沖轉(zhuǎn)化為角位移,它的的驅(qū)動電路根據(jù)控制信號工作,控制信號由單片機(jī)產(chǎn)生。當(dāng)步進(jìn)驅(qū)動器接收到一個(gè)脈沖信號,它就驅(qū)動步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動一個(gè)固定的角度,控制換相順序,即通電控制脈沖必須嚴(yán)格按照一定順序分別控制各相的通

4、斷。通過控制脈沖個(gè)數(shù)即可以控制角位移量,從而達(dá)到準(zhǔn)確定位的目的??刂撇竭M(jìn)電機(jī)的轉(zhuǎn)向,即給定工作方式正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn),若按反序通電換相,則電機(jī)就反轉(zhuǎn)。控制步進(jìn)電機(jī)的速度,即給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會再轉(zhuǎn)一步,兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。同時(shí)通過控制脈沖頻率來控制電機(jī)轉(zhuǎn)動的速度和加速度,從而達(dá)到調(diào)速的目的?;趩纹瑱C(jī)和proteus的步進(jìn)電機(jī)控制電路的基本組成如圖所示:根據(jù)設(shè)計(jì)要求,采用的方案如下。硬件部分實(shí)現(xiàn)電機(jī)轉(zhuǎn)動,包括控制開關(guān)模塊;電機(jī)轉(zhuǎn)動模塊。軟件部分實(shí)現(xiàn)對步進(jìn)電機(jī)的控制功能,主要設(shè)計(jì)思想通過控制臺控制程序的開關(guān)來控制電機(jī)的轉(zhuǎn)動。電源驅(qū)動

5、89C51單片機(jī),在89C51中裝載程序,通過開關(guān)按鍵來輸入信號,89C51向驅(qū)動電路提供信號使步進(jìn)電機(jī)動作。3系統(tǒng)硬件設(shè)計(jì)3.1 硬件電路的工作原理總電路圖通過對開關(guān)k1 k2 k3的開關(guān),來實(shí)現(xiàn)對步進(jìn)電機(jī)的正反轉(zhuǎn)和停止,通過k4 k5來進(jìn)行加減速,并且有相應(yīng)的LED燈的顯示。3.2步進(jìn)電機(jī)模塊功能:單片機(jī)輸出的程序通過轉(zhuǎn)換器和電機(jī)驅(qū)動器給步進(jìn)電機(jī)一個(gè)脈沖信號,使步進(jìn)電機(jī)實(shí)現(xiàn)正轉(zhuǎn)與反轉(zhuǎn)。3.3控制模塊功能:通過控制臺實(shí)現(xiàn)對單片機(jī)程序的開與關(guān)3.4主要元件介紹:3.4.1步進(jìn)電機(jī):步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號,步進(jìn)電機(jī)就轉(zhuǎn)動一個(gè)角度,因此非常適合于單片機(jī)控

6、制。步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是:它是通過輸入脈沖信號來進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號頻率決定。 步進(jìn)電機(jī)分三種:永磁式(PM),反應(yīng)式(VR)和混合式(HB),步進(jìn)電機(jī)又稱為脈沖電機(jī),是工業(yè)過程控制和儀表中一種能夠快速啟動,反轉(zhuǎn)和制動的執(zhí)行元件,其功用是將電脈沖轉(zhuǎn)換為相應(yīng)的角位移或直線位移,由于開環(huán)下就能實(shí)現(xiàn)精確定位的特點(diǎn),使其在工業(yè)控制領(lǐng)域獲得了廣泛應(yīng)用。步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)是由電脈沖信號控制的,其角位移量或線位移量與脈沖數(shù)成正比,每個(gè)一個(gè)脈沖,步進(jìn)電機(jī)就轉(zhuǎn)動一個(gè)角度(不距角)或前進(jìn)、倒退一步。步進(jìn)電機(jī)旋轉(zhuǎn)的角度由輸入的電脈沖數(shù)確定,所以,也有人

7、稱步進(jìn)電機(jī)為數(shù)字/角度轉(zhuǎn)換器。步進(jìn)電機(jī)28BYJ48:步進(jìn)電機(jī)28BYJ48型四相八拍電機(jī),電壓為DC5VDC12V。當(dāng)對步進(jìn)電機(jī)施加一系列連續(xù)不斷的控制脈沖時(shí),它可以連續(xù)不斷地轉(zhuǎn)動。每一個(gè)脈沖信 號對應(yīng)步進(jìn)電機(jī)的某一相或兩相繞組的通電狀態(tài)改變一次,也就對應(yīng)轉(zhuǎn)子轉(zhuǎn)過一定的角度(一個(gè)步距角)。當(dāng)通電狀態(tài)的改變完成一個(gè)循環(huán)時(shí),轉(zhuǎn)子轉(zhuǎn)過一個(gè)齒距。 四相步進(jìn)電機(jī)可以在不同的通電方式下運(yùn)行,常見的通電方式有單(單相繞組通電)四拍(A-B-C-D-A。),雙(雙相繞組通電)四拍(AB-BC- CD-DA-AB-。),八拍(A-AB-B-BC-C-CD-D-DA-A。)四相步進(jìn)電機(jī)有兩種運(yùn)行方式,一、四相四

8、拍;二、四相八拍。要想搞清楚四相八拍運(yùn)行方式下步進(jìn)電機(jī)的轉(zhuǎn)速如果計(jì)算,需要先清楚兩個(gè)基本概念。1、拍數(shù):完成一個(gè)磁場周期性變化所需脈沖數(shù)或?qū)щ姞顟B(tài)用n表示,或指電機(jī)轉(zhuǎn)過一個(gè)齒距角所需脈沖數(shù),以四相電機(jī)為例,有四相四拍運(yùn)行方式即AB-BC-CD-DA-AB,四相八拍運(yùn)行方式即 A-AB-B-BC-C-CD-D-DA-A.2、步距角:對應(yīng)一個(gè)脈沖信號,電機(jī)轉(zhuǎn)子轉(zhuǎn)過的角位移用表示。=360度(轉(zhuǎn)子齒數(shù)J*運(yùn)行拍數(shù)),以常規(guī)二、四相,轉(zhuǎn)子齒為50齒電機(jī)為例。四拍運(yùn)行時(shí)步距角為=360度/(50*4)=1.8度(俗稱整步),八拍運(yùn)行時(shí)步距角為=360度/(50*8)=0.9度(俗稱半步)。這兩個(gè)概念清楚

9、后,我們再來計(jì)算轉(zhuǎn)速,以基本步距角1.8°的步進(jìn)電機(jī)為例(現(xiàn)在市場上常規(guī)的二、四相混合式步進(jìn)電機(jī)基本步距角都是1.8°),四相八拍運(yùn)行方式下,每接收一個(gè)脈沖信號,轉(zhuǎn)過0.9°,如果每秒鐘接收400個(gè)脈沖,那么轉(zhuǎn)速為每秒400X0.9°=360°,相當(dāng)與每秒鐘轉(zhuǎn)一圈,每分鐘60轉(zhuǎn)。由于單片機(jī)接口信號不夠大需要通過ULN2003放大再連接到相應(yīng)的電機(jī)接口,如下: 橙  黃 粉藍(lán)十六制(P1口)  1 0 0 0 0x08 1 1&

10、#160;0 0 0x0c 0 1 0 0 0x04 0 1 1 0 0x06 0 0 1 0 0x02 0 0 1 1 0x03 0 0 0 1 0x01 1 0 0 1 0x09所以可以定義正轉(zhuǎn)勵(lì)磁序列為A->AB->B->BC->C->CD-&

11、gt;D->DAuchar code FFW=0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09;/反轉(zhuǎn)勵(lì)磁序列為AD->D->CD->C->BC->B->BA->Auchar code REV=0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01;步進(jìn)電機(jī)28BYJ48的主要技術(shù)參數(shù):3、四相步進(jìn)電機(jī)的脈沖分配規(guī)律 目前,對步進(jìn)電機(jī)的控制主要有分散器件組成的環(huán)形脈沖分配器、軟件環(huán)形脈沖分配器、專用集成芯片環(huán)形脈沖分配器等。本設(shè)計(jì)利用單片機(jī)進(jìn)行控制,主要是利用軟件進(jìn)行環(huán)形脈沖分配。四相步進(jìn)電機(jī)

12、的工作方式為四相單四拍,雙四拍和四相八拍工作的方式。各種工作方式在電源通電時(shí)的時(shí)序 與波形分別如圖1 a、b、c所示。本設(shè)計(jì)的電機(jī)工作方式為四相單四拍,根據(jù)步進(jìn)電機(jī)的工作的時(shí)序和波形圖,總結(jié)出其工作方式為四相單四拍時(shí)的脈沖分配規(guī)律,四相雙四拍的脈沖分配規(guī)律,在每一種工作方式中,脈沖的頻率越高,其轉(zhuǎn)速就越快,但脈沖頻率高到一定程度,步進(jìn)電機(jī)跟不上頻率的變化后電機(jī)會出現(xiàn)失步現(xiàn)象,所以脈沖頻率一定要控制在步進(jìn)電機(jī)允許的范圍內(nèi)。3.4.2 89C51單片機(jī)Atmel公司生產(chǎn)的89C51單片機(jī)是一種低功耗/低電壓高性能的8位單片機(jī),它采用CMOS和高密度非易失性存儲技術(shù),而且其輸出引腳和指令系統(tǒng)都與MC

13、S-51兼容;片內(nèi)的Flash ROM允許在系統(tǒng)內(nèi)改編程序或用常規(guī)的非易失性編程器來編程,內(nèi)部除CPU外,還包括256字節(jié)RAM,4個(gè)8位并行I/O口,5個(gè)中斷源,2個(gè)中斷優(yōu)先級,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,89C51單片機(jī)是一種功能強(qiáng)、靈活性高且價(jià)格合理的單片機(jī),完全滿足本系統(tǒng)設(shè)計(jì)需要。89C51單片機(jī)部分引腳功能介紹:XTAL2(18腳):接外部晶體和微調(diào)電容的一端;在89C51 片內(nèi)它是振蕩電路反向放大器的輸出端,振蕩電路的頻率就是晶體固有頻率。若需采用外部時(shí)鐘電路時(shí),該引腳輸入外部時(shí)鐘脈沖。89C51/8031正常工作時(shí),該引腳應(yīng)有脈沖信號輸出。XTAL1(19腳):接外部晶體和微調(diào)電

14、容的另一端;在片內(nèi)它是振蕩電路反向放大器的輸入端,在采用外部時(shí)鐘時(shí),該引腳輸入外部時(shí)鐘脈沖。RST/VPD(9腳):RST:復(fù)位信號輸入端,高電平有效。當(dāng)此輸入端保持兩個(gè)機(jī)器周期的高電平時(shí),就可以完成復(fù)位操作。RST/VPD(9腳):VPD :RST引腳的第二功能,備用電源輸入端。當(dāng)主電源Vcc 發(fā)生故障,降低到低電平規(guī)定值時(shí),將+5V電源自動接入該引腳,為RAM提供備用電源,以保證RAM中的信息不丟失,使得復(fù)位后能繼續(xù)正常運(yùn)行。EA/Vpp(31腳):Vpp:對8751片內(nèi)EPROM固化編程時(shí),編程電壓輸入端(12-21V)。P0口:漏極開路的8位準(zhǔn)雙向I/O口,每位能驅(qū)動8個(gè)LS型TTL負(fù)

15、載。P0口可作為一個(gè)數(shù)據(jù)輸入/輸出口;在CPU訪問片外存儲器時(shí),P0口為分時(shí)復(fù)用的低8位地址總線和8位數(shù)據(jù)總線。P1口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動4個(gè)LS型TTL負(fù)載。P3口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動4個(gè)LS型TTL負(fù)載。P3口除作為一般I/O口外,每個(gè)引腳都有第二功能。4軟件編程4.1主流程圖開始If(k5=0)If(k2=0)If(k1=0)判斷按鍵減速按鍵加速停止反轉(zhuǎn)正轉(zhuǎn)按鍵If(k4=0)If(k3=0)4.2主要程序:#include <reg52.h>#define uint unsigned int#define ucha

16、r unsigned charuchar code FFW= 0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09;uchar code REV= 0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01;sbit K1 = P30; sbit K2 = P31; sbit K3 = P32; sbit K4 = P33; sbit K5 = P34; void DelayMS(uint ms) uchar i;while(ms-) for(i=0;i<120;i+);void SETP_MOTOR_FFW(uchar n) uchar i

17、,j;int M=25;for(i=0;i<5*n;i+) for(j=0;j<8;j+) if(K3 = 0)break;P1 = FFWj;if(K4 = 0)P0=0xf6;DelayMS(20);elseif(K5 = 0)P0=0xee;DelayMS(100);elseDelayMS(50);if(K4 = 1&&K5 = 1)P0 = 0xfe;void SETP_MOTOR_REV(uchar n) uchar i,j;int M=25;for(i=0;i<5*n;i+) for(j=0;j<8;j+) if(K3 = 0)break;P

18、1 = REVj;if(K4 = 0)P0=0xf5;DelayMS(20);elseif(K5 = 0)P0=0xed;DelayMS(100);elseDelayMS(50);if(K4 = 1&&K5 = 1)P0 = 0xfd;void main() uchar N = 50;while(1) if(K1 = 0)P0 = 0xfe;SETP_MOTOR_FFW(N);if(K3 = 0) break;else if(K2 = 0) P0 = 0xfd;SETP_MOTOR_REV(N);if(K3 = 0) break;else P0 = 0xfb;P1 = 0x03

19、;4.3程序分塊介紹:4.3.1正反轉(zhuǎn)的控制字設(shè)定:uchar code FFW= 0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09;uchar code REV= 0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01;本列4組步進(jìn)電動機(jī)工作于8拍方式正轉(zhuǎn)勵(lì)磁序列為A->AB->B->BC->C->CD->D->DA反轉(zhuǎn)勵(lì)磁序列為AD->D->CD->C->BC->B->BA->A正轉(zhuǎn):sbit K1 = P30;反轉(zhuǎn):sbit K2 = P31;停止sb

20、it K3 = P32;加速:sbit K4 = P33; 減速:sbit K5 = P34; 4.3.2延時(shí)程序:void DelayMS(uint ms) uchar i;while(ms-) for(i=0;i<120;i+);4.3.3正轉(zhuǎn)部分void SETP_MOTOR_FFW(uchar n) uchar i,j;int M=25;for(i=0;i<5*n;i+) for(j=0;j<8;j+) if(K3 = 0)break;P1 = FFWj;if(K4 = 0)/加速P0=0xf6;DelayMS(20);elseif(K5 = 0)/減速P0=0xee;DelayMS(100);elseDelayMS(50);if(K4 = 1&&K5 = 1)P0 = 0xfe;按照正轉(zhuǎn)勵(lì)磁序列A->AB->B->BC->C->CD->D->DA進(jìn)行通電,轉(zhuǎn)動n圈,在轉(zhuǎn)動過程中,按下加速按鈕,電機(jī)加速,對應(yīng)的LED燈會亮,按下減速,電機(jī)減速,對應(yīng)的LED燈會亮,如果按下停止按鈕,會立刻停止轉(zhuǎn)動,亮停止燈。4.3.4反轉(zhuǎn)部分:void SETP_MOTOR_REV(uchar n) uchar i,j;int M=25;for(i=0;i<5*n;i+) for(j=0;j<

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論