作品名稱:單片機原理及應用
學校名稱:西京學院
參賽隊伍:winner
參賽老師:宋宇
課程名稱 | 單片機原理及應用 | |||
課程簡介 (課程名稱、課程的性質、作用、課程模式等) | 單片機原理及應用是工科類學生的一門實踐性很強的專業基礎課。該課程主要培養學生應用單片機技術,進行數據計算、分析與處理,并進行工業測量和控制的能力,為后續課程提供必需的基礎知識,在整個課程體系中,起到承上啟下的核心地位。該課程采用項目化和任務驅動為載體,設計學習情境,且學習情境之間呈現遞進和包容的課程模式。 | |||
課程目標 | 專業能力 | 方法能力 | 社會能力 | |
1.能掌握單片機內部結構、指令系統,能運用單片機開發系統、Protues仿真軟件,能具備利用單片機開發小型智能產品的能力。 2.能設計單片機應用系統的硬件和軟件程序,能解決單片機應用開發的實際問題的能力。 | 1.通過自學獲取新技術的能力。 2.利用網絡、文獻等獲取信息的能力。 3.自我控制和管理能力。 4.制定工作計劃的能力。 5.工作結果評價能力。
| 1.培養積極嚴謹的科學態度和工作作風。 2.培養參與專業實踐的工作熱情。 3.培養合作意識、提高語言表達與交流能力。 | ||
學習成果 | 1.課程考核實物作品 要求:拍攝作品實物或仿真運行視頻 2.課程考核作品報告 3.課程現場答辯記錄 | |||
課程內容體系 (列出到二級目錄) | 單元項目一 點亮夢想 項目內容:C51程序設計流程、Keil邏輯分析儀的使用、Proteus單片機仿真及虛擬儀器儀表的使用。 任務一:點亮夢想之LED單燈點亮控制 任務二:點亮夢想之Keil邏輯分析儀的使用(實驗) 任務三:點亮夢想之Proteus LED雙燈閃爍控制 任務四:點亮夢想之Proteus LED流水燈控制(實驗) 任務五:點亮夢想之按鍵輸入 任務六:點亮夢想之創新設計(實驗) 單元項目二 動起來 項目內容:繼電器控制、PWM調光控制、PWM直流電機調速、步進電機控制。 任務一:動起來之繼電器實驗 任務二:動起來之PWM調光(實驗) 任務三:動起來之直流電機控制 任務四:動起來之直流電機PWM調速(實驗) 任務五:動起來之創新設計(理論+實驗) 單元項目三 聯通無限 項目內容:單片機與PC機串口通訊、手機藍牙遙控。 任務一:聯通無限之與PC機串口通訊 任務二:聯通無限之手機藍牙遙控(實驗) 任務三:聯通無限之創新設計(理論+實驗) 單元項目四 感知你我——傳感測量 項目內容:電壓測量、溫度光度測量、轉速測量、距離測量。 任務一:感知你我之電壓表設計 任務二:感知你我之數據處理(理論+實驗) 任務三:感知你我之溫度光度測量 任務四:感知你我之轉速測量(理論+實驗) 單元項目五 計數定時——時不我待 項目內容:計數器、頻率計、定時鬧鐘。 任務一:計數定時之計數器 任務二:計數定時之頻率計(實驗) 任務三:計數定時之定時鬧鐘 任務四:計數定時之創新設計(實驗)
| |||
學習考核評價 (包括形成性和終結性,個人成績和小組成績,教師評價、自我評價、同伴評價、企業評價) | 在教學過程的各個環節,從學生的出勤、日常表現、作業、測試、項目完成情況及完成質量,對學生進行全方位的考核。
| |||
課程資源 (包括課程資源開發的理念、課程資源的類型、表現形式) | (一)教材及參考資料 教材: 《單片機原理及應用(C51編程)》,李全利.北京:高等教育出版社,2012年12月. 《51單片機工程師是怎樣煉成的-基于c語言+proteus仿真》,老楊.北京:電子工業出版社,2012.1 《單片機c51編程工程師實踐教材-基于STC12C5A60S2單片機》李紅波,宋宇,陳明淑,段金英.2016.12(西京學院校級自編教材) 網絡課程平臺: 一師一優課精品課程網站《單片機原理及應用》 http://course.xijing.edu.cn/#/courselist//info/573af35d5a5467a337a1acdd 參考資料: 《51單片機自學筆記》,范紅剛.北京:航空航天大學出版社, 《愛上單片機》,杜洋.北京:人民郵電出版社 《Proteus實例教程》,朱清慧.北京:清華大學出版社 (二)其他教學資源 《C程序設計》, 譚浩強.北京: 清華大學出版社,2010年6月 STC官網:www.stcmcu.com |
PWM直流電動機調速
【教學進程安排】
一、復習上一次課程內容:LCD1602顯示相關知識
課程的基本任務:
v 直流電機基本工作原理、直流電動機調速原理;直流電機驅動芯片使用;
v 直流電機驅動芯片使用
二、內容導入
在工業控制系統中,最常見的是對電動機的控制。 電動機的數字控制是電動機的發展趨勢。用單片機對電動機進行控制,是實現電動機數字控制的最常用手段。
三、主要內容設計
1、直流電機介紹
直流電機是指能將直流電能轉換成機械能(直流電動機)或將機械能轉換成直流電能(直流發電機)的旋轉電機。它是能實現直流電能和機械能互相轉換的電機。
直流電動機,將電能轉換為機械能;
直流發電機,將機械能轉換為電能。
直流電動機原理:是根據通電線圈在磁場中受到力的作用而發生轉動的。
直流電動機組成:主要由兩部分,即能夠轉動的線圈和固定不動的磁體。在電動機里,能夠轉動的部分叫轉子,固定不動的部分叫定子,電動機工作時,轉子在定子中飛快地轉動。
2、直流電機調速
直流電動機在當今生活的各方面應用越來越廣泛,直流電動機的調速控制是電機應用的一個重要技術保障。直流電動機具有良好的調速性能、較大的起動轉矩和過載能力強等許多優點,因此在許多行業中仍有應用。
直流電動機新的調速方式:
隨著計算機進入控制領域以及新型的電力電子功率元器件的不斷出現,采用全控型的開關功率元件進行脈寬調制(pulse width modulation,簡稱PWM)已成為直流電動機新的調速方式。
PWM調速:通過改變周期性脈沖信號的占空比來改變加在電動機上的平均電壓,從而達到調速目的。
PWM調速的原理如圖1-1所示:設將開關周期性的閉合、斷開,開和關的周期是T。在一個周期內,閉合的時間是τ,斷開的周期是T-τ。如果外加的電源電壓U為常數,則電源加到電動機電樞上的波形為方波列。其高度為U,寬度為τ。
α=τ/T 稱為導通率,當T不變時,只要連續改變τ(0~T)就可以使電樞電壓的平均值Uα連續地從0變到U,從而連續地改變電動機的轉速。實際的PWM調速電路用功率晶體管代替開關??赡媸?/span>PWM用四個功率晶體管組成電橋,實現雙向調速。開關頻率達30KHz。圖中的二極管是續流二極管,當開關斷開時由于電樞電感的作用,電動機的電樞電流可以繼續形成回路。
(a)電氣原理
(b)波形
圖1-1 PWM調速原理
3、直流電機驅動
一般來說,直流電機的驅動主要達林頓管和專用驅動芯片。達林頓管雖方便,但是無法控制電機的轉向,而驅動芯片則顯得比較方便。H 橋驅動電路是為了直流電機而設計的一種常見電路,它主要實現直流電機的正反向驅動,其典型電路形式如下:
從圖中可以看出,其形狀類似于字母“H”,而作為負載的直流電機是像“橋”一樣架在上面的,所以稱之為“H 橋驅動”。4個開關所在位置就稱為“橋臂”。從電路中不難看出,假設開關 A、D接通,電機為正向轉動,則開關B、C接通時,直流電機將反向轉動。從而實現了電機的正反向驅動。
借助這 4 個開關還可以產生另外 2 個電機的工作狀態:
A) 剎車 —— 將B 、D開關(或A、C)接通,則電機慣性轉動產生的電勢將被短路,形成阻礙運動的反電勢,形成“剎車”作用。
B) 惰行 —— 4個開關全部斷開,則電機慣性所產生的電勢將無法形成電路,從而也就不會產生阻礙運動的反電勢,電機將慣性轉動較長時間。
以上只是從原理上描述了H 橋驅動,而實際應用中很少用開關構成橋臂,通常使用晶體管,因為控制更為方便,速度壽命都長于有接點的開關(繼電器)。
細分下來,晶體管有雙極性和MOS管之分,而集成電路只是將它們集成而已,其實質還是這兩種晶體管,只是為了設計、使用方便、可靠而做成了一塊電路。
雙極性晶體管構成的H橋和MOS管構成的H橋:
L298芯片的介紹
L298是ST公司生產的一種高電壓、大電流電機驅動芯片。
該芯片的主要特點是:工作電壓高,最高工作電壓可達46V;輸出電流大,瞬間峰值電流可達3A,持續工作電流為2A;
內含兩個H橋的高電壓大電流全橋式驅動器,可以用來驅動直流電動機和步進電動機、繼電器、線圈等感性負載;
具有兩個使能控制端,在不受輸入信號影響的情況下允許或禁止器件工作;
有一個邏輯電源輸入端,使內部邏輯電路部分在低電壓下工作;可以外接檢測電阻,將變化量反饋給控制電路。
L298對直流電動機控制的邏輯真值表
表格說明:其中C、D分別為IN1、IN2或IN3、IN4;L為低電平,H為高電平,※為不管是低電平還是高電平。
Ven:使能端電壓
L298引腳功能表
5、編寫編寫直流電機控制程序
1.用L298芯片驅動直流電機,(通過按鍵)控制直流電機啟動和停止。并且在proteus中進行仿真。
代碼參考:
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit moto = P3^4;
sbit K1 = P3^2;
sbit K2 = P3^3;
void Delay10ms() //@11.0592MHz
{
unsigned char i, j;
i = 18;
j = 235;
do
{
while (--j);
} while (--i);
}
void main()
{
moto = 0;
while(1)
{
if(K1==0)
{
Delay10ms();
if(K1==0)
{
moto = 1; //起動直流電動機運行
}
}
else if(K2==0)
{
Delay10ms();
if(K2==0)
{
moto = 0; //直流電動機停止運行
}
}
}
}
2.用L298芯片驅動直流電機,控制直流電機正轉和反轉。并且在proteus中進行仿真。
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit ENA = P2^2;
sbit IN1 = P2^0;
sbit IN2 = P2^1;
void Delay10000ms() //@11.0592MHz
{
unsigned char i, j, k;
i = 71;
j = 10;
k = 171;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void main()
{
while(1)
{
ENA = 1;//使能
IN1 = 1;
IN2 = 0; //正轉
Delay10000ms();//正轉延時
ENA = 1; //使能
IN1 = 0;
IN2 = 1; //反轉
Delay10000ms();//反轉延時
ENA = 0;
Delay10000ms();//停止
}
}
3.用L298芯片驅動直流電機,采用PWM控制直流電機轉動速度。實現由慢到快,并且在proteus中進行仿真。
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit ENA = P2^2;
sbit IN1 = P2^0;
sbit IN2 = P2^1;
uint zhouqi=255,kaitong;
void DelayMs( uint Ms )
{
uchar i;
while (Ms--)
{
for ( i = 0; i < 5; i++ );
}
}
void main()
{
while(1)
{
for(kaitong=0;kaitong<zhouqi;kaitong++)
{
ENA = 1;
DelayMs( kaitong );
ENA = 0;
DelayMs( zhouqi-kaitong );
}
}
}
【歸納總結】
直流電機啟動、停止、正轉、反轉、調速。
【課外學習要求】
直流電機控制相關項目代碼的編寫
【課后分析及改進】
備注:根據學生上課的反映,學生的作業情況制定相應的改進措施。