單片機控制步進電機的原理

2020-12-06 電子工程世界網

    本資料詳細介紹鄧步進電機的工作原理以及單片機控制步進電機的特點。步進電機是數字控制電機,它將脈衝信號轉變成角位移,即給一個脈衝信號,步進電機就轉動一個角度,因此非常適合於單片機控制。

    步進電機可分為反應式步進電機、永磁式步進電機和混合式步進電機。步進電機區別於其他控制電機的最大特點是,它是通過輸入脈衝信號來進行控制的,即電機的總轉動角度由輸入脈衝數決定,而電機的轉速由脈衝信號頻率決定。它具有高精度的定位、位置及速度控制、具定位保持力、動作靈敏、開迴路控制不必依賴傳感器定位、中低速時具備高轉矩、高信賴性、小型、高功率等特徵,使其具有廣泛的應用。

    一、步進電機的工作原理

    步進電機是機電控制中一種常用的執行機構,它的用途是將電脈衝轉化為角位移,它的的驅動電路根據控制信號工作,控制信號由單片機產生。當步進驅動器接收到一個脈衝信號,它就驅動步進電機按設定的方向轉動一個固定的角度,控制換相順序,即通電控制脈衝必須嚴格按照一定順序分別控制各相的通斷。通過控制脈衝個數即可以控制角位移量,從而達到準確定位的目的。控制步進電機的轉向,即給定工作方式正序換相通電,步進電機正轉,若按反序通電換相,則電機就反轉。控制步進電機的速度,即給步進電機發一個控制脈衝,它就轉一步,再發一個脈衝,它會再轉一步,兩個脈衝的間隔越短,步進電機就轉得越快。同時通過控制脈衝頻率來控制電機轉動的速度和加速度,從而達到調速的目的。

    二、設計方案

    本設計採用51單片機AT89C51(晶振頻率為12MHZ)對四相六線制步進電機(內阻33歐,步進1.8度,額定電壓12V)進行控制。通過I/O口輸出的具有時序的方波作為步進電機的控制信號,信號經過晶片ULN2003驅動步進電機。ULN2003 是高耐壓、大電流達林頓陳列,由七個矽NPN 達林頓管組成。ULN2003 的每一對達林頓都串聯一個2.7K 的基極電阻,在5V 的工作電壓下它能與TTL 和CMOS 電路直接相連,可以直接處理原先需要標準邏輯緩衝器來處理的數據。ULN2003 工作電壓高,工作電流大,灌電流可達500mA,並且能夠在關態時承受50V 的電壓,輸出還可以在高負載電流並行運行。通過ULN2003構成步進電機的驅動電路,電路圖如圖1所示。51的25-28口接ULN2003的1-4輸入端。另外,用鍵盤來對電機的狀態進行控制,並用數碼管顯示電機的轉速,採用74LS164作為2位單個數碼管的顯示驅動。74LS164帶鎖存,使用串行接法可以節約I/O口資源。其電路圖如圖2所示。通過51的TXD和RXD口對CLK和DATA發送數據。

圖1 51單片機控制步進電機線路圖

圖2 顯示電路圖

    三、預期目標

    將圖1圖2連接起來,使之實現:按下啟動鍵,電機旋轉,按下加1鍵,速度增加,按下減1鍵,速度降低,最高速度為100轉/分,最低速度為25轉/分,按下停止鍵,電機停轉。速度值在數碼管上顯示出來。

    綜合以上選取的方案,總的流程如圖3所示。

圖3 系統電路流程圖

    結束語

    設計的步進電機基本能實現預期目標,經過調試和修改,但還是存在問題,比如按開關的時候會出現不穩定情況,轉速有時比較亂,顯示有時也有些不理想,後面的工作就是在軟體和硬體等方面進行修改,以完全達到預期目標。

 

 

關鍵字:單片機  控制步進電機 編輯:什麼魚 引用地址:http://news.eeworld.com.cn/mcu/2011/1031/article_5967.html 本網站轉載的所有的文章、圖片、音頻視頻文件等資料的版權歸版權所有人所有,本站採用的非本站原創文章及圖片等內容無法一一聯繫確認版權者。如果本網所選內容的文章作者及編輯認為其作品不宜公開自由傳播,或不應無償使用,請及時通過電子郵件或電話通知我們,以迅速採取適當措施,避免給雙方造成不必要的經濟損失。

推薦閱讀

MSP430單片機寫Info Memory

MSP430F5438A單片機在寫Info Memory時,需要先把整頁數據擦除,才能寫進去。否則寫失敗。而且還得設置下載程序時不要擦除 Info memory, 否則存儲數據失敗。因為沒此下載時都給你擦除了。

發表於 2020-05-08

51單片機實驗8:led點陣(1):點亮一個點

開發板led點陣模塊電路圖如下:74HC595:74HC595是一個8位串行輸入、並行輸出的位移緩存器。晶片第11角為數據輸入時鐘線,上升沿有效。晶片第12腳為輸出存儲器鎖存時鐘線,上升沿有效。晶片第13腳為輸出有效(低電平)。晶片第14腳為串行數據輸入。為表示出輸入74HC595的8位二進位數,開發板加入了led模塊(圖一中綠色所示)。若要使led發光,則需將JP595接vcc。OE為輸出有效控制端,低電平有效,所以務必將JOE短接片短接到GND端。_nop_();函數為延時一個機器周期,所對應頭文件為intrins.h#include<reg52.h>#include<intrins.h>#define

發表於 2020-05-08

51 單片機:在 P0 口接上 8 個 LED,實現每次亮兩個燈的流水燈

要求:每次亮相鄰兩個燈,分別閃爍五次後,移動一位,彙編。做而論道編程如下:;------------------------    ORG   0000H    LJMP  MAIN    ORG   0100HMAIN:    MOV   R2, #0FCH    MOV   A, #1;------------------------LOOP:    MOV   P0, R2   ;

發表於 2020-05-08

51單片機 4個獨立按鍵控制LED燈 (protues仿真)(C語言版)

}}void main(){while(1){key();}}四、運行程序後成功後,打開proteus右鍵單擊單片機AT89C51,找到編輯,然後添加hex文件

發表於 2020-05-08

單片機實例---定時器控制點陣顯示0~9

顯示狀態:點陣上每隔1s顯示一個數字,顯示到9又重頭顯示不斷循環#include<reg52.h>#include<intrins.h> typedef unsigned int u16;typedef unsigned char u8; u8 flag=0;   //時間標誌位 #define lie_io P0    //定義P0埠 sbit RCLKK = P3^5;    sbit SRCLK = P3^6;sbit SER = P3^4;   //串行輸入 u

發表於 2020-05-08

51單片機課程設計——led點陣廣告牌程序設計

上學期期末的課設題目是led點陣廣告牌,當時的要求如下:(1)能夠顯示不同字符的LED點陣廣告牌;(2)按鍵切換不同的顯示效果(如閃爍,靜止,平移等);(3)按鍵切換不同的顯示內容;(4)能夠顯示圖形或自定義字符;(5)其他功能(創新部分);(6)系統調試、分析、總結與功能實現。當時用的是我用是的普中科技的STC90C51RD+的單片機,不過只要是51單片機,換哪個51內核的晶片都可以,只要電路和程序匹配就可以。我用的那款普中科技的51單片機可以直接連線決定線路的布置,不需要自己去重新焊一個電路板。然後我根據任務要求連接了電路,寫了對應的程序,還有proteus仿真。另外,覺得有趣可以點個讚;有什麼有趣的想法可以評論一下,我感興趣

發表於 2020-05-08

相關焦點

  • 單片機控制步進電機驅動器工作原理
    本文介紹的就是為從一日本產舊式印表機上拆下的步進電機而設計的驅動器。  本文先介紹該步進電機的工作原理,然後介紹了其驅動器的軟、硬體設計。  1. 步進電機的工作原理  該步進電機為一四相步進電機,採用單極性直流電源供電。
  • 單片機與TA8435聯接控制步進電機原理圖
    單片機與TA8435聯接控制步進電機原理圖圖4是單片機與TA8435相連控制步進電機的原理圖,引腳M1和M2決定電機的轉動方式:M1=0、M2=0,電機按整步方式運轉;M1=1、M2=0,電機按半步方式運轉;M1=0、M2=1,
  • 51單片機控制步進電機驅動器工作原理
    步進電機在控制系統中具有廣泛的應用。它可以把脈衝信號轉換成角位移,並且可用作電磁製動輪、電磁差分器、或角位移發生器等。有時從一些舊設備上拆下的步進電機(這種電機一般沒有損壞)要改作它用,一般需自己設計驅動器。本文介紹的就是為從一日本產舊式印表機上拆下的步進電機而設計的驅動器。
  • 單片機對儀表步進電機的細分控制
    是將電脈衝信號轉變為角位移或線位移的開環控制元件。在非超載的情況下,電機轉速、停止的位置只取決於脈衝信號的頻率和脈衝數,而不受負載變化的影響,即給電機某相線圈加一脈衝信號,電機則轉過一個步距角。這一線性關係的存在,加上步進電機只有周期性的誤差而無累積誤差等特點,使得在速度、位置等控制領域用步進電機來控制變得非常簡單。雖然步進電機已被廣泛地應用,但步進電機並不像普通的直流電機、交流電機那樣在常規下使用。
  • 51單片機控制四相步進電機
    接觸單片機快兩年了,不過只是非常業餘的興趣,實踐卻不多,到現在還算是個初學者吧。這幾天給自己的任務就是搞定步進電機的單片機控制。以前曾看過有關步進電機原理和控制的資料,畢竟自己沒有做過,對其具體原理還不是很清楚。
  • 基於單片機的步進電機開環控制系統
    摘要: 通過ATMEL89C51單片機對步進電機進行控制,主要介紹了步進電機控制器、驅動電路和LED顯示電路的設計,實現了步進電機的開環控制。
  • 用單片機和CPLD實現步進電機的控制
    它廣泛用於消費類產品(印表機、照相機)、工業控制(數控工具機、工業機器人)、醫療器械等機電產品中。           通常的步進電機控制方法是採用CPU(PC機、單片機等)配合專用的步進電機驅動控制器來實現,這存在成本較高、各個環  節搭配不便(不同類的電機必須要相應的驅動控制器與之配對)等問題。
  • 單片機與TA8435的步進電機細分控制
    1 步進電機 步進電動機是純粹的數字控制電動機,它將電脈衝信號轉變為角位移,即給一個脈衝,步進電機就轉一個角度,因此非常合適單片機控制,在非超載的情況下,電機的轉速、停止的位置只取決於脈衝信號的頻率和脈衝數
  • 用AT89C52單片機作為控制器,設計簡單實用的步進電機控制系統
    作者介紹了基於AT89C52單片機的兩相混合式步進電機控制系統的設計方案,增加了步進電機控制系統設計的靈活性。控制系統採用AT89C52單片機作為控制器,由達林頓功率管BUW49組成的雙H橋式電路作為驅動器,加入按鍵控制及LCD1602顯示。控制系統的電路結構簡單、設計思路清晰。實驗表明,控制系統操作簡單、運行可靠,具有較強的實用性。
  • 單片機控制步進電機的正反轉
    呵呵,這次弄這個程序用了我兩年的時間,終於把我們正反轉程序寫成功並調試成功了,新年收到很多朋友給我的賀卡和祝福,不過,我覺得今天這個程序也是送給自己最好的禮物吧,學單片機真的有時候會很痛苦,一個程序當你怎麼編也編不出來的時候,有時候真的讓你夠難受的,失敗的那種感覺,也許只有學單片機的朋友才能夠體會得了,但是當一個程序編了好久,
  • 51單片機與TA8435的步進電機細分控制
    1 步進電機   步進電動機是純粹的數字控制電動機,它將電脈衝信號轉變為角位移,即給一個脈衝,步進電機就轉一個角度,因此非常合適單片機控制,在非超載的情況下,
  • 基於ATMEGA48單片機的儀表步進電機的細分控制
    儀表步進電機本文引用地址:http://www.eepw.com.cn/article/162587.htm  步進電機是將電脈衝信號轉變為角位移或線位移的開環控制元件。
  • 基於單片機的步進電機加減速控制
    步進電機(脈衝電動機)是一種將電脈衝轉化為角位移的執行機構,是數字控制的一種執行元件,其可以通過控制脈衝頻率來控制電機轉動的速度和加速度,從而達到調速的目的。
  • 單片機實現步進電機控制系統設計的方法
    步進電機是數字控制電機,將脈衝信號轉換成角位移,電機的轉速、停止的位置取決於脈衝信號的頻率和脈衝數,而不受負載變化的影響,非超載狀態下,根據上述線性關係,再加上步進電機只有周期性誤差而無累積誤差,因此步進電機適用於單片機控制。步進電機通過輸入脈衝信號進行控制,即電機的總轉動角度由輸入脈衝總數決定,而電機的轉速由脈衝信號頻率決定。步進電機的驅動電路是根據單片機產生的控制信號進行工作。
  • 單片機控制步進電機1步10步100步正反轉
    一,程序設計方案的構想:1) 步進電機的控制原理本文引用地址:http://www.eepw.com.cn/article/201611/319603
  • 51單片機精確控制步進電機(有TB6600驅動)
    設備:51單片機開發板、TB6600驅動器、57BYG250B步進電機(二相)、直流開關電源。直流電源給驅動器供電,單片機給驅動器輸入脈衝,驅動器驅動步進電機。程序使用定時器中斷精確控制電機轉動(不考慮失步)。比如我採用16倍細分,則需給驅動輸入3200個脈衝,驅動才會使電機轉一圈,下面程序中1秒發送200個脈衝,則相應的電機16秒轉一圈。
  • 以單片機為核心的步進電機控制系統驅動設計
    打開APP 以單片機為核心的步進電機控制系統驅動設計 工程師黃明星 發表於 2018-08-07 15:29:17 步進電機精度高,慣性小,在不失步的情況下沒有步距誤差積累,特別適用於數字控制的定位系統。
  • 步進電機控制部分原理圖
    4線步進電機分列分列電路原理圖本文引用地址:http://www.eepw.com.cn/article/173474.htm>脈寬調製驅動原理脈寬調製方式是一種供電電壓比電機額定供電電壓高得多的情況下而採用斬波方式使電動機繞組電流從低速到高速運行範圍內保持恆定的一種驅動方式,其工作原理如圖1 所示。
  • 單片機控制步進電機正反轉
    id=47在ME300B上使用時,可從J7上引出5V電源到步進電機模塊J1上。將J1(ICE)上的P1.0-P1.3用杜邦頭實驗連接線連接到步進電機模塊J2上。C語言範例:/*******************************************************************/*/* ME300系列單片機開發系統演示程序-步進電機鍵控正反轉實驗/*/* 郵箱: gguoqing
  • 製作步進電機控制模塊
    》,介紹步進電機的組成結構、工作原理和驅動電路。通過那篇文章,我們知道要控制步進電機旋轉就需要時刻給步進電機發送脈衝。這帶來了些問題,比如需要步進電機一直旋轉,單片機就只能一直給它發送脈衝了,就很難去做其他事情了。還有步進電機相位越多需要控制引腳也就越多,如果步進電機數量多了單片機引腳根本不夠用,那麼有沒有解決方法呢?