步進電機是一種將電脈衝訊號轉換成相應角位移或線位移的電動機。每輸入乙個脈衝訊號,轉子就轉動乙個角度或前進一步,其輸出的角位移或線位移與輸入的脈衝數成正比,轉速與脈衝頻率成正比。因此,步進電動機又稱脈衝電動機。
步進電動機的結構形式和分類方法較多,一般按勵磁方式分為磁阻式、永磁式和混磁式三種;按相數可分為單相、兩相、三相和多相等形式。
本次使用的是4項步進電動機
開始時,開關sb接通電源,sa、sc、sd斷開,b相磁極和轉子0、3號齒對齊,同時,轉子的1、4號齒就和c、d相
繞組磁極產生錯齒,2、5號齒就和d、a相繞組磁極產生錯齒。
當開關sc接通電源,sb、sa、sd斷開時,由於c相繞組的磁力線和1、4號齒之間磁力線的作用,使轉子轉動,1、4號齒和c相繞組的磁極對齊。而0、3號齒和a、b相繞組產生錯齒,2、5號齒就和a、d相繞組磁極產生錯齒。依次類推,a、b、c、d四相繞組輪流供電,則轉子會沿著a、b、c、d方向轉動。
四相步進電機按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉動力矩小。八拍工作方式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉動力矩又可以提高控制精度。
單四拍、雙四拍與八拍工作方式的電源通電時序與波形分別如圖
想要完成步進電動機,主要在於歷次序列的定義
本次使用8拍對應勵磁
正轉勵磁 a->ab->b->bc->c->cd->d->da
反轉勵磁 ad->d->cd->c->bc->b->ab->a
同時使用按鈕控制電動機正轉、反轉和停止,由於步進電動機是非線性器件,上電之後,要有一定時間做延遲,不能上來就給電動機發命令,需要預熱好了之後才能發命令工作。
#include
#define uchar unsigned char
#define uint unsigned int
//正轉勵磁 a-
>ab-
>b-
>bc-
>c-
>cd-
>d-
>da
uchar code ffw=
;//反轉勵磁 ad-
>d-
>cd-
>c-
>bc-
>b-
>ab-
>a
uchar code rev=
;//正轉
sbit k1 = p1^0;
//反轉
sbit k2 = p1^1;
//停止
sbit k3 = p1^2;
//延時
void deplay(uint x)
//正轉
void setp_motor_ffw(uchar n)}}
//反轉
void setp_motor_rev(uchar n)}}
void main(
)else
if(k2 ==0)
else
}}
89C51和89S51的區別
89c51和89s51的區別 很多初學51微控制器的會有這樣的問題 at89s51是什麼?書上和網路教程上可都是8051,89c51等!沒聽說過有89s51 這 裡,初學者要澄清微控制器實際使用方面的乙個產品概念,mcs 51微控制器是美國inte公司於1980年推出的產品,典型產品有 8031 內...
基於89C51的閃爍LED小燈設計
c51的閃爍led設計 本設計採用通俗易懂的語言組織,看好了,在進行以下主要內容之前,先話癆話癆,學習這些微控制器設計啊,真的得有興趣,所謂興趣,就是你懂了它,理解了它,自然而然就對它產生了興趣了,換句話說,你他麼一點都不懂,你來跟我說興趣,你個龜兒,鬼都不信,牆都不服舅扶你。話不多說,想玩這個,總...
89c51中斷系統及中斷控制
現代的計算機都具有實時處理功能,當外界有突發事件時,cpu能夠及時的做出處理,這就是靠中斷來實現的。當cpu正在處理某一命令時,這時外部發生了某一事件 如電平的變化,或者定時器 計數器溢位時 請求cpu去處理該事件,於是cpu停止處理當前的事件,並儲存當前停止時的位址,轉去處理所發生的事件,處理完畢...