微控制器課程設計報告

2021-03-14 08:08:35 字數 3263 閱讀 2021

中南大學

嵌入式微控制器應用系統

綜合設計

題目基於實驗室小型步進電機

控制系統設計

學生姓名張贇楓

學號 0901130425

專業班級自動化1304

日期 2023年12月29日

一、課程設計任務書

題目:基於實驗室小型步進電機控制系統設計

設計要求:

(1)、使用組合語言或c語言;

(2)、程式功能要求:通過小鍵盤給定,實現步進電機啟動/停止、正轉/反轉、加速/減速設定與控制,數碼管(或液晶屏)顯示當前步進電機狀態及相關引數,簡單故障診斷與報警。

(3)、上位機監控功能要求:通過串列埠或usb口實現上/下位機通訊,能夠顯示步進電機當前狀態及執行引數(資料顯示或動畫顯示),能夠從上位機控制下位機之步進電機工作。

二、設計原理分析

1.流程框圖

2.原理分析

從結構上看,步進電機分為三相單三拍、三相雙三拍和三相六拍3種,其基本原理如下:

(1) 換相順序的控制通電換相這一過程稱為脈衝分配。例如,三相步進電機在單三拍的工作方式下,其各相通電順序為a→b→c→a,通電控制脈衝必須嚴格按照這一順序分別控制a、b、c相的通斷。三相雙三拍的通電順序為ab→bc→ca→ab,三相六拍的通電順序為a→ab→b→bc→c→ca→a。

(2) 步進電機的換向控制如果給定工作方式正序換相通電,步進電機正轉。若步進電機的勵磁方式為三相六拍,即a→ab→b→bc→c→ca→a。如果按反序通電換相,即a→ac→c→cb→b→ba→a,則電機就反轉。

其他方式情況類似。

(3) 步進電機的速度控制如果給步進電機發乙個控制脈衝,它就轉一步,再發乙個脈衝,它會再轉一步。兩個脈衝的間隔越短,步進電機就轉得越快。調整送給步進電機的脈衝頻率,就可以對步進電機進行除錯。

(4) 步進電機的起停控制步進電機由於其電氣特性,運轉時會有步進感。為了使電機轉動平滑,減小振動,可在步進電機控制脈衝的上公升沿和下降沿採用細分的梯形波,可以減小步進電機的步進角,跳過電機執行的平穩性。在步進電機停轉時,為了防止因慣性而使電機軸產生順滑,則需採用合適的鎖定波形,產生鎖定磁力矩,鎖定步進電機的轉軸,使步進電機轉軸不能自由轉動。

三、硬體模組

1.小鍵盤輸入

接p0口,需接上拉電阻,實現四擋調速功能,帶去抖動功能。

2.數碼管顯示

共陽數碼管,接p2口,由7447驅動,顯示1、2、3、4四擋。

3.開關、方向鍵。

接p3.2、p3.3,功能由外部中斷1、2,定時中斷0實現。

4.步進電機部分

接p1口,由uln2003a驅動。

四、c程式模組分析

1、主程式,注意掃瞄模組

void main()

if(key==0xde)

if(key==0xbe)

if(key==0x7e)

}}}}2、外部中斷0,控制電機的執行和停止

void int0() interrupt 0

3.外部中斷1,控制電機的方向

void int1() interrupt 2

4.定時中斷0,控制電機旋轉

void time() interrupt 1

n++;

}else n=0;

}5.延時程式,功能是小鍵盤去抖動

void delays()

五、課程設計總結

本設計通過分析步進電機結構、工作原理,查閱步進電機控制系統的相關科技文獻,遵循實用、簡單、可靠和低成本的原則,設計了一種既可用於精度要求不高,但控制需完備的場合。對本次設計,有以下結論:

(1)採用微控制器為控制核心,利用其強大的功能,把鍵盤和顯示電路有機的結合起來,組成乙個操作方便、互動性強的控制系統。而且整個系統所包含的技術幾乎包括了現本科學校控制專業所要求的知識,有利於實踐教學取得最大效果。

(2)鍵盤電路和顯示電路採用了動態掃瞄技術,節約了微控制器資源。 (3)系統軟體採用結構化設計,具有易維護性,根據使用者新的要求,對軟體系統進行少量的修改,使系統功能得到一定程度的提高。

六、心得和體會

此次課程設計可以說是獲益匪淺。平時在書本學習的都是一條一條的指令,沒有很清楚地理解指令的真正含義。在這次課程設計中我們在老師的指導下學習了很多課堂上沒有學習到的知識,體會到只有平時多練習,多看程式才能自己編寫程式,自己除錯程式。

通過此次的課程設計,我了解了許多微控制器設計的思想,擴充套件了自己的視野,不再僅僅侷限於書本中幾條簡單的程式,而且更重要的是明白寫程式的態度:仔細謹慎,精益求精。 同時我認識到微控制器設計的精妙,也認識到了微控制器設計的重要性:

微控制器作為一種計算機基本硬體,與計算機廣泛應用緊密相關,他能解決很多大型計算機所不能解決的問題,所以,掌握微控制器設計方法是非常必要的。 在這次的課程設計過程中,借助現代的網路技術,有什麼不懂得馬上上googel,不讓問題遺留到下一天,極大地加快的進度,在上google的過程中也讓我對彙編有了更深一層的認識,並且還讓我初步領略到計算機控制的魅力,可謂一舉多得。課程設計是我從書本到時間非常關鍵的一步,當代大學生動手創新能力是社會所急需的,所以我不要做象牙塔裡的秀才,一定要努力吧此次的課程設計做好。

正如課程設計的任務和地位中所說的那樣,電腦科學在應用上得到飛速發展,因此,學習這方面的知識必須緊密聯絡實際:掌握這方面的知識更要強調解決實際問題的能力。同學們要著重學會面對乙個實際問題,如何去自己收集資料,如何自己去學習新的知識,如何自己去制定解決問題的方案並通過實踐不斷地去分析和解決前進道路上的一切問題,最終到達勝利的彼岸。

最後想說的是,在這次課程設計中我不僅收穫勝利的喜悅,在設計的過程中我也付出了努力,但是,這種付出是快樂的,因為它讓我培養了細緻認真的工作太多,培養的我發現問題、分析問題、解決問題的能力,讓我從汗水中嘗到了喜悅。 再次感謝老師的諄諄教導和學校給我提供了這麼一次機會!

附錄c程式源**

必要的變數定義

#include

unsigned char index=0步進索引

int n=0,n0=211設定週期、方向

unsigned char flag=0,step=0設定方向、停止鍵

void delays();

主程式void main()

if(key==0xde)

if(key==0xbe)

if(key==0x7e)

}}}}外部中斷0子程式

void int0() interrupt 0

外部中斷1子程式

void int1() interrupt 2

定時中斷0子程式

void time() interrupt 1

n++;

}else n=0;

}void delays()

微控制器課程設計報告

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

微控制器課程設計報告

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

微控制器課程設計報告

課程設計名稱 系學生姓名 班級學號 成績指導教師 開課時間 學年學期 一 設計題目 數字時鐘 二 主要內容 利用定時器設計乙個電子鐘,並定義乙個啟動鍵。當按下該鍵時電子時鐘從當前設定值開始走時。按秒重新整理,要求在lcd屏上顯示。三 具體要求 在課程設計時,1人一組,設計報告由學生獨立完成,不得互相...