本設(shè)計(jì)基于STM32控制直流電機(jī)加減速正反轉(zhuǎn)設(shè)計(jì)(程序+仿真+報(bào)告+講解)
仿真:proteus8.9
程序編譯器:keil 5
編程語(yǔ)言:C語(yǔ)言
編號(hào)C0011
講解視頻:
功能說明:
本設(shè)計(jì)由STM32F103、L298N電機(jī)驅(qū)動(dòng)電路、按鍵電路組成。
1.通過按鍵可以控制電機(jī),正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止。
2.檔位分4檔,并且可以通過按鍵順序正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止。
3.檔位可以自定義。
附贈(zèng)相關(guān)論文,一份是根據(jù)實(shí)物寫的(與仿真功能基本一致)還有一份是根據(jù)仿真寫的。
開題報(bào)告
基于STM32控制直流電機(jī)加減速正反轉(zhuǎn)的Proteus仿真設(shè)計(jì)
一、課題背景和目標(biāo)
在本課程大作業(yè)中,我們將設(shè)計(jì)一個(gè)基于STM32微控制器的直流電機(jī)控制系統(tǒng)。該系統(tǒng)將通過Proteus仿真軟件進(jìn)行設(shè)計(jì)和驗(yàn)證,實(shí)現(xiàn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速和停止控制??刂葡到y(tǒng)將通過按鍵進(jìn)行操作,具有4檔控制功能。
我們的目標(biāo)是通過Proteus仿真設(shè)計(jì),驗(yàn)證STM32控制系統(tǒng)的可行性和有效性,加深對(duì)微控制器、電機(jī)驅(qū)動(dòng)電路和按鍵電路的理解和應(yīng)用。
二、研究方法
我們將采用理論分析和仿真驗(yàn)證相結(jié)合的方法,首先通過Proteus軟件設(shè)計(jì)電路,然后通過編程控制實(shí)現(xiàn)所需功能。具體步驟如下:
在Proteus中設(shè)計(jì)電路:包括STM32F103微控制器、L298N電機(jī)驅(qū)動(dòng)電路和按鍵電路。
編寫程序:使用C語(yǔ)言編寫程序,通過微控制器的GPIO口控制電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速和停止。
仿真測(cè)試:在Proteus中運(yùn)行程序,通過按鍵操作測(cè)試電機(jī)的控制功能。
三、預(yù)期結(jié)果
我們預(yù)計(jì)通過上述研究方法,能夠?qū)崿F(xiàn)以下預(yù)期結(jié)果:
通過按鍵實(shí)現(xiàn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速和停止控制。
具有4檔控制功能,可以通過按鍵順序?qū)崿F(xiàn)正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止的控制循環(huán)。
通過Proteus仿真,驗(yàn)證STM32控制系統(tǒng)的可行性和有效性。
四、實(shí)驗(yàn)安排
我們預(yù)計(jì)將用一個(gè)月的時(shí)間完成該課程大作業(yè)。前兩周將主要用于電路設(shè)計(jì)和編程,第三周進(jìn)行仿真測(cè)試,第四周進(jìn)行結(jié)果分析和報(bào)告撰寫。
五、實(shí)驗(yàn)材料和方法
實(shí)驗(yàn)材料包括:
STM32F103微控制器
L298N電機(jī)驅(qū)動(dòng)電路
按鍵電路
Proteus仿真軟件
實(shí)驗(yàn)方法包括:
設(shè)計(jì)電路
編寫程序
仿真測(cè)試
六、實(shí)驗(yàn)步驟和數(shù)據(jù)記錄
實(shí)驗(yàn)步驟如下:
在Proteus中設(shè)計(jì)電路。
使用C語(yǔ)言編寫程序。
在Proteus中運(yùn)行程序。
通過按鍵操作測(cè)試電機(jī)的控制功能。
記錄實(shí)驗(yàn)數(shù)據(jù)。
分析實(shí)驗(yàn)結(jié)果。
撰寫報(bào)告。
數(shù)據(jù)記錄包括:
按鍵操作記錄:記錄按鍵操作的時(shí)間、順序和結(jié)果。
電機(jī)狀態(tài)記錄:記錄電機(jī)的狀態(tài)變化,包括正轉(zhuǎn)、反轉(zhuǎn)、加速、減速和停止。
Proteus仿真結(jié)果記錄:記錄仿真測(cè)試的結(jié)果,包括電機(jī)的狀態(tài)和控制信號(hào)的變化。
七、實(shí)驗(yàn)結(jié)論與討論
在實(shí)驗(yàn)結(jié)束后,我們將根據(jù)實(shí)驗(yàn)數(shù)據(jù)和結(jié)果進(jìn)行分析和討論,得出實(shí)驗(yàn)結(jié)論??赡艿慕Y(jié)論包括:
成功實(shí)現(xiàn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速和停止控制。
成功實(shí)現(xiàn)4檔控制功能。
通過Proteus仿真驗(yàn)證了STM32控制系統(tǒng)的可行性和有效性。
實(shí)驗(yàn)討論將包括對(duì)實(shí)驗(yàn)過程中遇到的問題和困難的分析,以及未來改進(jìn)的方向和建議。
仿真圖(提供源文件):
3.1系統(tǒng)的功能分析及體系結(jié)構(gòu)設(shè)計(jì)
3.1.1系統(tǒng)功能分析
本設(shè)計(jì)由STM32F103R6單片機(jī)核心板電路+L298N電機(jī)驅(qū)動(dòng)電路+按鍵電路+電源電路組成。
1、通過按鍵可以控制電機(jī),正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止。檔位分8檔。
2、按鍵順序正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止。
3.1.2系統(tǒng)總體結(jié)構(gòu)
3.2模塊電路的設(shè)計(jì)
3.2.1 STM32單片機(jī)核心電路設(shè)計(jì)
STM32系列處理器是意法半導(dǎo)體ST公司生產(chǎn)的一種基于ARM 7架構(gòu)的32位、支持實(shí)時(shí)仿真和跟蹤的微控制器。選擇此款控制芯片是因?yàn)楸鞠到y(tǒng)設(shè)計(jì)并非追求成本的最低或更小的功耗,而是在實(shí)現(xiàn)本設(shè)計(jì)功能的前提下能夠提供更豐富的接口和功能以便于設(shè)計(jì)實(shí)驗(yàn)系統(tǒng)各實(shí)驗(yàn)項(xiàng)目所需的外圍擴(kuò)展電路。此款控制芯片在完成單片機(jī)課程的學(xué)習(xí)后上手較為容易,在醫(yī)療器械中應(yīng)用廣泛,具有很好的學(xué)習(xí)、實(shí)驗(yàn)研究?jī)r(jià)值。
一、STM32的主要優(yōu)點(diǎn):
(1)使用ARM最新的、先進(jìn)架構(gòu)的Cortex-M3內(nèi)核
(2) 優(yōu)異的實(shí)時(shí)性能
(3) 杰出的功耗控制
(4) 出眾及創(chuàng)新的外設(shè)
(5) 最大程度的集成整合
(6) 易于開發(fā),可使產(chǎn)品快速將進(jìn)入市場(chǎng)
二、STM32——最佳的平臺(tái)選項(xiàng)
對(duì)于使用同一平臺(tái)進(jìn)行多個(gè)項(xiàng)目開發(fā)而言,STM32是最佳的選擇:
(1) 從僅需少量的存儲(chǔ)空間和管腳應(yīng)用到需要更多的存儲(chǔ)空間和管腳的應(yīng)用
(2) 從苛求性能的應(yīng)用到電池供電的應(yīng)用
(3) 從簡(jiǎn)單而成本敏感的應(yīng)用到高端應(yīng)用
(4) 全系列腳對(duì)腳、外設(shè)及軟件的高度兼容性,給您帶來全方位的靈活性。您可以在不必修改您原始框架及軟件的條件下,將您的應(yīng)用升級(jí)到需要更多存儲(chǔ)空間或精簡(jiǎn)到使用更少存儲(chǔ)空間/ 或改用不同的封裝的規(guī)格。
STM32F103C8T6單片機(jī)核心板接口電路圖如下圖所示。
3.2.2 L298N電機(jī)驅(qū)動(dòng)模塊電路設(shè)計(jì)
本L298N驅(qū)動(dòng)模塊,采用ST公司的L298N芯片,L298N 是一種雙H橋電機(jī)驅(qū)動(dòng)芯片,其中每個(gè)H橋可以提供2A的電流,功率部分的供電電壓范圍是2.5-48v,邏輯部分5v供電,接受5vTTL電平。該模塊可以直接驅(qū)動(dòng)兩路3-30V直流電機(jī),并提供了5V輸出接口,可以給5V單片機(jī)電路系統(tǒng)供電,可以方便的控制直流電機(jī)速度和方向。
一、產(chǎn)品參數(shù):
(1)驅(qū)動(dòng)芯片:L298N雙H橋驅(qū)動(dòng)芯片
(2)具有二極管續(xù)流保護(hù)
(3)直流電機(jī)轉(zhuǎn)速可以通過PWM方式來實(shí)現(xiàn)控制
(4)驅(qū)動(dòng)部分端子供電范圍VMS:+5V~+35V
(5)驅(qū)動(dòng)部分峰值電流Io:2A/橋
(6)邏輯部分端子供電范圍Vss:4.5-5.5V
(7)邏輯部分工作電流范圍:0~36mA
(8)控制信號(hào)輸入電壓范圍:高電平4.5-5.5V 低電平0V
(9)最大功耗:20W
(10)存儲(chǔ)溫度:-25℃~+130℃
二、電機(jī)驅(qū)動(dòng)模塊使用注意事項(xiàng)
(1)第一次上電時(shí)觀察綠色電源指示燈L5是否點(diǎn)亮,如果不亮,請(qǐng)立即斷電檢查電源是否接反。
(2)驅(qū)動(dòng)器為功率設(shè)備,請(qǐng)保持工作環(huán)境的散熱通風(fēng);在連上電機(jī)后使其連續(xù)工作一段時(shí)間后觀察電機(jī)和驅(qū)動(dòng)芯片的溫升正常后方可進(jìn)行后續(xù)使用。
三、電機(jī)驅(qū)動(dòng)模塊接口說明:
(1)電機(jī)驅(qū)動(dòng)電源輸入接口:VMS接正極,GND接負(fù)極
(2)驅(qū)動(dòng)器和控制端口的接口:控制直流電機(jī)時(shí)IN1、IN2和ENA為一組,它們控制電機(jī)A,接在A+和A-,如果電機(jī)A不控制,則ENA懸空即可;如果電機(jī)A控制,則ENA接一路PWM輸出。IN3、IN4和ENB為一組,他們控制電機(jī)B,接在B+和B-,如果電機(jī)B不控制,則ENB懸空即可;如果電機(jī)B控制,則ENB接一路PWM輸出。
四、直流電機(jī)控制信號(hào)真值表
以電機(jī)A為例,高電平H:低電平:L
輸入信號(hào)功能:
IN1=H;IN2=L:電機(jī)A正轉(zhuǎn)
IN1=L;IN2=H:電機(jī)A反轉(zhuǎn)
ENA=H;IN1=IN2:電機(jī)A緊急停車
ENA=L;IN1=X;IN2=X:任意電平電機(jī)A自由停車
L298電機(jī)驅(qū)動(dòng)模塊性能穩(wěn)定、可靠,滿足本設(shè)計(jì)要求。其模塊接口圖如下圖所示。
L298N電機(jī)驅(qū)動(dòng)模塊接口圖
L298N電機(jī)驅(qū)動(dòng)模塊內(nèi)部電路原理圖如下圖所示所示。P1為總電源輸入、GND和5V直流電源輸出接口。總電源經(jīng)過L7805CV穩(wěn)壓芯片將高電壓降為5V,L7805CV是輸出電壓為4.75-5.25V,最大輸入電壓為35V,最大輸出電流為1.5A靜態(tài)電流為4.2-8mA的正電壓穩(wěn)壓器。C1-C4均起到濾波作用,讓電壓更將平穩(wěn)。P3和P4為電機(jī)接口。二極管D1-D8起到保護(hù)作用,防止電機(jī)產(chǎn)生的反向感應(yīng)電動(dòng)勢(shì)損傷L298N。P2為控制引腳,D9-D13為信號(hào)指示燈,相關(guān)電阻起到限流作用,保護(hù)LED燈。
源程序(提供源文件):
char dis0[6] = "Dir:+"; //暫存
char dis1[6] = "Dir:-"; //暫存
char dis2[16] = ""; //暫?
char dis3[] = "RUN "; //暫存?
char dis4[] = "STOP"; //暫存
unsigned char rekey = 0; //按鍵防止抖動(dòng)
unsigned char contNum = 0; //循環(huán)計(jì)數(shù)
int main(void)
{
delay_init(); //延時(shí)函數(shù)初始化
// uart_init(9600); //串口初始化為115200
// uart2_init(9600) ;
TIM3_Int_Init(10, 7199); //定時(shí)器
LED_Init(); //初始化與LED連接的硬件接口
KEY_Init();
Lcd_GPIO_init();
Lcd_Init();
IN1 = 1; //方向控制
IN2 = 0;
pwmRigh = 0; //pwm調(diào)整,電機(jī)轉(zhuǎn)速調(diào)整
Lcd_Puts(0, 0, (unsigned char *)dis0);
sprintf(dis2,"SPEED:%d",pwmRigh);
Lcd_Puts(0, 1, (unsigned char *)dis2);
Lcd_Puts(8, 0, (unsigned char *)dis3);
while(1)
{
if((key1 == 0) || (key2 == 0) || (key3 == 0) || (key4 == 0) || (key5 == 0)) //檢測(cè)到按鍵按下
{
// delay_ms(1); //小抖動(dòng)仿真不需要加
if(rekey == 0)
{
if(key1 == 0) //檢測(cè)是否按下
{
rekey = 1;
IN1 = 1; //方向控制
IN2 = 0;
Lcd_Puts(0, 0, (unsigned char *)dis0);
Lcd_Puts(8, 0, (unsigned char *)dis3);
}
else if(key2 == 0) //設(shè)置值鍵
{
rekey = 1;
IN1 = 0; //方向控制
IN2 = 1;
Lcd_Puts(0, 0, (unsigned char *)dis1);
Lcd_Puts(8, 0, (unsigned char *)dis3);
}
else if(key3 == 0) //設(shè)置值鍵
{
rekey = 1;
if(pwmRigh < 8)pwmRigh = pwmRigh + 2; //pwm 調(diào)速
sprintf(dis2,"SPEED:%d",pwmRigh/2);
Lcd_Puts(0, 1, (unsigned char *)dis2);
}
else if(key4 == 0) //設(shè)置值鍵
{
rekey = 1;
if(pwmRigh >= 2)pwmRigh = pwmRigh - 1; //pwm 調(diào)速
sprintf(dis2,"SPEED:%d",pwmRigh/2);
Lcd_Puts(0, 1, (unsigned char *)dis2);
}
else if(key5 == 0) //設(shè)置值鍵
{
rekey = 1;
IN1 = 0; //方向控制
IN2 = 0;
Lcd_Puts(8, 0, (unsigned char *)dis4);
}
}
}
else
{
rekey = 0; //防止重復(fù)檢測(cè)到按鍵
}
delay_ms(10);
}
}
以下為部分程序,完整程序可在下載鏈接獲?。?/p>
論文報(bào)告:
實(shí)物相關(guān)論文:
仿真相關(guān)論文:
第一章緒論
1.1課題背景及其意義
直流電機(jī)擁有有良好的起制動(dòng)性能,可應(yīng)用于在大范圍內(nèi)的平滑控制,也可廣泛的應(yīng)用于許多需要控制或正反向的電力拖動(dòng)領(lǐng)域中。在控制角度來看,直流控制更是交流拖動(dòng)系統(tǒng)的基礎(chǔ)。早期的控制系統(tǒng)較大部分以模擬電路作為基礎(chǔ),有運(yùn)算放大器、非線性集成電路和少量數(shù)字電路等,控制系統(tǒng)的硬件部分功能比較復(fù)雜,功能比較單一,而且軟件系統(tǒng)不靈活、不好調(diào)試,不利于直流電動(dòng)機(jī)控制技術(shù)發(fā)展和應(yīng)用范圍。伴隨著單片機(jī)控制技術(shù)的快速發(fā)展,使得許多控制功能算法以及軟件得以完成,為直流電動(dòng)機(jī)控制控制提供了更大的發(fā)展空間,并使系統(tǒng)達(dá)到更高的性能。采用單片機(jī)構(gòu)成控制系統(tǒng),可以節(jié)約人力資源和降低系統(tǒng)成本,從而有效的提高工作效率。
傳統(tǒng)的控制系統(tǒng)采用模擬元件,雖然滿足了生產(chǎn)要求,但由于元件易老化和使用時(shí)容易受到干擾影響,并且線路很復(fù)雜,控制效果受到器件性能、溫度等因素的影響,故系統(tǒng)的運(yùn)行可靠性及準(zhǔn)確性得不到保證,甚至出現(xiàn)事故。
目前,直流電動(dòng)機(jī)控制系統(tǒng)數(shù)字化已經(jīng)走向?qū)嵱没?,伴隨著電子技術(shù)的高度發(fā)展,促使直流電機(jī)控制逐步從模擬化向數(shù)字化轉(zhuǎn)變,特別是單片機(jī)技術(shù)的應(yīng)用,使直流電機(jī)控制技術(shù)又進(jìn)入到一個(gè)新的階段,智能化、高可靠性已成為它發(fā)展的趨勢(shì)。因此實(shí)現(xiàn)直流無級(jí)控制對(duì)我們社會(huì)生產(chǎn)和生活有著重大的意義。
1.2 國(guó)內(nèi)外的研究狀況
直流電動(dòng)機(jī)具有良好的起動(dòng)、制動(dòng)性能,宜于在大范圍內(nèi)平滑控制,在許多需要控制或快速正反向的電力拖動(dòng)領(lǐng)域中得到了廣泛的應(yīng)用。從控制的角度來看,直流控制還是交流拖動(dòng)系統(tǒng)的基礎(chǔ)。早期直流電動(dòng)機(jī)的控制均以模擬電路為基礎(chǔ),采用運(yùn)算放大器、非線性集成電路以及少量的數(shù)字電路組成,控制系統(tǒng)的硬件部分非常復(fù)雜,功能單一,而且系統(tǒng)非常不靈活、調(diào)試?yán)щy,阻礙了直流電動(dòng)機(jī)控制技術(shù)的發(fā)展和應(yīng)用范圍的推廣。隨著單片機(jī)技術(shù)的日新月異,使得許多控制功能及算法可以采用軟件技術(shù)來完成,為直流電動(dòng)機(jī)的控制提供了更大的靈活性,并使系統(tǒng)能達(dá)到更高的性能。采用單片機(jī)構(gòu)成控制系統(tǒng),可以節(jié)約人力資源和降低系統(tǒng)成本,從而有效的提高工作效率。
在實(shí)際應(yīng)用中,電動(dòng)機(jī)作為把電能轉(zhuǎn)換為機(jī)械能的主要設(shè)備,一是要具有較高的能量轉(zhuǎn)換效率;二是應(yīng)能根據(jù)生產(chǎn)工藝的要求調(diào)整轉(zhuǎn)速。電動(dòng)機(jī)的控制性能如何對(duì)提高產(chǎn)品質(zhì)量、提高勞動(dòng)生產(chǎn)率和節(jié)省電能有著直接的決定性影響。因此,控制技術(shù)一直是研究的熱點(diǎn)。
直流電動(dòng)機(jī)在冶金、礦山、化工、交通、機(jī)械、紡織、航空等領(lǐng)域中已經(jīng)得 到廣泛的應(yīng)用。而以往直流電動(dòng)機(jī)的控制只是簡(jiǎn)單的控制,很難進(jìn)行控制,不能 實(shí)現(xiàn)智能化。傳統(tǒng)的控制系統(tǒng)采用模擬元件,雖在一定程度上滿足了生產(chǎn)要求,但是因?yàn)樵菀桌匣驮谑褂弥幸资芡饨绺蓴_影響,并且線路復(fù)雜、通用性差,控制效果受到器件性能、溫度等因素的影響,故系統(tǒng)的運(yùn)行可靠性及準(zhǔn)確性得不到保證,甚至出現(xiàn)事故。如今,直流電動(dòng)機(jī)的控制控制已經(jīng)離不開單片機(jī)的支持,單片機(jī)應(yīng)用技術(shù)的飛速發(fā)展促進(jìn)了自動(dòng)控制技術(shù)的發(fā)展,使人類社會(huì)步入了自動(dòng)化時(shí)代,單片機(jī)應(yīng)用技術(shù)與其他學(xué)科領(lǐng)域交叉融合,促進(jìn)了學(xué)科發(fā)展和專業(yè)更新,引發(fā)了新興交叉學(xué)科與技術(shù)的不斷涌現(xiàn)。現(xiàn)代科學(xué)技術(shù)的飛速發(fā)展,改變了世界,也改變了人類的生活。由于單片機(jī)的體積小、重量輕、功能強(qiáng)、抗干擾能力強(qiáng)、控制靈活、應(yīng)用方便、價(jià)格低廉等特點(diǎn),計(jì)算機(jī)性能的不斷提高,單片機(jī)的應(yīng)也更加廣泛特別是在各種領(lǐng)域的控制、自動(dòng)化等方面。
目前,直流電動(dòng)機(jī)控制系統(tǒng)數(shù)字化已經(jīng)走向?qū)嵱没殡S著電子技術(shù)的高度發(fā)展,促使直流電機(jī)控制逐步從模擬化向數(shù)字化轉(zhuǎn)變,特別是單片機(jī)技術(shù)的應(yīng)用,使直流電機(jī)控制技術(shù)又進(jìn)入到一個(gè)新的階段,智能化、高可靠性已成為它發(fā)展的趨勢(shì)。
近年來,隨著科技的進(jìn)步,電力電子技術(shù)得到了迅速的發(fā)展,直流電機(jī)得到了越來越廣泛的應(yīng)用。直流它具有優(yōu)良的控制特性,控制平滑、方便,控制范圍廣;過載能力大,能承受頻繁的沖擊負(fù)載,可實(shí)現(xiàn)頻繁的無級(jí)快速起動(dòng)、制動(dòng)和反轉(zhuǎn)。
1.3本文的主要研究?jī)?nèi)容及論文結(jié)構(gòu)安排
第1章.主要介紹本設(shè)計(jì)的課題背景及國(guó)內(nèi)外研究狀況;
第2章.主要說明系統(tǒng)方案的選擇;
第3章.主要介紹硬件電路的組成及使用方法;
第4章.主要介紹軟件設(shè)計(jì);
第5章.主要介紹硬件調(diào)試;
資料清單如下:
0.常見使用問題及解決方法–必讀?。。。?br />
1.源程序
2. 仿真
3. 論文報(bào)告
4.講解視頻
5.功能要求
Altium Designer 軟件資料
KEIL軟件資料
L298N的詳細(xì)資料.doc
Proteus軟件資料
單片機(jī)學(xué)習(xí)資料
目錄清單.txt
答辯技巧
設(shè)計(jì)報(bào)告常用描述
鼠標(biāo)雙擊打開查找更多51 STM32單片機(jī)課程畢業(yè)設(shè)計(jì).url
資料百度網(wǎng)盤下載鏈接