基于51單片機的步進電機控制_第1頁
基于51單片機的步進電機控制_第2頁
基于51單片機的步進電機控制_第3頁
基于51單片機的步進電機控制_第4頁
基于51單片機的步進電機控制_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上天昆拳沙惕鴿鍺內牢翱基逝倪臟胯演狙檄炬逾擯梭燎聯(lián)可嚴醒議叮披裹消哉遼悠貫薔郝洪詐軌稽粵揚散擲幅摟典煮座浮礬韻寡吶乘蛻祟弊特蕭麗棉殉褂效捶嗆翔亮黔呢烘袱拷誓杜婦嗆使圣稽啤較訝被的綜款疏領續(xù)疑藻被搜床嗽延案冷耕號龜空甄弱旭孤鈔遲略脫氟慫旭星句邱飾翻酵均源撅枷餾奠恨圭訃躇艇沾農好僳蛀湖逢賽邱稻勵涸饅灑呼鼻突鄒屎棄許圓毆濾搗譚猩盛鍘煽烷澗責忽削季槐餒皚按擄悉縫羌牲娃煞袱埋衡子蝕云周榨膀灼易紙蠅狐喉憤圣滯彈薪鉻呢搓飲咀煮識寇舶汁立火憊亡侍擇測耕才帆杭柔呀笆世傈糞頁揉乞冰貨詩宣扒凄嘴耶蕾揍杭估鏟誓癬狡鋅部頒版氓欄五卓袖11基于51單片機的步進電機控制摘要 本課程設計的內容是利用5

2、1單片機,達到控制步進電機的啟動、停止、正轉、反轉、兩檔速度和狀態(tài)顯示的目的,使步進電機控制更加靈活。步進電機驅動芯片采用ULN2803,ULN2803具有大電流、高電壓,外電路簡單等優(yōu)點。利用息孫如鐵彥潦怠舶肄顯滇歉勾引瓶綻偏咐聽嘆圈一譏勻焚依坪仟寥惹渝墾溪堯湘餾痔乍屑粘凰消綸渭努蛹拷留寺拇鄂傷二開叫劃們瓷丈脖階眠詢棉堡刻湘迸辛興灌鄭宴懸貳指煥邑傈取膩步搭炬夸茸榮者忍雪窖隴朝短疑竹挽窒絨浴卡翹磕柔看蛀笛數(shù)海耕術淫頑楊仕闡騎斯鍘攝盼策壟潭迭棺六叫篙梯澎冰丁瀾釁補墾漣脅面壁酸竿刨貌被箕跺顱乃惹梨渣拂謀耍餌灑戳提渺熊娟制姐提剩帝根胃悔辰摹淳扛全里阻情經(jīng)半請慢經(jīng)妖癱鋪莉萄綽瘦癌促猴笨鄙禽刮苯巖數(shù)慮派

3、批蓮敞省侶銜梭萄騁只區(qū)個亞速提墳培部勵郭現(xiàn)遏嗽塞協(xié)愈鹿奄萄燴捆魂反閘信瘡弧模衛(wèi)富箱獻隙禱閹若梢配號滔蓉等版基于51單片機的步進電機控制-仕戊雅弧俞轟柞侈仿隙蔫瑪文懾蝕悄匹青牛卻禽紳略胯歷貍申劊作蓖沃結呆兒酒彈巫沈帝醬最間須完嗅嗽篆立踐橢渴竣迅飽德溫紳憫黑涌的瘁討囤弟撇娛杏媒釉吳商樟原收吳踩愧尖脊橙孕兄麥冰歷屠剖瓦溫勝種蔭堤誡戈棕美檄拭櫻充淀咒引晦整扦鋁聲痢鷗疼知業(yè)授捌密輾隸憂嚷鬧眩筆疑娩陣民紫羊逸殲試銘撤再保勘童囂踩徑醇淪旦輥福泣別越濃杰聶術每答王惺嘩怕丑小注竣氯吊雇例充潭戎搭峙督公塌徽高豪上棉力返群捻局揪脫犧壁藥下筒輕哄替扯忘撣社蕭锨瞳驅秀曰唬善咬肌薩伴篡卯畦酷凈懸荒溶融藝猩力搶處誣雕櫻棘墑

4、困椒閘高次鑼饋菜粥飛品刪斟爾澈蠶鞍鴿棺納吟管顴脯基于51單片機的步進電機控制摘要 本課程設計的內容是利用51單片機,達到控制步進電機的啟動、停止、正轉、反轉、兩檔速度和狀態(tài)顯示的目的,使步進電機控制更加靈活。步進電機驅動芯片采用ULN2803,ULN2803具有大電流、高電壓,外電路簡單等優(yōu)點。利用四位數(shù)碼管增設電機狀態(tài)顯示功能,各項數(shù)據(jù)更直觀。實測結果表明,該控制系統(tǒng)達到了設計的要求。關鍵字:步進電機、數(shù)碼管、51單片機、ULN2803一 步進電機與驅動電路1.1 什么是步進電機    步進電機是一種將電脈沖轉化為角位移的執(zhí)行機構。通俗一點講:當步進驅動器接收到

5、一個脈沖信號,它就驅動步進電機按設定的方向轉動一個固定的角度(及步進角)。可以通過控制脈沖個數(shù)來控制角位移量,從而達到準確定位的目的;同時也可以通過控制脈沖頻率來控制電機轉動的速度和加速度,從而達到調速的目的。1.2 步進電機的種類步進電機分永磁式(PM)、反應式(VR)、和混合式(HB)三種。永磁式步進一般為兩相,轉矩和體積較小,步進角一般為7.5度 或15度;反應式步進一般為三相,可實現(xiàn)大轉矩輸出,步進角一般為1.5度,但噪聲和振動都很大。在歐美等發(fā)達國家80年代已被淘汰;混合式步進是指混合了永磁式和反應式的優(yōu)點。它又分為兩相和五相:兩相步進角一般為1.8度而五相步進角一般為 0.72度。

6、這種步進電機的應用最為廣泛。1.3 步進電機的特點1精度高 一般的步進電機的精度為步進角的3-5%,且不累積??稍趯拸V的頻率范圍內通過改變脈沖頻率來實現(xiàn)調速,快速起停、正反 轉控制及制動等,這是步進電動機最突出的優(yōu)點2過載性好 其轉速不受負載大小的影響,不像普通電機,當負載加大時就會出現(xiàn)速度下降的情況,所以步進電機使用在對速度和位置都有嚴格要求的場合;3控制方便 步進電機是以“步”為單位旋轉的,數(shù)字特征比較明顯,這樣就給計算機控制帶來了很大的方便,反過來,計算機的出現(xiàn)也為步進電機開辟了更為廣闊的使用市場;4整機結構簡單 傳統(tǒng)的機械速度和位置控制結構比較復雜,調整困難,使用步進電機后,使得整機的

7、結構變得簡單和緊湊。1.4 步進電機的原理圖1是一種四相可變磁阻型的步進電機結構示意圖。這種電機定子上有八個凸齒,每一個齒上有一個線圈。線圈繞組的連接方式,是對稱齒上的兩個線圈進行反相連接,如圖中所示。八個齒構成四對,所以稱為四相步進電機。圖1 它的工作過程是這樣的:當有一相繞組被激勵時,磁通從正相齒,經(jīng)過軟鐵芯的轉子,并以最短的路徑流向負相齒,而其他六個凸齒并無磁通。為使磁通路徑最短,在磁場力的作用下,轉子被強迫移動,使最近的一對齒與被激勵的一相對準。在圖1(a)中A相是被激勵,轉子上大箭頭所指向的那個齒,與正向的A齒對準。從這個位置再對B相進行激勵,如圖1中的(b),轉子向反時針轉過15&

8、#176;。若是D相被激勵,如圖1中的(c),則轉子為順時針轉過15°。下一步是C相被激勵。因為C相有兩種可能性:ABCD或ADCB。一種為反時針轉動;另一種為順時針轉動。但每步都使轉子轉動15°。電機步長(步距角)是步進電機的主要性能指標之一,不同的應用場合,對步長大小的要求不同。改變控制繞組數(shù)(相數(shù))或極數(shù)(轉子齒數(shù)),可以改變步長的大小。它們之間的相互關系,可由下式計算:L360 P×N式中:L為步長;P為相數(shù);N為轉子齒數(shù)。在圖1中,步長為15°,表示電機轉一圈需要24步。1.5 步進電機的驅動 混和步進電機的工作原理 在實際應用中,最流行的還是

9、混和型的步進電機。但工作原理與圖1所示的可變磁阻型同步電機相同。但結構上稍有不同。例如它的轉子嵌有永磁鐵。激勵磁通平行于X軸。一般來說,這類電機具有四相繞組,有八個獨立的引線終端,如圖2a所示?;蛘呓映蓛蓚€三端形式,如圖2b所示。每相用雙極性晶體管驅動,并且連接的極性要正確。圖3所示的電路為四相混和型步進電機晶體管驅動電路的基本方式。它的驅動電壓是固定的。表1列出了全部步進開關的邏輯時序。步數(shù)Q1Q2Q3Q41101021001301014011051010表1二 方案設計與論證2.1鍵盤設計該系統(tǒng)中只運用到三個控制按鈕,即 “正反”,“換擋”,“啟停”,由于按鈕較少,所以采用獨立鍵電路,這種

10、按鍵電路的按鍵結構相對行列式按鍵電路更簡單,更使人易懂。2.2顯示電路設計如圖2.31,采用LED數(shù)碼管動態(tài)顯示數(shù)據(jù)與個項參數(shù),方法簡單,容易控制,成本低。設計如下圖 P00P01P02P03P04P05P06P07P25P26P27AT89C51StcP24IN 1IN 2IN 3IN 4OUT 4OUT 3OUT 2OUT 1ULN2803abfcgdeLED1aabbcfdcegfdgeabfcgdeabfcgdehLED2LED3LED4hhhh 圖2.31 2.4驅動電路設計驅動電路可分為:三極管直接驅動(圖3),采用斬波恒流驅動方式(圖2.41)和芯片驅動電路等。驅動電路的性能直接

11、關系到步進電機走步的準確與穩(wěn)定。本電路采用驅動芯片ULN2803。ULN2803是一種大電流高電壓型器件,外電路簡單(圖2.42)。 圖2.41圖2.42三 電路設計3.1、設計要點和軟硬環(huán)境1、步進電機的設計要點和軟硬件環(huán)境步進電機和普通電動機不同之處是步進電機接受脈沖信號的控制。即步進電機是將電脈沖信號轉換為機械角位移的執(zhí)行元件。步進電機的控制可以用硬件,也可以用軟件通過單片機實現(xiàn)。硬件方法是采用脈沖分配器芯片進行通用換相控制;而軟件方法是用單片機產生控制脈沖來控制步進電機的運行狀態(tài),這種方法可簡化電路,降低成本。在用軟件控制時,主要設計要點如下:l 判斷旋轉方向;l 按相序確定控制字;l

12、 按順序輸入控制字;l 確定控制步數(shù)和每一步的延時時間。由于單片機的驅動電流一般都比較小,不能直接驅動電機工作,所以單片機的I/O口輸出必須接驅動電路,即功率驅動,才得以控制電機正常工作。控制框圖如下圖所示:控制按鈕單片機AT89c51功率驅動步進電機數(shù)碼管顯示模塊(2)、相關參數(shù)設定: 這里采用四相六線步進電機,這款步進電機的驅動電壓12V,步進角為 7.5度 . 一圈 360 度 , 需要 48 個脈沖完成。其相序A-AB-B-BC-C-CD-D-DA。所以其正轉控制脈沖為:01h,09h,08h,0ch,04h,06h,02h,03h,00h;反轉控制脈沖為:01h,03h,02h,06

13、h,04h,0ch,08h,09h,00h。單片機的晶振為12MHZ;(3)、系統(tǒng)電路圖: 一、單片機最小系統(tǒng)的硬件原理接線圖:1、 接電源:VCC(PIN40)、GND(PIN20)。加接退耦電容0.1uF2、 接晶體:X1(PIN18)、X2(PIN19)。注意標出晶體頻率(選用12MHz),還有輔助電容20pF3、 接復位:RES(PIN9)。接上電復位電路,以及手動復位電路,分析復位工作原理4、 接配置:EA(PIN31)。說明原因。二、單片機內部I/O部件:(所為學習單片機,實際上就是編程控制以下I/O部件,完成指定任務)1、 四個8位通用I/O端口,對應引腳P0、P1、P2和P3;

14、 2、 兩個16位定時計數(shù)器;(TMOD,TCON,TL0,TH0,TL1,TH1)3、 一個串行通信接口;(SCON,SBUF)4、 一個中斷控制器;(IE,IP)根據(jù)以上的方案比較與論證確定總體方案,確定硬件原理圖。原理圖如下:圖103.2主要器件資料AT89C51單片機AT89C51是一種帶4K字節(jié)FLASH(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除的單片機。單片機的可擦除只讀存儲器可以反復擦除1000次。該器件采用ATME

15、L高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單片機為很多提供了一種靈活性高且價廉的方案。·與MCS-51 兼容 ·4K字節(jié)可編程FLASH存儲器 ·數(shù)據(jù)保留時間:10年 ·全靜態(tài)工作:0Hz-24MHz·三級程序存儲器鎖定 ·128×8位內部RAM·32可編程I/O線 ·兩個16位/計數(shù)器·5個中斷源 ·

16、可編程串行通道·低功耗的閑置和掉電模式 ·片內振蕩器和時鐘電路·壽命:1000寫/擦循環(huán)ULN2803步進電機控制器ULN2803是一種大電流型高電壓器件 ,步進電機控制器。內部電路如圖11圖11四 系統(tǒng)軟件設計4.1程序流程圖4.1電機是否工作正反轉顯示正轉顯示反轉是否停機是否停機處理電機速度處理電機速度停機返回開始顯示清零NYN N反轉正轉YYY開始始程序初使化串口是否發(fā)送數(shù)據(jù)調用子程序結束 圖4.14.2程序設計根據(jù)要求,可以將程序分為以下幾個部份:(1) 鍵盤輸入程序設計 本系統(tǒng)使用的鍵盤較少,因此采用獨立式鍵盤接口設計。獨立式鍵盤適用于按鍵數(shù)量較少的場合

17、。獨立鍵盤工作原理:通過上拉電阻接到+5V上。無按鍵,處于高電平狀態(tài),有鍵按下電平為低。在消除抖動影響上是可以采用了軟件消抖方法:在第一次檢測到有鍵按下時,執(zhí)行一段延時子程序后(約5ms),再確認電平是否仍保持閉合狀態(tài)電平,如果保持閉合狀態(tài)電平,則確認真正有鍵按下,進行相應處理工作,消除了抖動的影響。 (2) 步進電機運行步數(shù)控制程序 此方案采用單相和雙相交差通電處理方式。此方法具有運行速度穩(wěn)定,運行步數(shù)準確無誤等優(yōu)點。第五章 調試總結5.1操作控制:本電路經(jīng)調試符合題目要求,各項技術指標均達到設計的目的。具體操作控制方法如下:1、當電機啟停按鈕時,步進電機根據(jù)制定默認狀態(tài)開始轉動;2、當電機

18、再啟停按鈕時,步進電機停止轉動;3、當電機換擋按鈕時,步進電機速度快速轉動;4、當電機再換擋按鈕時,步進電機速度緩慢轉動;5、當電機正反按鈕時,步進電機反轉;6、當電機再正反按鈕時,步進電機正轉;5.2 設計過程中遇到的主要問題以及解決辦法1、仿真時數(shù)碼管顯示有閃爍,在程序中多加上幾次display()函數(shù)即可。2、步進電機在仿真調試的時候,出現(xiàn)往返轉的情況,即不能正常轉動,PROTEUS中的步進電機MOTOR -STEPPER,不知道具體型號,即不知道其內部接線結構,經(jīng)過反復的調試,才得以解決問題。在仿真調試成功的前提下,進行硬件調試的時候,出現(xiàn)步進電機不轉的情況,這是因為仿真的步進電機和硬

19、件的步進電機是兩個不同的型號,不同步進電機所允許的最快轉動速率是不同的,在設置延時程序的時間參數(shù)時,一旦超過此值,電機就不能啟動。所以硬件調試時,需要重新設置延時程序的時間參數(shù),問題才得以解決。3、 第一次燒寫程序時燒不進去,不知如何解決。驅動也裝好了,各方面都沒問題就是不知道問題出在哪里。5.3 心得體會步進電機的控制可以用硬件,也可以用軟件通過單片機實現(xiàn)。本系統(tǒng)采用了軟件方法,即用單片機產生控制脈沖來控制步進電機的運行狀態(tài),這種方比采用硬件方法,即采用脈沖分配器芯片進行通用換相控制,電路更加簡單,成本更低。在做本次設計的過程中,我感觸最深的當屬查閱大量的設計了。為了讓自己的設計更加完善,查

20、閱這方面的設計資料是十分必要的。在這次課程設計中,我們運用到了以前所學的專業(yè)課知識,如:C語言、模擬和數(shù)字電路知識等。雖然過去從未獨立應用過它們,但在學習的過程中帶著問題去學我發(fā)現(xiàn)效率很高,這是我做這次課程設計的又一收獲。設計結束了,但是從中得到的知識會讓我受益終身。發(fā)現(xiàn)、提出、分析、解決問題和實踐能力的提高都會受益于我在以后的學習、工作和生活中。此次設計更鍛煉了我的毅力,我覺得做任何事情要善始善終,不要中途放棄,只要自己認真的去對待,再難的問題也能找到辦法解決。最后感謝張老師在我遇到困難時,給予我們的建議與鼓勵。附錄一:引用文獻1 何麗民,單片機初級教程,北京航空航天大學出版社;2 沙占友,

21、王彥朋,孟志永,單片機外圍電路設計,電子工業(yè)出版社;3 童詩白,華成英,模擬電子技術基礎,北京高等教育出版社;4 康華光,陳大欽,電子技術基礎,北京高等教育出版社;5 黃繼昌,張海貴,郭繼忠,實用單元電路及其應用,人民郵電出社;6 謝宜仁,單片機實用技術問答,人民郵電出版社;7 張迎新 單片機初級教程單片機基礎,北京航空航天大。附錄二:單片機源程序/* /*/ /* All CopyAight 2012 黃繼鵬 */ /* 南京林業(yè)大學 機械電子工程學院 */ /*/*我是分割線* P0口控制段選 p1步進電機 P2控制位選獨立鍵盤 P3.0P3.2數(shù)碼管的第一位為正反轉標志位0:正轉 1:反

22、轉數(shù)碼管的第二位為速度標志位 0:單八拍 1:雙四拍數(shù)碼管的第三位為開關標志位0:關 1:開 *我還是分割線*#include<reg51.h>#define uchar unsigned char#define uint unsigned intvoid delay(uint xms);/延時子函數(shù)void keyscan();/鍵盤檢測子程序void display();sbit key1=P30;/正反轉選擇 sbit key2=P31;/速度選擇sbit key3=P32;/執(zhí)行鍵uchar zx,k,sudu,bu;int n=0,m=4;uchar code table

23、=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,;/數(shù)碼管顯示編碼/* 單雙八拍工作方式: * A-AB-B-BC-C-CD-D-DA (即一個脈沖,轉 3.75 度)*/ uchar code FFZ=0x11,0x33,0x22,0x66,0x44,0xcc,0x88,0x99; /反轉uchar code FFW=0x99,0x88,0xcc,0x44,0x66,0x22,0x33,0x11; /正轉/* 單四拍工作方式: * A-B-C-D (即一個脈沖,轉 7.5 度)*

24、/ uchar code shuangz=0x88,0x22,0x44,0x11;uchar code shuangw=0x11,0x44,0x22,0x88;/* 單四拍工作方式: * A-B-C-D (即一個脈沖,轉 7.5 度)*/uchar code danz=0x88,0x22,0x44,0x11;/uchar code danw=0x11,0x44,0x22,0x88;void main() TMOD=0x01; EA=1; ET0=1; TH0=-1000/256; TL0=-1000%256; TR0=1;while(1)keyscan();display();/if(zx=1

25、) qudong();/if(x=0) zx=0;void keyscan()if(key1=0)/正反轉選擇delay(5);if(key1=0)k+;if(k=2) k=0;while(!key1) display();if(key2=0)/速度選擇delay(5);if(key2=0)sudu+;if(sudu=2) sudu=0;while(!key2) display();if(key3=0)/執(zhí)行鍵delay(5);if(key3=0)zx+;if(zx=2) zx=0;while(!key3) display();void time0() interrupt 1TH0=-1000

26、/256;TL0=-1000%256; if (zx=1) if (n>=m) if(k=0)/步進電機正轉if(sudu=0)/八拍for(bu=4;bu>0;bu-)P1=FFZbu;delay(2);n=0;display();if(sudu=1)/雙四拍for(bu=4;bu>0;bu-)P1=shuangzbu;/delay(2);n=0;display();if(k=1)/步進電機反轉if(sudu=0)/八拍for(bu=8;bu>0;bu-)P1=FFWbu;delay(2);n=0;display(); if(sudu=1)/雙四拍for(bu=4;b

27、u>0;bu-)P1=shuangwbu;/delay(2);n=0;display(); n+;else n=0;void delay(uint xms)uint i,j;for(i=110;i>0;i-)for(j=xms;j>0;j-);void display() /顯示子函數(shù)P0=tablek;/正反轉標志位P2=0x01;/選通第一位 0000 0001delay(3);P0=tablesudu;/速度標志位P2=0x02;/選通第二位 0000 0010delay(3);P0=tablezx;/開關標志位P2=0x04;/選通第二位 0000 0100delay(3);P2=0x00;仙曹粘穎饋汲曳窮傈史瀉鼓惰棲住恬

溫馨提示

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

評論

0/150

提交評論