微控制器 步進電機調速課程設計報告

2021-04-12 22:40:01 字數 3635 閱讀 6883

目錄第一章概述2

1.1 微控制器簡介2

1.2步進電機簡介2

第二章設計目的與要求3

2.1設計目的3

2.2設計要求3

第三章硬體電路設計4

3.1程式流程圖4

3.2硬體電路圖5

3.3系統工作原理6

3.4功能說明6

第四章軟體設計7

4.1 c語言程式7

4.2組合語言程式12

第五章總結與體會26

第六章參考文獻27

第一章概述

1.1微控制器簡介

微控制器是單片微型計算機的簡稱,是典型的嵌入式微控制器(microcontroller unit),常用英文本母的縮寫mcu表示微控制器,它最早是被用在工業控制領域。微控制器由晶元內僅有cpu的專用處理器發展而來。最早的設計理念是通過將大量外圍裝置和cpu整合在乙個晶元中,使計算機系統更小,更容易整合進複雜的而對體積要求嚴格的控制裝置當中。

微控制器是一種整合在電路晶元,是採用超大規模積體電路技術把具有資料處理能力的**處理器cpu隨機儲存器ram、唯讀儲存器rom、多種i/o口和中斷系統、定時器/計時器等功能(可能還包括顯示驅動電路、脈寬調變電路、模擬多路轉換器、a/d轉換器等電路)整合到一塊矽片上構成的乙個小而完善的計算機系統。

1.2步進電機簡介

步進電動機是一種用電脈衝訊號進行控制,並將電脈衝訊號轉換成相應的角位移的執行器。由於受脈衝的控制,其轉子的角位移量和速度嚴格地與輸入脈衝的數量和脈衝頻率成正比。改變通電順序可改變步進電動機的旋轉方向;改變通電頻率可改變步進電動機的轉速。

步進電機是一種感應電機,它的工作原理是利用電子電路,將直流電變成分時供電的,多相時序控制電流,用這種電流為步進電機供電,步進電機才能正常工作,驅動器就是為步進電機分時供電的多相時序控制器。雖然步進電機已被廣泛地應用,但步進電機並不能像普通的直流電機、交流電機在常規下使用。它必須由雙環形脈衝訊號、功率驅動電路等組成控制系統方可使用。

因此用好步進電機卻非易事,它涉及到機械、電機、電子及計算機等許多專業知識。 步進電機作為執行元件,是機電一體化的關鍵產品之一, 廣泛應用在各種自動化控制系統中。隨著微電子和計算機技術的發展,步進電機的需求量與日俱增,在各個國民經濟領域都有應用。

1.3步進電機工作原理

對於一四相步進電機,採用單極性直流電源供電,只要對步進電機的各相繞組按合適的時序通電,就能使步進電機步進轉動。下圖是四相反應式步進電機工作原理示意圖。

開始時,開關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方向轉動。

四相步進電機按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉動力矩小。八拍工作方式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉動力矩又可以提高控制精度。

單四拍、雙四拍與八拍工作方式的電源通電時序與波形分別如圖2.a、b、c所示:

a. 單四拍 b. 雙四拍 c八拍

第二章設計目的與要求

2.1設計目的

通過具體小型測試系統設計,實踐微控制器系統設計及除錯的全過程,以加深對微控制器內部結構、功能和指令系統的理解,並進一步學習微控制器開發系統的應用及一些外圍晶元的介面和程式設計方法,初步掌握微控制器系統的硬體、軟體設計技術及除錯技巧。

2.2設計要求

1.由乙個總開關按鈕控制步進電機的啟動和停止,並由乙個led燈指示電機狀態,亮表示電機運轉;滅表示電機停止。

2.由乙個按鈕選擇電機正轉或反轉,並由兩個led燈指示電機旋轉狀態,其中乙個亮表示正轉,另乙個亮表示反轉。

3.由三個按鈕實現**調速功能,分別對應低速、中速、高速模式,並由三個led燈指示電機速度模式。

第三章硬體電路設計

3.1程式流程圖

3.2硬體電路圖

3.3系統工作原理

本系統由微控制器主電路、步進電機及其驅動電路、開關鍵控制電路、步進電機狀態顯示電路幾部分組成。微控制器的p0口與開關電路相連,p2口與led指示燈相連,p1口與步進電機相連。工作時,cup根據程式對來自p0口的瞬時值進行分析和處理,並決定將要採取的控制行為。

根據得出的控制決策適時地向p1口和p2口輸出相應訊號,然後通過驅動電路,轉換成對步進電機的控制訊號。

3.4功能說明

1. 「總開關」控制電源通斷。只閉合「總開關」,電機並不轉動,「電源指示燈」亮;斷開「總開關」後電機停止轉動,「電源指示燈」滅。

2. 「正轉開關」閉合後電機正轉,「正轉指示燈」亮。

3. 「反轉開關」閉合後電機反轉,「反轉指示燈」亮。

4. 「慢速開關」閉合後電機慢速旋轉,「慢速指示燈」亮。

5. 「中速開關」閉合後電機中速旋轉,「中速指示燈」亮。

6. 「快速開關」閉合後電機快速旋轉,「快速指示燈」亮。

第四章軟體設計

4.1 c語言程式

include "reg52.h"

sbit f1 = p1^0;

sbit f2 = p1^1;

sbit f3 = p1^2;

sbit f4 = p1^3;

sbit kaiguan = p0^0;

sbit zhengzhuan = p0^1;

sbit fanzhuan = p0^2;

sbit mansu = p0^3;

sbit zhongsu = p0^4;

sbit kuaisu = p0^5;

sbit chaokuaisu = p0^6;

sbit kaiguanled = p2^0;

sbit zhengzhuanled = p2^1;

sbit fanzhuanled = p2^2;

sbit mansuled = p2^3;

sbit zhongsuled = p2^4;

sbit kuaisuled = p2^5;

sbit chaokuaisuled = p2^6;

unsigned char zz[4] = ;

unsigned char fz[4] = ;

//延時子程式

void delay(unsigned int t)

unsigned int k;

while(t--)

}}//正轉子程式

void prun()

mansuled = 1;

}//正轉中速

if(zhongsu == 0)

zhongsuled = 1;

}//正轉快速

if(kuaisu == 0)

kuaisuled = 1;

}//正轉超快速

if(chaokuaisu == 0)

chaokuaisuled = 1;

}zhengzhuanled = 1;

}//反轉子程式

void nrun()

mansuled = 1;

}//反轉中速

if(zhongsu == 0)

{zhongsuled = 0;

for (j=0; j<4; j

微控制器課程設計報告

中南大學 嵌入式微控制器應用系統 綜合設計 題目基於實驗室小型步進電機 控制系統設計 學生姓名張贇楓 學號 0901130425 專業班級自動化1304 日期 2015年12月29日 一 課程設計任務書 題目 基於實驗室小型步進電機控制系統設計 設計要求 1 使用組合語言或c語言 2 程式功能要求 ...

微控制器課程設計報告

石家莊經濟學院資訊工程學院 電子資訊工程專業 微控制器課程設計報告 題目a d轉換 姓名張偉健 學號 408109060205班級 4081090602指導教師田悅新 2011年 6 月 29 日 要求 1 指導教師按照課程設計大綱要求完成學生課程設計指導工作。2 課程設計任務書由指導教師照大綱要求...

微控制器課程設計報告

重慶三峽學院 課程設計報告書 題目 基於步進電機控制系統的設計 學院 系 應用技術學院 年級專業 08級電信 應電 學號 200815254123 學生姓名 宋傳強 指導教師 謝輝 教師職稱 副教授 完成日期2010年12月24日 目錄目錄 2 摘要 3 設計任務 3 第一章步進電機概述 3 1.1...