基于單片機(jī)控制的步進(jìn)電機(jī)控制器開發(fā)設(shè)計(jì)-大學(xué)畢業(yè)論文畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料_第1頁(yè)
基于單片機(jī)控制的步進(jìn)電機(jī)控制器開發(fā)設(shè)計(jì)-大學(xué)畢業(yè)論文畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料_第2頁(yè)
基于單片機(jī)控制的步進(jìn)電機(jī)控制器開發(fā)設(shè)計(jì)-大學(xué)畢業(yè)論文畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料_第3頁(yè)
基于單片機(jī)控制的步進(jìn)電機(jī)控制器開發(fā)設(shè)計(jì)-大學(xué)畢業(yè)論文畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料_第4頁(yè)
基于單片機(jī)控制的步進(jìn)電機(jī)控制器開發(fā)設(shè)計(jì)-大學(xué)畢業(yè)論文畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、基于單片機(jī)控制的步進(jìn)電機(jī)控制器 摘要:本系統(tǒng)采用AT89S51單片機(jī)來控制步進(jìn)電機(jī),不僅可以實(shí)現(xiàn)電機(jī)的正反轉(zhuǎn),還可以實(shí)現(xiàn)17級(jí)調(diào)速,以及LED狀態(tài)顯示功能,電路設(shè)計(jì)可靠且易于實(shí)現(xiàn),程序設(shè)計(jì)簡(jiǎn)單易懂。本系統(tǒng)主要由按鍵電路、單片機(jī)最小系統(tǒng)、AT89S51單片機(jī)、步進(jìn)電機(jī)狀態(tài)顯示電路、驅(qū)動(dòng)電路以及步進(jìn)電機(jī)等幾部分組成。輸出驅(qū)動(dòng)電路采用一個(gè)六非門芯片74LS04和四個(gè)三極管,來驅(qū)動(dòng)步進(jìn)電機(jī)的四相繞組。短路保護(hù)采用一個(gè)0.4A的保險(xiǎn)管,防止因繞組短路而燒毀燒毀電機(jī)。關(guān)鍵詞:步進(jìn)電機(jī) 單片機(jī) 單片機(jī)最小系統(tǒng) 子程序 1 引言 步進(jìn)電機(jī)能將輸入的電脈沖信號(hào)轉(zhuǎn)換成輸出軸的角位移或直線位移。這種電機(jī)每輸入一個(gè)脈

2、沖信號(hào),輸出軸便轉(zhuǎn)動(dòng)一定的角度或前進(jìn)一步,因此又被稱作脈沖電機(jī)或步級(jí)電機(jī)。步進(jìn)電機(jī)輸出軸的角位移量與輸入脈沖數(shù)成正比,不受電壓以及環(huán)境溫度的影響,也沒有累積的定位誤差,因此控制輸入的數(shù)字脈沖數(shù)即可實(shí)現(xiàn)電機(jī)的精確定位;而步進(jìn)電機(jī)輸出軸的轉(zhuǎn)速與輸入的脈沖頻率成正比,控制輸入的脈沖頻率就能準(zhǔn)確的控制步進(jìn)電機(jī)的轉(zhuǎn)速,可以實(shí)現(xiàn)在寬廣的范圍內(nèi)精確調(diào)速。由于步進(jìn)電機(jī)的這一特點(diǎn)正好符合數(shù)字控制系統(tǒng)的要求,同時(shí)電子技術(shù)的發(fā)展也解決了步進(jìn)電機(jī)的電源問題。因此隨著計(jì)算機(jī)技術(shù)和數(shù)字控制技術(shù)的發(fā)展,步進(jìn)電機(jī)的應(yīng)用也日益廣泛。目前,步進(jìn)電機(jī)應(yīng)用于磁盤驅(qū)動(dòng)器、數(shù)控機(jī)床、軋鋼機(jī)、機(jī)器人、以及自動(dòng)化儀表等方面。2 總體設(shè)計(jì)方案

3、2.1 設(shè)計(jì)思路本系統(tǒng)主要由按鍵電路、單片機(jī)最小系統(tǒng)、AT89S51單片機(jī)、步進(jìn)電機(jī)電機(jī)電路、驅(qū)動(dòng)電路以及步進(jìn)電機(jī)等幾部分組成。驅(qū)動(dòng)電路可以采用FT5754芯片來實(shí)現(xiàn),芯片內(nèi)部有四組3A、5W、100V的PNP達(dá)林斯頓電路及四個(gè)二極管,輸出四個(gè)管腳、分別與步進(jìn)電機(jī)的四相繞組向連接。但考慮到所采用的步進(jìn)電機(jī)功率和額定電流都較小,以及經(jīng)濟(jì)性方面,本設(shè)計(jì)直接采用四個(gè)NPN型三極管來作為驅(qū)動(dòng)電路。步進(jìn)電機(jī)的控制主要通過5個(gè)按鍵來實(shí)現(xiàn),這5個(gè)按鍵分別表示“正轉(zhuǎn)”、“反轉(zhuǎn)”、“加速”、“減速”和“停止”。單片機(jī)輸出四路脈沖信號(hào)觸發(fā)驅(qū)動(dòng)電路的四個(gè)NPN型三極管,其中觸發(fā)導(dǎo)通的三極管可驅(qū)動(dòng)步進(jìn)電機(jī)的相應(yīng)繞組得

4、電,即步進(jìn)電機(jī)獲得脈沖,而產(chǎn)生一定的角位移。單片機(jī)循序不斷的輸出時(shí)序脈沖,就可以實(shí)現(xiàn)步進(jìn)電機(jī)的旋轉(zhuǎn)了。2.2 總體設(shè)計(jì)框圖總體設(shè)計(jì)框圖如圖1所示。3 設(shè)計(jì)原理分析89S51單片機(jī)按鍵控制電路單片機(jī)最小系統(tǒng)步進(jìn)電機(jī)狀態(tài)顯示電路步進(jìn)電機(jī)驅(qū)動(dòng)電路步進(jìn)電機(jī)圖1 總體設(shè)計(jì)框圖各分支電路的理論分析如下:3.1 步進(jìn)電機(jī)本系統(tǒng)采用25Y48H01型步進(jìn)電機(jī),其相關(guān)參數(shù)如表1所示,內(nèi)部接線圖如圖2所示。表1 25Y48H01型步進(jìn)電機(jī)的相關(guān)參數(shù)型號(hào)步距角相數(shù)電壓(V)電流(A)電阻()最大靜止轉(zhuǎn)矩(g·cn)轉(zhuǎn)子轉(zhuǎn)動(dòng)慣量(g·cm2)重量(g)25Y48H017.5450.5101001.

5、035圖2 25Y48H01型步進(jìn)電機(jī)內(nèi)部接線圖步進(jìn)電機(jī)的勵(lì)磁方式有1相勵(lì)磁、2相勵(lì)磁和1-2相勵(lì)磁3種。由于2相勵(lì)磁具有轉(zhuǎn)矩大、振動(dòng)小等優(yōu)點(diǎn),在目前使用較為普遍,本系統(tǒng)的設(shè)計(jì)也采用這種勵(lì)磁方式。步進(jìn)電機(jī)各相繞組的勵(lì)磁時(shí)序如表2所示。3.2 AT89S51單片機(jī)及其最小系統(tǒng)Atmel公司的生產(chǎn)的89C51單片機(jī)是一種低功耗/低電壓、高性能的8位單片機(jī),它采用CMOS和高密度非易失性存儲(chǔ)器技術(shù),而且其輸出引腳和指令系統(tǒng)都與MCS-51兼容;片內(nèi)的Flash ROM允許在系統(tǒng)內(nèi)改編程序或用常規(guī)的非易失性編程器來編程,內(nèi)部除CPU外,還包括256字節(jié)RAM,4K字節(jié)的ROM,4個(gè)8位并行I/O口,5

6、個(gè)中斷源,2個(gè)中斷優(yōu)先級(jí),2個(gè)16位可編程定時(shí)計(jì)數(shù)器。89C51單片機(jī)是一種功能強(qiáng)、靈活性高且價(jià)格合理的單片機(jī),完全滿足本系統(tǒng)設(shè)計(jì)需要。繞組脈沖12345678910A1001100110B1100110011C0110011001D0011001100表2 步進(jìn)電機(jī)四相繞組的勵(lì)磁時(shí)序 單片機(jī)最小系統(tǒng)包括振蕩電路和復(fù)位電路兩部分。振蕩電路用12M晶振,這樣一個(gè)機(jī)器周期 。復(fù)位電路采用手動(dòng)復(fù)位,當(dāng)按下RESET按鍵,電阻R1、R2接通5V電源,此時(shí)R2分得電壓大約為4V,為高電平,即置單片機(jī)RST腳為高電平,單片機(jī)復(fù)位。3.3 按鍵電路采用5個(gè)按鍵用來控制步進(jìn)電機(jī)的5種狀態(tài),即“正轉(zhuǎn)”、“反轉(zhuǎn)”

7、、“加速”、“減速”和“停止”。當(dāng)按下其中一個(gè)按鍵時(shí),電源通過上拉電阻和按鍵到地形成通路,使相應(yīng)輸入管腳接地,即給單片機(jī)送入一個(gè)低電平,此低電平即為有效電平。按鍵電路如圖4所示。3.4 步進(jìn)電機(jī)狀態(tài)顯示電路狀態(tài)指示采用三種顏色的發(fā)光二極管,“綠色”、“黃色”和“紅色”分別表示步進(jìn)電機(jī)的“正轉(zhuǎn)”、“反轉(zhuǎn)”和“停止”狀態(tài)。限流電阻選擇1K的電阻,使發(fā)光二極管的壓降為3V左右。3.5 步進(jìn)電機(jī)驅(qū)動(dòng)電路從單片機(jī)輸出四路脈沖信號(hào),經(jīng)過非門和限流電阻,送到四個(gè)NPN型三極管的基極。如果從單片機(jī)輸出的是高電平,經(jīng)過非門變成低電平,送入三極管,使三極管截止;如果從單片機(jī)輸出的是低電平,經(jīng)過非門變成高電平,此高

8、電平使三極管導(dǎo)通。步進(jìn)電機(jī)的每相繞組并上一個(gè)二極管,目的是防止在三極管瞬間截止時(shí),繞組電感所產(chǎn)生很高的感應(yīng)電動(dòng)勢(shì)擊穿三極管。非門采用74LS04芯片,其內(nèi)部共有六個(gè)獨(dú)立的非門,這里只用了其中的四個(gè)。驅(qū)動(dòng)電路如圖4所示。圖3按鍵控制電路圖4 步進(jìn)電機(jī)驅(qū)動(dòng)電路4 程序原理分析41 程序設(shè)計(jì)思路根據(jù)外圍電路的設(shè)計(jì),單片機(jī)的輸入為P1口的前五個(gè)管腳,輸出為P1口的后三個(gè)管腳和P2口的前四個(gè)管腳。主程序部分首先向驅(qū)動(dòng)電路輸出四路高電平,使電機(jī)停轉(zhuǎn),然后設(shè)置定時(shí)器T0的工作方式以及給允許中斷位置高電平,點(diǎn)亮“停轉(zhuǎn)”的狀態(tài)顯示,接下來進(jìn)行按鍵掃描,如果有“正轉(zhuǎn)”或“反轉(zhuǎn)”按鍵按下,則跳轉(zhuǎn)到相應(yīng)的程序段;如果

9、有“停止”按鍵或沒有任何按鍵按下,則跳轉(zhuǎn)到程序的初始部分。正轉(zhuǎn)部分,首先點(diǎn)亮“正轉(zhuǎn)”的狀態(tài)指示,隨后輸出起始脈沖,接下來掃描按鍵,判斷是否執(zhí)行加速、減速或停轉(zhuǎn),然后調(diào)用給定時(shí)器T0賦初始值子程序,最后左移累加器A中的數(shù)值,如此循環(huán)便可實(shí)現(xiàn)步進(jìn)電機(jī)的正轉(zhuǎn)。反轉(zhuǎn)部分與正轉(zhuǎn)部分的程序設(shè)計(jì)雷同,不再贅述。加速和減速部分,改變定時(shí)器定時(shí)的初始值,即改變定時(shí)時(shí)間便可實(shí)現(xiàn)。42程序分析首先,進(jìn)行P2口以及定時(shí)器的初始化,定時(shí)器工作于方式1,對(duì)P1.7清零,即點(diǎn)亮紅色發(fā)光二極管,表示步進(jìn)電機(jī)的“停止”的狀態(tài)。用JNB指令來掃描按鍵電路,按下則跳轉(zhuǎn),沒有按下則繼續(xù)向下執(zhí)行。如果P1.0按下,則跳轉(zhuǎn)到首地址為RU

10、N的位置,先調(diào)用一個(gè)10ms的延時(shí)子程序來消除按鍵的抖動(dòng),對(duì)P1.6清零,即點(diǎn)亮綠色發(fā)光二極管,表示步進(jìn)電機(jī)的“正轉(zhuǎn)”狀態(tài),然后通過累加器A輸出起始脈沖信號(hào)00110011B到P2口。隨后判斷加速、減速和停止按鍵是否按下,如果其中一個(gè)被按下,則跳到相應(yīng)的程序段,否則程序繼續(xù)向下執(zhí)行。接下來調(diào)用賦定時(shí)器初始值子程序TIME,根據(jù)R0的數(shù)據(jù)的不同,使用查表指令來讀取TABLE1和TABLE2中的數(shù)據(jù)分別賦給定時(shí)器T0的兩個(gè)八位寄存器TH0和TL0。返回后,利用查詢法來等待T0的中斷,當(dāng)定時(shí)結(jié)束時(shí)跳出循環(huán),并對(duì)中斷標(biāo)志位TF0清零。左移指令使累加器A中的數(shù)據(jù)循環(huán)左移一位,最后返回到RUN1的位置。如

11、果P1.1按下,則執(zhí)行反轉(zhuǎn)程序,該程序執(zhí)行過程與正轉(zhuǎn)部分相似,不同之處:一是反轉(zhuǎn)要點(diǎn)亮黃色發(fā)光二極管,二是對(duì)脈沖信號(hào)循環(huán)右移,從而實(shí)現(xiàn)反轉(zhuǎn)。加速子程序主要使R0內(nèi)的數(shù)據(jù)加1,即把速度提高一個(gè)級(jí)別,R0內(nèi)的數(shù)據(jù)還要與16相減,來確認(rèn)是否達(dá)到最高轉(zhuǎn)速,如果R0內(nèi)的數(shù)據(jù)大于16,則把16賦給R0,表示已達(dá)到最高轉(zhuǎn)速,不能再加速了。減速子程序主要使R0內(nèi)的數(shù)據(jù)減1,即把速度降低一個(gè)級(jí)別,如果R0內(nèi)的數(shù)據(jù)為0,即速度為最低轉(zhuǎn)速,則直接跳過減一指令,保持這個(gè)最低轉(zhuǎn)速。賦定時(shí)器初值子程序,利用兩個(gè)查表指令來讀取預(yù)置的數(shù)據(jù),當(dāng)轉(zhuǎn)速改變時(shí),R0內(nèi)的數(shù)據(jù)發(fā)生變化,這時(shí)賦給定時(shí)器的初值也發(fā)生了變化,改變了定時(shí)時(shí)間,

12、即脈沖的時(shí)間間隔發(fā)生變化,從而實(shí)現(xiàn)了電機(jī)變速。4.3 定時(shí)器計(jì)數(shù)初值的設(shè)定程序設(shè)計(jì)選用定時(shí)器T0的定時(shí)中斷,來控制步進(jìn)電機(jī)每走一步所用的時(shí)間,改變了T0的定時(shí)時(shí)間,就改變了步進(jìn)電機(jī)的轉(zhuǎn)速。定時(shí)器T0工作于方式1,晶振fosc=12MHZ。由于采用的步進(jìn)電機(jī)的步距角為7.5°,轉(zhuǎn)一圈需要48個(gè)脈沖,設(shè)轉(zhuǎn)速為N(r/min),則每分鐘需送脈沖數(shù)據(jù)的個(gè)數(shù)為48N,即每送一個(gè)脈沖信號(hào)需時(shí):。定時(shí)器T0的計(jì)數(shù)初值 。設(shè)步進(jìn)電機(jī)最低轉(zhuǎn)速為20r/min,最高轉(zhuǎn)速為100r/min,每5r設(shè)為一個(gè)速度級(jí),一共17級(jí)。經(jīng)過計(jì)算,得出步進(jìn)電機(jī)的轉(zhuǎn)速對(duì)應(yīng)于定時(shí)器初值如表3所示。表3 電機(jī)速度及對(duì)應(yīng)定時(shí)器

13、計(jì)數(shù)初值轉(zhuǎn)速N/(r/min)單步時(shí)間T/(s)T0的計(jì)數(shù)初值Tx (十進(jìn)制)T0的計(jì)數(shù)初值Tx (十六進(jìn)制)206250079361F002550000194564C003041666.67271366A003535714.2932621.717F6D4031250367368F804527777.78399369C00502500042496A6005522727.2744590.55AE2E6020833.3345673.93B2696519230.7747812.92BAC47017857.1449078.86BFB67516666.6750176C400801562551136C7C

14、08514705.8851983.06CB0F9013888.8952736CE009513157.8753280.68D0201001250054016D3004.4 程序設(shè)計(jì)流程圖程序流程如圖5所示。開始程序初始化清零P1.5,點(diǎn)亮紅色LED延時(shí)10ms,去抖動(dòng)點(diǎn)亮狀態(tài)指示燈輸出脈沖信號(hào)掃描按鍵調(diào)用加速或減速子程序賦定時(shí)器初值,并開啟定時(shí)器A左移或右移掃描按鍵主程序賦定時(shí)器初值子程序A入棧TH0R0+TABLE1TL0R0+TABLE2開啟定時(shí)器T0A出棧返回10ms延時(shí)子程序R710HR60FFHR6為零嗎?R7為零嗎?返回YN YN 圖5 程序執(zhí)行流程5 總結(jié)與體會(huì)通過此次單片機(jī)課程設(shè)

15、計(jì),使我對(duì)單片機(jī)控制系統(tǒng)有了更加全面和深入的了解,對(duì)電路板的設(shè)計(jì)和制作也更加的熟練。電路的設(shè)計(jì)并不復(fù)雜,兩天的時(shí)間就完成了,但之后編寫程序,發(fā)現(xiàn)有一些不妥的地方,進(jìn)行了調(diào)整,隨后開始制作PCB版圖,還算順利。程序的設(shè)計(jì)讓我犯了不少的困惑,以前編寫的都是一些功能簡(jiǎn)單的程序,這樣系統(tǒng)的程序編寫還是第一次,發(fā)現(xiàn)自己好像有些摸不到頭腦,可能是編寫程序的時(shí)機(jī)還不夠成熟。而后,在圖書館借了幾本資料,仔細(xì)的研究一下,雖然實(shí)現(xiàn)的功能不大一致,但至少可以提供一些思路。果然,有了效果,我居然只用了一個(gè)下午的時(shí)間就編寫完成了,真是太神奇了。等拿到步進(jìn)電機(jī)進(jìn)行調(diào)試,電機(jī)卻沒有一點(diǎn)反應(yīng),經(jīng)過仔細(xì)的審查,發(fā)現(xiàn)按鍵輸入我使

16、用的是單片機(jī)的P1口,可程序里我用的卻是P0口,于是對(duì)程序做了相應(yīng)的修改,調(diào)試成功。三周的實(shí)習(xí)即將結(jié)束,經(jīng)過了這樣一個(gè)設(shè)計(jì)和制作的過程,體會(huì)到這樣實(shí)踐真的是很必要,不僅可以加深對(duì)書本上的知識(shí)理解,還可以鍛煉自己的動(dòng)手能力和綜合運(yùn)用能力。經(jīng)過這次實(shí)習(xí),我更加喜歡自己的專業(yè)了,也對(duì)自己更有信心了參考文獻(xiàn)1 李朝青.單片機(jī)原理及接口技術(shù)M.北京:北京航空航天大學(xué)出版社,2005.92 蔡朝洋.單片機(jī)控制實(shí)習(xí)與專題制作.北京:北京航空航天大學(xué)出版社,2006.113 汪道輝.單片機(jī)系統(tǒng)設(shè)計(jì)與實(shí)踐.北京:電子工業(yè)出版社,2006.54 張大明.單片機(jī)控制實(shí)訓(xùn)指導(dǎo)及綜合應(yīng)用實(shí)例.北京:機(jī)械工業(yè)出版社,20

17、07.35 楊天明,陳杰.電機(jī)與拖動(dòng).北京:中國(guó)林業(yè)出版社;北京大學(xué)出版社,2006.8附錄1 步進(jìn)電機(jī)總體控制電路附錄2 源程序代碼ORG 0000HAJMP MAINORG 0030HMAIN: MOV P2,#0FFHMOV R2,#00HMOV SP,#40HMOV TMOD,#01HMOV IE,#82HCLR P1.7SETB P1.5SETB P1.6KEY: JNB P1.0,RUNJNB P1.1,RERUNJNB P1.4,KEYSJMP KEYRUN: JNB P1.0,$ACALL DELAYCLR P1.6SETB P1.5SETB P1.7MOV A,# 00110

18、011BRUN1: MOV P2,AJNB P1.1,RERUNJB P1.2, KEEPACALL SPEEDUPKEEP: JB P1.3, KEEP1ACALL SPEEDLOWKEEP1: JNB P1.4,MAINACALL TIMELOOP1: JBC TF0,NEXT1AJMP LOOP1NEXT1: RL AAJMP RUN1RERUN: JNB P1.1,$ACALL DELAY CLR P1.5SETB P1.6SETB P1.7MOV A,# 00110011BRERUN1: MOV P2,AJNB P1.0,RUNJB P1.2,THENACALL SPEEDUPTHEN: JB P1.3,THEN1ACALL SPEEDLOWTHEN1: JNB P1.4,MAINACALL TIMELOOP2: JBC TF0,NEXT2A

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論