基于STC單片機步進電機驅動器的設計及C語言程序._第1頁
基于STC單片機步進電機驅動器的設計及C語言程序._第2頁
基于STC單片機步進電機驅動器的設計及C語言程序._第3頁
基于STC單片機步進電機驅動器的設計及C語言程序._第4頁
基于STC單片機步進電機驅動器的設計及C語言程序._第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于單片機系統(tǒng)的步進電機驅動摘要本文介紹了基于80C52單片機的步進電機控制系統(tǒng)的設計。分別概括的介紹了單片機和步進電機以及步進電機的各種驅動方案;對一款四相步進電機以及80C52單片機的功能參數和一種驅動方式的特點,以及選擇其原因進行了必要的說明;對基于80C52單片機的步進電機控制系統(tǒng)的原理進行了介紹;根據 80C52單片機和步進電機的原理以及特點和參數選擇了 其他元器件,結合驅動芯片ULN2003A,建立了相應的電路圖;進行了必要的電路分析說明, 并將這個電路圖制作成型,使其工作,實現(xiàn)加速減速等功能。關鍵詞:步進電機;AT89C52單片機;ULN2003A驅動。第1章前言1.1課題的背景

2、11.2發(fā)展概況11.3課題主要內容1第2章 步進電機的基本原理、分類和選擇 12.1步進電機的基本參數 22.2步進電機的特點 22.3步進電機分類 22.4四相混合式步進電機的工作原理及工作方式 22.5步進電機具體型號的選擇 3第3章 步進電機驅動系統(tǒng)及驅動接口選擇 33.1單電壓功率驅動接口 43.2雙電壓功率驅動接口 43.3高低壓功率驅動接口 43.4斬波恒流功率驅動接口 53.5集成功率驅動接口及驅動芯片的選擇 6第4章驅動系統(tǒng)硬件組成及具體驅動方案分析 64.1關于80C52單片機的介紹64.2驅動系統(tǒng)總體結構 84.3驅動系統(tǒng)的驅動原理94.3.1步進電機的控制信號 94.3

3、.2控制信號功率的放大94.3.3單片機控制信號的輸出10第 5章驅動系統(tǒng)硬件電路及總電路 105.1單片機最小系統(tǒng) 105.2人機交互模塊 115.3按鍵開關部分 125.4驅動芯片部分125.5總電路圖13第6章驅動系統(tǒng)程序流程圖 13第7章結論 14附錄14參考文獻19第1章前言1.1課題的背景步進電機是現(xiàn)代數字控制技術中最早出現(xiàn)的執(zhí)行部件,其特點是可以將數字脈沖控制信號 直接轉換為一定數值的機械角位移,并且能夠自動產生定位轉矩使轉軸鎖定。如果在機械結 構中再配以滾珠絲杠,那步進電機的高精度轉角就可以轉換為高精度直線位移,這在以精度 為要求的現(xiàn)代機械控制中是極其重要的一點。隨著微電子和計

4、算機技術的發(fā)展,步進電機的需求量與日俱增,在各個經濟領域都有應用。 步進電機作為一種控制用的特種電機,其優(yōu)點是結構簡單、運行可靠、控制方便。尤其是步 距值不受電壓、溫度的變化的影響、誤差不會長期積累的特點,給實際的應用帶來了很大的 方便。研究步進電機的控制方法,對提高控制精度和響應速度、節(jié)約能源等都具有重要意義。 為此,本文設計了一段步進電機驅動程序,可以實現(xiàn)對步進電機轉動速度等級的調節(jié),并用 數碼管顯示。1.2發(fā)展概況雖然步進電機已被廣泛地應用,但步進電機并不能象普通的直流電機,交流電機在常規(guī)下使用。它必須由雙環(huán)形脈沖信號、功率驅動電路等組成控制系統(tǒng)方可使用。因此用好步進電 機卻非易事,它涉

5、及到機械、電機、電子及計算機等許多專業(yè)知識。目前,生產步進電機的廠家的確不少,但具有專業(yè)技術人員,能夠自行開發(fā),研制的廠家 卻非常少,連最基本的設備都沒有。僅僅處于一種盲目的仿制階段。這就給戶在產品選型、 使用中造成許多麻煩。鑒于上述情況,本文決定以四相混合式步進電機為例敘述其基本工作 原理及設計簡單的驅動程序。望能對廣大用戶在選型使用時有所幫助。1.3課題主要內容本課題將分析步進電機的工作原理,并簡單介紹其各種驅動方式。使用單片機以軟件方式 配合有關芯片和電路元件驅動步進電機, 通過C語言編程方法,對步進電機的轉速進行控制, 使其在一定范圍下運行。在 Keil中編程并調試,Proteus中進

6、行仿真,并很好地模擬出實驗結 果。最后,根據電路圖焊接出實物。第2章步進電機的基本原理、分類和選擇步進電機是一種將電脈沖轉化為角位移的執(zhí)行機構,當步進電機接收到一個脈沖信號,它就按設定的方向轉動一個固定的角度(稱為“步距角”),它的旋轉是以固定的角度一步一步 運行的??梢酝ㄟ^控制脈沖個數來控制角位移量,從而達到準確定位的目的。同時可以通過 控制脈沖頻率來控制電機轉動的速度和加速度,從而達到調速的目的。2.1步進電機的基本參數電機固有步距角:它表示控制系統(tǒng)每發(fā)一個步進脈沖信號,電機所轉動的角度。電機出廠 時給出了一個步距角的值,女口 86BYG250A型電機給出的值為0.9 /1.8。(表示半步

7、工作時為 0.9整步工作時為1.8 )這個步距角可以稱之為“電機固有步距角”它不一定是電機實際工 作時的真正步距角,真正的步距角和驅動器有關。步進電機的相數:是指電機內部的線圈組數,目前常用的有二相、三相、四相、五相步進 電機。電機相數不同,其步距角也不同,一般二相電機的步距角為0.9 /1.8、三相的為0.75 /1.5、五相的為0.36 /0.72。在沒有細分驅動器時,用戶主要靠選擇不同相數的步進電機 來滿足自己步距角的要求。如果使用細分驅動器,則“相數”將變得沒有意義,用戶只需在 驅動器上改變細分數,就可以改變步距角。保持轉矩:是指步進電機通電但沒有轉動時,定子鎖住轉子的力矩。它是步進電

8、機最重要 的參數之一,通常步進電機在低速時的力矩接近保持轉矩。由于步進電機的輸出力矩隨速度 的增大而不斷衰減,輸出功率也隨速度的增大而變化,所以保持轉矩就成為衡量步進電機最 重要的參數之一。比如,當人們說 2N.m的步進電機,在沒有特殊說的情況下是指保持轉矩 為2N.m的步進電機。2.2步進電機的特點1. 一般步進電機的精度為步進角的 3%-5%,且不累積。2. 步進電機的力矩會隨轉速的升高而下降。3. 當步進電機轉動時,電機各相繞組的電感將形成一個反向電動勢;頻率越高,反向電 動勢越大。在它的作用下,電機隨頻率(或速度)的增大而相電流減小,從而導致力矩下降。4. 步進電機低速時可以正常運轉,

9、但若高于一定速度就無法啟動,并伴有嘯叫聲。步進電機有一個技術參數:空載啟動頻率,即步進電機在空載情況下能夠正常啟動的脈沖 頻率,如果脈沖頻率高于該值,電機不能正常啟動,可能發(fā)生丟步或堵轉。在有負載的情況 下,啟動頻率應更低。如果要使電機達到高速轉動,脈沖頻率應該有加速過程,即啟動頻率 較低,然后按一定加速度升到所希望的高頻(電機轉速從低速升到高速)。2.3步進電機分類目前常用的有三種步進電動機:1. 反應式步進電動機(VR)。反應式步進電動機結構簡單,生產成本低,步距角小;但動 態(tài)性能差。2. 永磁式步進電動機(PM)。永磁式步進電動機出力大,動態(tài)性能好;但步距角大。3. 混合式步進電動機(H

10、B)?;旌鲜讲竭M電動機綜合了反應式、永磁式步進電動機兩者的 優(yōu)點,它的步距角小,出力大,動態(tài)性能好,是目前性能最高的步進電動機。它有時也稱作 永磁感應子式步進電動機。綜合步進電機的以上參數特點以及各種步進電機的優(yōu)缺點,本課題選用四相混合式(感應子式)步進電機2.4四相混合式步進電機的工作原理及工作方式如圖2-1。開始時,開關SB接通電源,SA、SC、SD斷開,B相磁極和轉子0、3號齒對 齊,同時,轉子的1、4號齒就和C、D相繞組磁極產生錯齒,2、5號齒就和D、A相繞組磁 極產生錯齒。當開關SC接通電源,SB、SA、SD斷開時,由于C相繞組的磁力線和1、4號 齒之間磁力線的作用,使轉子轉動,1、

11、4號齒和C相繞組的磁極對齊。而0、3號齒和A、B 相繞組產生錯齒,2、5號齒就和A、D相繞組磁極產生錯齒。依次類推,A、B、C、D四相 繞組輪流供電,則轉子會沿著 A、B、C、D方向轉動。圖2-1四相步進電機步工作進示意圖四相步進電機按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。單四拍 與雙四拍的步距角相等,但單四拍的轉動力矩小。八拍工作方式的步距角是單四拍與雙四拍 的一半,因此,八拍工作方式既可以保持較高的轉動力矩又可以提高控制精度。單四拍、雙四拍與八拍工作方式的電源通電時序與波形分別如圖2-2a、b、c所示:粽沖 juuinnnnnrtruTaAffl -Tlnnmb _nn

12、n一eta _n_n_TL Dta n n n na.單四拍jrLrLnjLTLnjLn_n_rLrLrLJ|_|III IL-TL-TLJ-1b.雙四拍圖2-2步進電機工作時序波形圖-rLrLnAnrLnrLnjmnAnnnc.八拍192.5步進電機具體型號的選擇考慮到實驗室材料和驅動功率大小等實際條件,以及連線的方便與否。最終選擇型號為 28BYJ48的四相五線步進電機。該步進電機的主要參數為:1 額定電壓:5VDC2. 直流電阻:200? 7% (25)3. 減速比:1/644. 步距角:5.625 /645. 驅動方式:4相8拍6. 牽入轉矩:三 350mN.m(120Hz)7. 打滑

13、扭力:800-1300mN.m8. 溫升:50K (5VDC 工作頻率:120Hz)9. 噪音:小于 35dB (120Hz)10. 絕對耐壓:600VAC/1S第3章 步進電機驅動系統(tǒng)及驅動接口選擇步進電動機不能直接接到工頻交流或直流電源上工作,而必須使用專用的步進電動機驅動器,如圖3-1所示,它由脈沖發(fā)生控制單元、功率驅動單元、保護單元等組成。圖中點劃線 所包圍的二個單元可以用微機控制來實現(xiàn)。驅動單元與步進電動機直接耦合,也可理解成步 進電動機微機控制器的功率接口,這里對步進電機各種驅動接口進行簡單的介紹。|! I步進電機微機捋制甲元圖3-1步進電動機驅動控制系統(tǒng)3.1單電壓功率驅動接口在

14、電機繞組回路中串有電阻 Rs,使電機回路時間常數減小,高頻時電機能產生較大的電 磁轉矩,還能緩解電機的低頻共振現(xiàn)象,但它引起附加的損耗。一般情況下,簡單單電壓驅 動線路中,Rs是不可缺少的。Rs對步進電動機單步響應的改善如圖 3-2。*24V圖3-2單電壓功率驅動接口及單步響應曲線3.2雙電壓功率驅動接口雙電壓驅動的功率接口如圖3-3所示。雙電壓驅動的基本思路是在較低(低頻段)用較低 的電壓UL驅動,而在高速(高頻段)時用較高的電壓 UH驅動。這種功率接口需要兩個控 制信號,Uh為高壓有效控制信號,U為脈沖調寬驅動控制信號。圖中,功率管 TH和二極管 DL構成電源轉換電路。當Uh低電平,TH關

15、斷,DL正偏置,低電壓UL對繞組供電。反之 Uh高電平,TH導通,DL反偏,高電壓UH對繞組供電。這種電路可使電機在高頻段也有較 大出力,而靜止鎖定時功耗減小。圖3-3雙電壓功率驅動接口3.3高低壓功率驅動接口Vo15圖3-4高低壓功率驅動接口高低壓功率驅動接口如圖3-4所示。高低壓驅動的設計思想是,不論電機工作頻率如何, 均利用高電壓UH供電來提高導通相繞組的電流前沿,而在前沿過后,用低電壓UL來維持繞組的電流。這一作用同樣改善了驅動器的高頻性能,而且不必再串聯(lián)電阻Rs,消除了附加損耗。高低壓驅動功率接口也有兩個輸入控制信號Uh和UI,它們應保持同步,且前沿在同一時刻跳變,如圖3-4所示。圖

16、中,高壓管VTH的導通時間tl不能太大,也不能太小,太大 時,電機電流過載;太小時,動態(tài)性能改善不明顯。一般可取1-3ms。3.4斬波恒流功率驅動接口恒流驅動的設計思想是,設法使導通相繞組的電流不論在鎖定、低頻、高頻工作時均保持 固定數值。使電機具有恒轉矩輸出特性。這是目前使用較多、效果較好的一種功率接口。圖 3-5是斬波恒流功率接口原理圖。圖中 R是一個用于電流采樣的小阻值電阻,稱為采樣電阻。 當電流不大時,VT1和VT2同時受控于走步脈沖,當電流超過恒流給定的數值,VT2被封鎖, 電源U被切除。由于電機繞組具有較大電感,此時靠二極管VD續(xù)流,維持繞組電流,電機靠消耗電感中的磁場能量產生出力

17、。此時電流將按指數曲線衰減,同樣電流采樣值將減小。 當電流小于恒流給定的數值,VT2導通,電源再次接通。如此反復,電機繞組電流就穩(wěn)定在 由給定電平所決定的數值上,形成小小的鋸齒波,如圖3-5所示。圖3-5斬波恒流功率驅動接口斬波恒流功率驅動接口也有兩個輸入控制信號,其中u1是數字脈沖,u2是模擬信號。這種功率接口的特點是:高頻響應大大提高,接近恒轉矩輸出特性,共振現(xiàn)象消除,但線路較 復雜。目前已有相應的集成功率模塊可供采用。3.5集成功率驅動接口及驅動芯片的選擇目前已有多種用于小功率步進電動機的集成功率驅動接口電路可供選用。例如集成H橋式驅動器L298芯片,集成達林頓管ULN2003A極電極開

18、路驅動芯片等。由于 ULN2003A具 有電流增益高、工作電壓高、溫度范圍寬、帶負載能力強,而且集成有續(xù)流二極管等特點, 以及其對單片機的專用性。本課題選擇 ULN2003A驅動芯片3687圖3-6 ULN2003邏輯圖InputBULN/ULQ2003A: Rr = 27 kQ圖3-7 ULN2003內部電路圖由圖3-6、圖3-7可知,ULN2003A其本質是一個基于三極管的非門電路芯片。在驅動過 程中,ULN2003起到將控制信號功率放大和信號反相的作用。進而穩(wěn)定地將步進電機的控制 信號平穩(wěn)有效地送給步進電機,確保步進電機的正常運轉。第4章驅動系統(tǒng)硬件組成及具體驅動方案分析4.1關于80C

19、52單片機的介紹單片機以其體積小、功能齊全、價格低廉、可靠性高等優(yōu)點,在各個領域都獲得了廣泛的 應用。即使非電子計算機專業(yè)人員,通過學習一些專業(yè)基礎知識以后也能依靠自己的技術力 量,來開發(fā)所希望的單片機應用系統(tǒng)。故在本次設計中采用了其中的低功耗型 80C52單片機該系列單片機是采用高性能的靜態(tài) 80C52設計,由先進CMOS工藝制造,并帶有非易失性Flash程序存儲器,全部支持12時鐘和6時鐘操作,P89C51X2和P89C52X2/54X2/58X2分 別包含128字節(jié)和256字節(jié)RAM、32條I/O 口線、3個16位定時/計數器、6輸入4優(yōu) 先級嵌套中斷結構、1個串行I/O 口、可用于多機

20、通信I/O擴展或全雙工UART以及片內振蕩器和時鐘電路??蓪崿F(xiàn)兩個由軟件選擇的節(jié)電模式一空閑模式和掉電模式,空閑模式凍結 CPU,但RAM定時器、串口和中斷系統(tǒng)仍然工作;掉電模式保存 RAM的內容,但是凍結振 蕩器,導致所有其它的片內功能停止工作其主要結構組成如下:1 中央處理器(CPU)2內部數據存儲器(內部 RAM )3內部程序存儲器(內部 ROM)4 .定時器/計數器5. 并行I/O 口6. 串行口7. 時鐘電路8. 中斷系統(tǒng)9. 外接晶體引腳.1丄1*XTAL1PO O/ADO P01/AD1PO 2/AD2PO 3/AO3PO.4/AD4 PO 5/AD5P0J63DSP0.7/AD

21、7XTAL2FtSTdidPSENALE EAP2.0/ASP21/AS P2.2/A10 P2 3/A11 P2 4/A12P2.SM13 P2 6/A14 P2.7/A15外時鐘源程序存儲曙KKB RDM數據存諸器256B RAM SFR外屮斷64KB總線擴展控制線控制P1.002 P1 1/72EXPI 2P1.3PI .4P1.5P1.5P3J0URXD P3.-1 JXD P3.2JINT0P33jiNrTP3.4HOP3.5/T1P3.6/WRP3 7W-3837363534F 器亠專24Hi金工工13圖4-1 80C52單片機管腳圖可編程I/OJl fj U圖4-2 80C52單

22、片機工作系統(tǒng)圖 單片機管腳如圖4-1所示,下面對其各個管腳進行必要的說明外時事件計數2X16位定時曙/計數器可編程全雙 T.fflfrujL1r串行通信PO、P1、P2、P3 口的電平與 CMOS和TTL電平兼容。P0 口的每一位口線可以驅動8個LSTTL負載。在作為通用I/O 口時,由于輸出驅動電是 開漏方式,由集電極開路(OC門)電路或漏極開路電路驅動時需外接上拉電阻; 當作為地址 /數據總線使用時,口線輸出不是開漏的,無須外接上拉電阻。P1、P2、P3 口的每一位能驅動4個LSTTL負載。它們的輸出驅動電路設有內部上拉電阻, 所以可以方便地由集電極開路(OC門)電路或漏極開路電路所驅動,

23、而無須外接上拉電阻。當CPU不對P3 口進行字節(jié)或位尋址時,內部硬件自動將口鎖存器的 Q端置1。這時,P3 口作為第二功能使用。P3.0 : RXD (串行口輸入);P3.1 : TXD (串行口輸出);P3.2 :外部中斷0輸入;P3.3 :外部中斷1輸入;P3.4 : TO (定時器0的外部輸入);P3.5 : T1 (定時器1的外部輸出);P3.6 :(片外數據存儲器“寫”選通控制輸出);P3.7 :(片外數據存儲器“讀”選通控制輸出)。EA/VPP :訪問程序存儲器控制信號,當其為低電平時,對ROM的讀操作限定在外部的程序存儲器,當其為高電平時,對 ROM的讀操作是從內部存儲器開始的,

24、并可延至外部程 序存儲器。ALE/PROG :編程脈沖PSEN:外部程序存儲器讀選通信號,在讀外部 ROM時PSEN是低電平有效,以實現(xiàn)對 ROM的讀操作。RST/VPD :復位信號,當輸入信號延續(xù)2個周期以上的高電平有效,用以完成單片機復位 初始化操作。XTAL :時鐘晶振輸入端。4.2驅動系統(tǒng)總體結構圖4-3驅動系統(tǒng)硬件結構由圖4-3可知,本系統(tǒng)通過計算機設定步進電機的運行速度,將這些參數和控制程序通過 數據串口燒錄到單片機中。按鈕和單片機的控制信號通過驅動電路,輸入至步進電機,控制 步進電機的速度。電源和變壓整流電路為單片機和驅動芯片的正常工作提供安全穩(wěn)定的直流 咼電平。4.3驅動系統(tǒng)的

25、驅動原理為了方便闡述,本節(jié)按照步進電機輸入信號要求,控制信號功率的放大,單片機控制信號 的輸出和編程的順序分析其工作過程。圖4-4 28BYJ48型步進電機接線指示圖 表4-1步進電機輸入信號分布表連線序號導線顏色分配順序12345紅+4橙+3黃+2粉+1藍+如圖4-4所示,28BYJ48型步進電機接內部共有四相線圈,其中 Vcc端共接在一起,為紅 線。四相線圈的控制信號輸入端按順序依次為藍、粉、黃、橙。為方便編程與描述,本文采 用單片機的雙四拍運行時序,貝U其通電線圈按照時序依次為:藍粉、粉黃、黃橙、橙藍。其 輸入信號分布如表4-1所示。以此時序,按照一定的頻率,步進電機就可穩(wěn)定地轉動。4.

26、3.2控制信號功率的放大單片機不能直接驅動步進電機,這是由于單片機I/O接口輸出功率很小,輸出信號不穩(wěn)定。 因此就必須在單片機I/O接口下方接功率驅動單元。按照前文所述,本文選擇具有信號放大, 信號反相功能的ULN2003A驅動芯片。由圖4-5所示,ULN2003A本質為達林頓管,其中 Q1, Q2, R2, R3本質為以放大倍15 數被加大的三極管。因此,當輸入信號為高電平時,三極管導通,這時負載左端,即芯片的 信號輸出端為低電平,因此ULN2003A為反相輸出。此時負載中有電流產生。在本文中,負載即為步進電機的某一相線圈,所以當輸入信號為 高電平時,與之相連的步進電機線圈中有電流產生;當輸

27、入信號為低平時,負載左端即信號 輸出端為高電平,負載中無電流產生,即與之相連的步進電機線圈不工作。又因為達林頓管放大倍數為兩個三極管放大倍數之積,達到比較可觀的功率放大作用。 綜上,將單片機四個I/O接口連接至ULN2003A輸入接口,就將控制步進電機的信號放大反相。 使得步進電機正常工作。4.3.3單片機控制信號的輸出考慮到步進電機正常工作所需要的時序分布以及 ULN2003A的反相所用,單片機的輸出 信號以及相應的輸出端口如表 4-2所示。為了實際電路中連線方便,信號輸出端口為 P1.0, P1.1, P1.2,P1.3 口。表4-2單片機輸出信號分布表輸入接口對應導線顏色分配順序-一一二

28、四P1.3橙0011P1.2黃0110P1.1粉1100P1.0藍1011對應16進制數0xF30xF60xFc0xF9第五章驅動系統(tǒng)硬件電路及總電路5.1單片機最小系統(tǒng)包括復位電路、時鐘電路、電源部分、燒錄口四個單元,電源部分與燒錄口省略,如圖:5.2人機交互模塊采用8段共陰數碼管,P0 口輸出段碼、位碼,P2.2和P2.3分別為段鎖存和位鎖存如圖:RP1 g -eTEXH-RBCCEFG DF1E3*VCCtpanrAEafdm 則 A eaAta ipaarAiaiPD.tfAD* pgfAHi PQJAK PH .7/AV?notFZ-IAB P7SA1 P3F* 1HFZSA 13P

29、3.5A1#F3.7W VP3HTRXDP3.irTDR超世IUFaaTTTTElP3ST1歸*mr36SJiZ*-F1O尊J -5*1BDDQDP1Q 1DZQZD32D4Q4P0書D石Q6DTQ77 +KC:573 T|PCT*5.3按鍵開關部分其中上面的開關代表轉速等級增加一級,下面的開關代表速度等級降一級,如圖:5.4驅動芯片部分輸入端分別連接P1.0, P1.1,P1.2, P1.3管腳。輸出分別連接步進電機藍,粉,黃,橙導 線。由于負載過大,此處必須加上個阻值為10K的上拉電阻。如圖:R210kR3 iU410k46,R110k10kR5 it1T11B2Bse7BLN2aO3A

30、uTEEP1.0/T2 P1.1/T2EX P1.2P1.3F1.4P1.SP1.6P1.7AT80C52vTEXTaF3J0/RXD ps.iyrxD P3.2/INT0 P3.?/INT1P3.4/T0 P3.6/T1P3.e/WRP3 7/RD3Jo6C7CCOM1Cii亠R6亠R7Ihiklb*R95.1k5.5總電路圖i il ri1- - I- 1-1 IIIAP1ki-XTALIXTA13F.8TALEP1DTZ pi.irr 2FOP1.4-F1SP1j6P1JF0.9AK FD.TfRP?珂嘔 P3.1 陌 rzAc FZ3A11 F7.A1Z 峠環(huán)口 flJVAH PZ.T

31、i.h.-BF30RXD o.irrxp 科戲IF MnrrrF3.4Hn P3ST1 Fi.am 月了應P 口 XYACCI H1.VAD1nasiu IDSAESRS5-tL-uTFJTYR6R7:R85.1kg:5.1k1 cTFj3t=TF速度等級加1第6章驅動系統(tǒng)程序流程圖開始上電電機轉動連接P3.2的按鍵是否按下x速度等級減1連接P3.3的按鍵是否按下i斷電zr結束第7章結論數字電子技術已取得很大成就,數字電子技術應用越來越廣泛。在動力方面,由于傳統(tǒng)電機為模擬電子范疇,并不能直接與以計算機為代表的數字電子設備直接配合使用。需AD,DA轉化裝置,加大了控制成本和技術難度。但是步進電機

32、作為一種數字動力元件的出現(xiàn), 則大大的改善了此情況。由于步進電機可以直接被計算機控制,使其具有可以將數字脈沖控 制信號直接轉換為一定數值的機械角位移,并且能夠自動產生定位轉矩使轉軸鎖定的性能特 點,大大提高了電機的控制精度。而單片機作為一種簡單可靠,且低功耗,性能穩(wěn)定的計算 機。這就使得單片機驅動步進電機這一應用收到更廣泛的關注,本文在此選擇較為簡單的單 片機和步進電機及相應的芯片,組成簡單的步進電機驅動系統(tǒng)。做簡單的論述,主要工作如 下:1了解步進電機參數,特點。研究其工作原理,以及使用中的具體注意事項。2了解單片機的工作原理,掌握其基于 C語言的編程方法,以及最小系統(tǒng)的組成。3搜集步進電機

33、的驅動方案,對驅動方案進行比較,選取合適的驅動方式。4按照選取的驅動方式,選取相應的元器件,畫出電路圖,在Keil中編程并用Proteus進行仿真,很好地模擬出實際結果。根據電路圖焊接出相應的實際電路,排除故障,完成了 相應的功能。由于小組成員能力有限,而且受到實驗設備的限制,本設計還存在著電路較為簡單,缺少 獨立的供電電源等問題和不足。下一步需要在電路上加獨立供電模塊以及電機暫停按鈕以及 轉向的控制和速度精確的液晶顯示,將系統(tǒng)電路改進。并且加上一定的保護外殼,使其更加 人性化,方便使用。附錄/*名稱:步進電機轉速等級的控制編寫:1013105班小組日期:2013.10內容:本程序用于測試4相

34、步進電機常規(guī)驅動使用1-2相勵磁1-2相激勵功率增倍,步進角度減半,抖動減少 順序如下 a-ab-b-bc-c-cd-d-da 又稱4相8拍 數碼管顯示 01-20速度等級,數字越大,速度越快 使用外部中斷既可以調節(jié)速度增大又可以減小*/#in clude #define DataPort P0 /定義數據端口 程序中遇到 DataPort則用P0替換sbit LATCH仁P2A2;/定義鎖存使能端口sbit LATCH2=P2A3;段鎖存位鎖存unsigned char code DuanMa10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x

35、6f;顯示段碼值 09un sig ned char code WeiMa=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;分別對應相應的數碼管點亮,即位碼unsigned char TempData8; /存儲顯示值的全局變量sbit A仁P1A0; /定義步進電機連接端口sbit B仁 P1A1;sbit 6= PU2;相通電,其他相斷電相通電,其他相斷電相通電,其他相斷電 相通電,其他相斷電相通電,其他相斷電 相通電,其他相斷電 相通電,其他相斷電 相通電,其他相斷電 全部斷電sbit D仁 P1A3;#defi ne Coil_AB1 A 仁1;B1=1

36、;C 仁0;D 仁0;/AB#defi ne Coil_BC1 A 仁0;B1=1;C1=1;D 仁0;/BC#defi ne Coil_CD1 A 仁0;B1=0;C 仁1;D1=1;/CD#defi ne Coil_DA1 A 仁1;B1=0;C 仁0;D1=1;/D#defi ne Coil_A1 A 仁1;B1=0;C 仁0;D 仁0;/A#defi ne Coil_B1 A仁 0;B1=1;C 仁0;D1=0;/B#defi ne Coil_C1 A 仁0;B 仁0;C1=1;D 仁0;/C#defi ne Coil_D1 A 仁0;B1=0;C 仁0;D1=1;/D#defi ne

37、 Coil_OFF A仁 0;B1=0;C 仁0;D1=0;un sig ned char Speed;/*函數聲明*/void Display (un sig ned char FirstBit,u nsig ned char Num);void Ini t_TimerO(void);/*uS延時函數,含有輸入參數unsigned char t,無返回值unsigned char是定義無符號字符變量,其值的范圍是 0255這里使用晶振12M,精確延時使用匯編,大致延時 長度如下T=tx2+5 uS*/void DelayUs2x( un sig ned char t)while(-t);/*

38、mS延時函數,含有輸入參數unsigned char t,無返回值unsigned char是定義無符號字符變量,其值的范圍是 0255這里使用晶振12M,精確延時使用匯編*/void DelayMs( un sig ned char t)while(t-)/大致延時1mSDelayUs2x(245);DelayUs2x(245);/*主函數*/main ()unsigned int i=512; 旋轉一周時間In it_TimerO();/調用定時器初始化函數EA=1;/全局中斷打開EX0=1;/允許外部中斷0中斷IT0=1;設置外部中斷0為邊沿觸發(fā)EX仁1;/允許外部中斷1中斷IT仁1;設

39、置外部中斷1為邊沿觸發(fā)Speed=1;TempData0=DuanMaSpeed/10; 分解顯示信息,如要顯示58,TempData1=DuanMaSpeed%10; 貝U 58/10=558%10=8Coil_OFFwhile(i-)/ 正向 Coil_A1DelayMs(Speed);Coil_AB1/遇到 Coil_AB1用A仁 1;B1=1;C仁0;D1=0; 代替DelayMs(Speed);/改變這個參數可以調整電機轉速,數字越小,轉速越大,力矩越小Coil_B1DelayMs(Speed);Coil_BC1DelayMs(Speed);Coil_C1DelayMs(Speed);Coil_CD1DelayMs(Speed);Coil_D1DelayMs(Speed);Coil_DA1DelayMs(Speed);/*外部中斷0程序-速度等級增加*/ void ISR_INT0(void) in terrupt 0 23if(!INTO)如果檢測到低電平,說明按鍵按下觸發(fā)中斷DelayMs(IO);/ 延時去抖

溫馨提示

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

評論

0/150

提交評論