導航:首頁 > 操作系統 > 基於單片機的直流電機

基於單片機的直流電機

發布時間:2025-03-24 05:51:07

① 基於單片機設計的直流電機調速系統文獻綜述怎麼寫

單片機控制的直流電機調速系統 摘要:本文採用AT89C52作為主控晶元,設計了一種直流電機高速系統。AT89C52產生單極性工作制的定頻PWM脈沖,配合驅動能力強大的L298,從而實現控制和調整直流電機轉速和轉向的功能。利用軟體編程,能夠設置多個占空比不同的脈沖,使得電機轉速可以逐步增大或減小,同時在LCD上顯示電機的工作狀態,易於觀察和識別。本設計主要由電機調速控制模塊和LCD顯示模塊組成,具有電路簡單,可靠性高,運行穩定的特點,是對於小型直流電機調速裝置的一種探究。 關鍵詞:AT89C52 定頻PWM LCD 直流電機 目 錄 1 緒論... 1 2 方案設計... 1 2.1 功能要求... 1 2.2 方案論證... 1 3 系統硬體的設計... 3 3.1 電機調速控制模塊... 3 3.2 LCD顯示模塊... 6 3.3 硬體設計總原理圖... 11 4 系統軟體的設計... 12 4.1 主程序... 12 5 調試及性能分析... 14 5.1 調試與測試... 14 6 結論... 15 7 致謝... 15 參考文獻... 17 附錄... 18

② 求用單片機和ULN2003A驅動直流電機的接法

電路圖接法:

ULN2003是大電流驅動陣列,多用於單片機、智能儀表、PLC、數字量輸出卡等控制電路中。可直接驅動繼電器等負載。輸入5VTTL電平,輸出可達500mA/50V。

ULN2003是高耐壓、大電流達林頓系列,由七個硅NPN達林頓管組成。 該電路的特點如下: ULN2003的每一對達林頓都串聯一個2.7K的基極電阻,在5V的工作電壓下它能與TTL和CMOS電路 直接相連,可以直接處理原先需要標准邏輯緩沖器來處理的數據。

ULN2003 是高壓大電流達林頓晶體管陣列系列產品,具有電流增益高、工作電壓高、溫度范圍寬、帶負載能力強等特點,適應於各類要求高速大功率驅動的系統。

(2)基於單片機的直流電機擴展閱讀:

引腳1:CPU脈沖輸入端,埠對應一個信號輸出端。

引腳2:CPU脈沖輸入端。

引腳3:CPU脈沖輸入端。

引腳4:CPU脈沖輸入端。

引腳5:CPU脈沖輸入端。

引腳6:CPU脈沖輸入端。

引腳7:CPU脈沖輸入端。

引腳8:接地。

引腳9:該腳是內部7個續流二極體負極的公共端,各二極體的正極分別接各達林頓管的集電極。用於感性負載時,該腳接負載電源正極,實現續流作用。如果該腳接地,實際上就是達林頓管的集電極對地接通。

引腳10:脈沖信號輸出端,對應7腳信號輸入端。

引腳11:脈沖信號輸出端,對應6腳信號輸入端。

引腳12:脈沖信號輸出端,對應5腳信號輸入端。

引腳13:脈沖信號輸出端,對應4腳信號輸入端。

引腳14:脈沖信號輸出端,對應3腳信號輸入端。

引腳15:脈沖信號輸出端,對應2腳信號輸入端。

引腳16:脈沖信號輸出端,對應1腳信號輸入端。

③ 基於單片機的pwm小功率直流電機調速

直流調速器就是調節直流電動機速度的設備,上端和交流電源連接,下端和直流電動機連接,直流調速器將交流電轉化成兩路輸出直流電源,一路輸入給直流電機礪磁(定子),一路輸入給直流電機電樞(轉子),直流調速器通過控制電樞直流電壓來調節直流電動機轉速。同時直流電動機給調速器一個反饋電流,調速器根據反饋電流來判斷直流電機的轉速情況,必要時修正電樞電壓輸出,以此來再次調節電機的轉速。

直流電機的調速方案一般有下列3種方式:

1、改變電樞電壓;
2、改變激磁繞組電壓;
3、改變電樞迴路電阻。

使用單片機來控制直流電機的變速,一般採用調節電樞電壓的方式,通過單片機控制PWM1,PWM2,產生可變的脈沖,這樣電機上的電壓也為寬度可變的脈沖電壓。根據公式

U=aVCC

其中:U為電樞電壓;a為脈沖的占空比(0<a<1);VCC直流電壓源,這里為5V。

電動機的電樞電壓受單片機輸出脈沖控制,實現了利用脈沖寬度調制技術(PWM)進行直流電機的變速。

因為在H橋電路中,只有PWM1與PWM2電平互為相反時電機才能驅動,也就是PWM1與PWM2同為高電平或同為低電平時,都不能工作,所以上圖中的實際脈沖寬度為B,

我們把PWM波的周期定為1ms,占空比分100級可調(每級級差為10%),這樣定時器T0每0.01ms產生一次定時中斷,每100次後進入下一個PWM波的周期。上圖中,占空比是60%,即輸出脈沖的為0.6ms,斷開脈沖為0.4ms,這樣電樞電壓為5*60%=3V。

我們討論的是可以正轉反轉的,如果只按一個方向轉,我們就只要把PWM1置為高電平或低電平,只改變另一個PWM2電平的脈沖變化即可,,如下圖(Q4導通,Q3閉合,電機只能順時針調整轉動速度)

C語言代碼:

#include<AT89X52.h>
#define uchar unsigned char
#define uint unsigned int

sbit K5=P1^4;
sbit K6=P1^5;
sbit PWM1=P1^0;
sbit PWM2=P1^1;
sbit FMQ=P3^6;

uchar ZKB1,ZKB2;

void delaynms(uint aa)
{
uchar bb;
while(aa--)
{
for(bb=0;bb<115;bb++) //1ms基準延時程序
{
;
}
}

}

void delay500us(void)
{
int j;
for(j=0;j<57;j++)
{
;
}
}

void beep(void)
{
uchar t;
for(t=0;t<100;t++)
{
delay500us();
FMQ=!FMQ; //產生脈沖
}
FMQ=1; //關閉蜂鳴器
delaynms(300);
}

void main(void)
{
TR0=0; //關閉定時器0
TMOD=0x01; //定時器0,工作方式1
TH0=(65526-100)/256;
TL0=(65526-100)%256; //100us即0.01ms中斷一次
EA=1; //開總中斷
ET0=1; //開定時器0中斷
TR0=1; //啟動定時器T0
ZKB1=50; //占空比初值設定
ZKB2=50; //占空比初值設定
while(1)
{
if(!K5)
{
delaynms(15); //消抖
if(!K5) //確定按鍵按下
{
beep();
ZKB1++; //增加ZKB1
ZKB2=100-ZKB1; //相應的ZKB2就減少
}
}
if(!K6)
{
delaynms(15); //消抖
if(!K6) //確定按鍵按下
{
beep();
ZKB1--; //減少ZKB1
ZKB2=100-ZKB1; //相應的ZKB2增加
}
}
if(ZKB1>99)
ZKB1=1;
if(ZKB1<1)
ZKB1=99;

}
}

void time0(void) interrupt 1
{
static uchar N=0;
TH0=(65526-100)/256;
TL0=(65526-100)%256;
N++;
if(N>100)
N=0;
if(N<=ZKB1)
PWM1=0;
else
PWM1=1;
if(N<=ZKB2)
PWM2=0;
else
PWM2=1;

}

//顯現:電機轉速到最高後,也就是N為1或99時,再按一下,就變到99或1,
//電機反方向旋轉以最高速度

④ 基於單片機的無刷直流電動機控制系統設計

首先,對於一個普通二本學校的學生來說,畢業設計題目《基於單片機的無刷直流電動機控制系統設計》的難度應該是中等偏上。這個題目涉及到單片機、無刷直流電動機、控制系統的相關知識和技能,需要學生具備一定的電子、電氣和控制理論知識,同時還需要掌握一定的編程和調試技能。因此,對於一些沒有接觸過相關領域的學生來說,可能會有一定的難度。

難點主要在於以下幾個方面:

閱讀全文

與基於單片機的直流電機相關的資料

熱點內容
恆大名都門禁卡是加密的嗎 瀏覽:48
氣憤PDF 瀏覽:462
杭州手機dns伺服器地址 瀏覽:498
matlab智能演算法書籍 瀏覽:216
web數據挖掘pdf 瀏覽:838
感謝程序員的協作 瀏覽:674
android獲取簡訊列表 瀏覽:454
壓縮文件夾無效或已損壞 瀏覽:830
文件夾命名橫杠如何輸入 瀏覽:800
cl編譯64位 瀏覽:130
猿人時代安卓手機怎麼玩 瀏覽:169
android網路交互 瀏覽:771
家庭伺服器對比玩客雲 瀏覽:597
手機adb連接雲伺服器 瀏覽:581
息壤閱讀app哪裡可以下載 瀏覽:444
聲闊超能小彩蛋如何下載app 瀏覽:633
壓縮機和冷凝器配套 瀏覽:615
伺服器linux系統如何使用情況 瀏覽:235
程序員晚上買什麼 瀏覽:120
北京舊伺服器回收價目表雲主機 瀏覽:609