嵌入式課程設計_第1頁
嵌入式課程設計_第2頁
嵌入式課程設計_第3頁
嵌入式課程設計_第4頁
嵌入式課程設計_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、課程設計報告書題目: 基于stm32的步進電機控制系統(tǒng)課程:嵌入式系統(tǒng)課程設計專 業(yè):電子信息科學與技術(shù)2016年4 月15 日課程設計任務書學號學生姓 名專業(yè)(班級)設計題 目基于 stm32的步進電機控制系統(tǒng)設1.基于 STM32f臺;計2.實現(xiàn)步進電機的控制;技3.LCD顯示。術(shù)參數(shù)設通過STM32實現(xiàn)對步進電機的精確控制,經(jīng)按鍵實現(xiàn)正轉(zhuǎn)、反轉(zhuǎn)以及轉(zhuǎn)計一定角度,再通過TFT彩色LCD顯示圖片與系統(tǒng)信息。要求1杜春雷、STM32體系結(jié)構(gòu)與編程、北京:清華大學出版社,20032劉燦偉、 基于 STM32的步進電動機調(diào)速系統(tǒng)的研究、 學碩士學位華北電力大參考論文,20073周立功、STM32微

2、控制器基礎(chǔ)與實踐(第二版)、北京 天大學出版:北京航空航資料社,20054張綺義,謝建雄,謝勁心 設計實例、北京:STM32嵌入式常用模塊與綜合系統(tǒng)精講、電子工業(yè)出版社,20075譚浩弓C程序設計、北京:清華大學出版社,19996顧純谷、電機及拖動基礎(chǔ)、機械工業(yè)出版社,20077陳世元、電機學、中國電力出版社,20058張民、微機控制步進脈寬調(diào)速系統(tǒng)設計、遼寧工程技術(shù)大學學報,20019張廣溢,郭前崗、電機學、 重慶:重慶大學出版社,200210李發(fā)海、電機與拖動基礎(chǔ)、北京:北京廣播電視大學出版社,199311于海生、微型計算機控制技術(shù)、清華大學出版社,200612邵裕森,戴先中、 過程控制工

3、程、機械工業(yè)出版社,2000學生姓名:學號:專業(yè):課程設計題目基于stm32的步進電機控制系統(tǒng)成績:指導教師:年 月 日信息工程學院課程設計成績評定表摘要本文的主要工作就是基于STM3眇進電機控制系統(tǒng)的設計。隨著越來越多的 高科技產(chǎn)品逐漸融入了日常生活中,步進電機控制系統(tǒng)發(fā)生了巨大的變化。單片 機、C語言等前沿學科的技術(shù)的日趨成熟與實用化,使得步進電機的控制系統(tǒng)有 了新的的研究方向與意義。本文描述了一個由 STM32散處理器、步進電機、LCD 顯示器、鍵盤等模塊構(gòu)成的,提供基于STM32勺PWMH分技術(shù)的步進電機控制系 統(tǒng)。該系統(tǒng)采用STM32散處理器為核心,在MDK勺環(huán)境下進行編程,根據(jù)鍵盤

4、的輸 入,使STM3A生周期性PW俅號,用此信號對步進電機的速度及轉(zhuǎn)動方向進行控 制,并且通過LCD顯示出數(shù)據(jù)。結(jié)果表明該系統(tǒng)具有結(jié)構(gòu)簡單、工作可靠、精度 高等特點、 關(guān)鍵詞:STM32微處理器;步進電機;LCD顯示;PWM信號;目錄1任務提出與方案論證 61、1任務提出 61、2方案論證 62總體設計 72.1系統(tǒng)的硬件設計 72、2控制系統(tǒng)軟件設計 83詳細設計及仿真 93、1設計主要程序部分 93、2調(diào)試與仿真 104總結(jié) 115實物圖與仿真圖 121任務提出與方案論證步進電機控制系統(tǒng)的整個設計中最重要的部分就是利用PWMffl分實現(xiàn)步進電機調(diào)速的處理,雖然PWMI速很早就開始研究應用,

5、但如何用PWM3分調(diào)速的快 速性與準確性至今仍就是生產(chǎn)與科研的課題。隨著微電子技術(shù)的發(fā)展與普及,更多高性能的單片機應用使得PWMB分實現(xiàn)步進電機PWMI速的快速性與準確性都 有了極大的提高。1、1任務提出總體方案根據(jù)課題要求,本設計采用STM32cortex-M3處理器,由SPGT62C19B 電機控制模塊作為直流電機的驅(qū)動芯片,由ADC俞入電位器產(chǎn)生調(diào)速命令,用TFT 彩色LCD作為顯示模塊。1、2方案論證步進電機控制系統(tǒng)硬件方案本系統(tǒng)主要由一塊 STM32平臺、SPGT62C19即步進電機驅(qū)動模塊構(gòu)成,以 STM3勸核心,包括電機驅(qū)動、電機、A/D轉(zhuǎn)換、LCD顯示等模塊。系統(tǒng)的結(jié)構(gòu)框 圖如

6、圖2、1所示。STM32乍為主才$芯片,通過I/O端口來控制SPGT62C19B步進電機驅(qū)動芯片, 從而實現(xiàn)對步進電機的控制。通過ADC輸入電位器產(chǎn)生調(diào)速命令反饋給STM32,STM32節(jié)SPGT62C19B步進電機驅(qū)動模塊的狀態(tài),從而使電機改變轉(zhuǎn)速 與方向。同時,電機轉(zhuǎn)速可由彩色液晶LCD顯示出來,用ADCt入電位器來對步進 電機的轉(zhuǎn)動方向與轉(zhuǎn)速等進行設定。步進電機控制系統(tǒng)軟件方案硬件功能的實現(xiàn)離不開軟件的設計與完成。軟件設計就是步進電機控制系統(tǒng) 設計中最重要、最關(guān)鍵的部分,也就是本次畢業(yè)設計的難點之處。由于本系統(tǒng)使 用STM321f臺,運用Keil for ARM 開發(fā)環(huán)境,在Keil u

7、 Vision軟件平臺進行開發(fā)。本課題軟件設計的思想主要就是自頂向下,模塊化設計,逐一設計各個子模塊, 分別進行調(diào)試,最后的連調(diào)整個程序,判斷就是否達到預期的要求,做出結(jié)論。各 個部分函數(shù)都可相互調(diào)用又相對獨立可調(diào),保證調(diào)試的便利與程序的可讀性。2總體設計第一部分具體介紹了步進電機控制系統(tǒng)的硬件設計 ,包括SPGT62C19由機 控制模塊電路的設計;第二部分闡述了步進電機控制系統(tǒng)的軟件設計;2.1系統(tǒng)的硬件設計本系統(tǒng)采用STM32乍為主才$制器,采用ADC俞入電位器作為輸入部分,步進電 機及其驅(qū)動電路采用SPGT62C19B步進電機驅(qū)動模塊。下面分別對 STM3”及 相關(guān)模塊的特性進行具體介紹

8、。(1)步進電機模塊本設計選用專用的電機驅(qū)動芯片 SPGT62C19 B SPGT62C19電機控制模組就 是為學生以及單片機愛好者學習步進電機與直流電機控制而設計的學習套件。模組采用凌陽SPGT62C19盅機驅(qū)動芯片,配置兩相步進電機與直流電機各一臺,并 提供4位LED數(shù)碼管用來顯示電機轉(zhuǎn)速等信息。 模組配備的步進電機為35BYJ26 型永磁步進電機,工作方式為雙極性兩相四拍。步進電機就是一種將電脈沖轉(zhuǎn)化 為角位移的執(zhí)行機構(gòu)。當步進電機接收到一個脈沖信號,它就按設定的方向轉(zhuǎn)動 一個固定的角度(稱為“步距角”)。可以通過控制脈沖個數(shù)來控制角位移量,從 而達到準確定位的目的;同時可以通過控制脈沖

9、頻率實現(xiàn)步進電機的調(diào)速。(2)LCD顯示模塊顯示電路就是本設計硬件的主要構(gòu)成部分,STM32外接TFT模塊,MzT24彩色 TFT模塊就是一個2、8英寸的TFT模塊,內(nèi)置TFT控制器,對外連接直接通過8 位的8080總線進行指令與數(shù)據(jù)的傳輸。MzT24W像素點數(shù)為240X 320,色彩深度 為16位色,也就就是每一個像素點需要用 16位的數(shù)據(jù)來表示其顯示的內(nèi)容。 MzT24模塊的顯示操作非常簡便,需要改變某一個像素點的顏色時,只需要對該 點所對應的2個字節(jié)的顯存進行操作即可。這部分電路連接時主要就是把數(shù)據(jù)準 確穩(wěn)定的顯示出來,因此連接電路時需注意端口對應的準確連接,否則嚴重影響 數(shù)據(jù)顯示的穩(wěn)定

10、,甚至出現(xiàn)顯示不出來數(shù)據(jù)。2、2控制系統(tǒng)軟件設計控制系統(tǒng)軟件設計步驟:對于一個完整的嵌入式應用系統(tǒng)的開發(fā),硬件的設計與調(diào)試工作僅占整個工 作量的一半,應用系統(tǒng)的程序設計也就是嵌入式系統(tǒng)設計一個非常重要的方面,程序的質(zhì)量直接影響整個系統(tǒng)功能的實現(xiàn),好的程序設計可以克服系統(tǒng)硬件設計 的不足,提高應用系統(tǒng)的性能,反之,會使整個應用系統(tǒng)無法正常工作。不同于基于PC平臺的程序開發(fā),嵌入式系統(tǒng)的程序設計具有其自身的特點, 在編寫嵌入式系統(tǒng)應用程序時,可采取如下幾個步驟:(1)明確所要解決的問題:根據(jù)問題的要求,將軟件分成若干個相對獨立的 部分,并合理設計軟件的總體結(jié)構(gòu)(2)合理配置系統(tǒng)的資源:與基于8位或

11、16位微控制器的系統(tǒng)相比較,基于 32位微控制器的系統(tǒng)資源要豐富得多,但合理的資源配置可最大的限度發(fā)揮系 統(tǒng)的硬件潛能,提高系統(tǒng)的性能。對于一個特定的系統(tǒng)來說,其系統(tǒng)資源,如Flash、EEPRQMSDRAM中斷控制等,都就是有限的,應合理配置系統(tǒng)資源。(3)程序的設計、調(diào)試與優(yōu)化:根據(jù)軟件的總體結(jié)構(gòu)編寫程序,同時采用各種 調(diào)試手段,找出程序的各種語法與邏輯錯誤,最后應使各功能程序模塊化,縮短代 碼長度以節(jié)省存儲空間并減少程序的執(zhí)行時間。此外,由于嵌入式系統(tǒng)一般都應用在環(huán)境比較惡劣的場合,易受各種干擾,從 而影響到系統(tǒng)的可靠性,因此,應用程序的抗干擾技術(shù)也就是必須考慮的,這也就 是嵌入式系統(tǒng)應

12、用程序不同于其她應用程序的一個重要特點。Keil for ARM 軟件開發(fā)環(huán)境本次設計的軟件部分采用模塊化的設計思想,將各個功能都編成了相應的子 程序。程序運行時,通過主程序的調(diào)用及相應模塊之間的嵌套調(diào)用,實現(xiàn)系統(tǒng)的整 體功能。本設計所需的STM32勺外設包括PAD、PB口、PC口與定時器端口,所以也 要對外設的時鐘進行設置。由于 PA 口、PB 口、PC 口在APB1系統(tǒng)總線外設上,定時器TIM2與TIM3在APB臻統(tǒng)總線外設上,所以要對APB1與APB2總線的時鐘 頻率進行設置。經(jīng)過APB1與APB2的分頻,將SYSCLK專換成可以進行外設及 TIM 可以接收的系統(tǒng)時鐘。在時鐘初始化子程序

13、中先對系統(tǒng)時鐘的模式進行選擇,即將系統(tǒng)時鐘設置為HSE模式(外部時鐘模式),然后設置AHB時鐘等于系統(tǒng)時鐘, 且設置了低速或高速AHB最后使能的時鐘,時鐘初始化子程序的流程。3程序設計及仿真3、1設計主要程序部分(主函數(shù))#include "led、h"#include "delay、h"#include "key h"#include "sys、 h"#include "lcd 、 h"#include "usart 、 h"#include"drive、h&qu

14、ot;#include "chinese h"/?D? e ?#include "image2lcd、h"/ i ? ?e?extern const u8gImage_jiemian口;float t1;u16t,t11,t12,t13,t14,result;unsignedcharbeatcode28=0x0e,0x0c,0x0 d,0x09,0x0b,0x03,0x07,0x06;unsignedcharbeatcode18=0x06,0x07,0x0 3,0x0b,0x09,0x0d,0x0c,0x0eint main(void)unsignedc

15、hartemp=0,angle=0,index=0,flag 1;unsigned long beat=0;int key=2;Drive_Init();uart_init(9600); / '?u3?e ?6003delay_init();KEY_Init();LCD_Init();LED_Init();while(1)key=KEY_Scan(0);if(key=1)temp+;temp=0;if(key=2)angle+=15;if(angle>=360)angle=0;flag1=1;if(temp=2)for(index=0;index<8;in dex+)GPI

16、OA->ODR=beatcode2 index;delay_ms(2);else if(temp=1)if(temp>2)delay_ms(2);flag1=0;獨立進行的,因此軟件調(diào)試就是在硬件完成之前,而硬件也就是在無完整軟件情(for(index=0;index<8;in dex+)beat=(angle*4076)/360;GPIOA->ODR=beatcode1while(beat-)index;delay_ms(2);GPIOA->ODR=beatcode1indexLED0=!LED0;else if(temp=0)index+;GPIOA->

17、ODR=0;delay_ms(10);while(flag1)index=index&0x07;3、2調(diào)試與仿真調(diào)試包括硬件調(diào)試、軟件調(diào)試與整體聯(lián)調(diào)。由于硬件與軟件的研制就是相對況下進行調(diào)試的。在調(diào)試中找出缺陷,判斷故障源,對硬、軟件做出修改,反復進 行這一過程,直至確信沒有錯誤之后接入單片機進行整機聯(lián)調(diào)。軟件系統(tǒng)的調(diào)試任務就是要查出程序設計當中的語法及邏輯錯誤 ,并加以糾 正。由于本課題設計軟件程序的編寫就是按功能模塊的劃分來完成的 ,所以軟件 調(diào)試可以采用“先分塊獨立測試后組合聯(lián)機”、“先單步調(diào)試后聯(lián)合調(diào)試”的方法。 所謂的“先分塊獨立后組合聯(lián)機”就就是首先將軟件程序進行模塊分類

18、,把與硬 件無關(guān)的模塊進行獨立調(diào)試,把與硬件相關(guān)的程序模塊進行軟、硬聯(lián)合仿真調(diào)試。 當各模塊都獨立調(diào)試完成后,可將各程序模塊連接起來進行聯(lián)調(diào),以解決在程序 模塊連接中可能出現(xiàn)的邏輯錯誤。系統(tǒng)軟、硬件的聯(lián)調(diào)就是一個不斷完善的過程,常常需要反復多次修改補充 才能調(diào)試出一個性能良好的系統(tǒng)。在聯(lián)調(diào)過程中我們經(jīng)常遇到故障,這時需要對系統(tǒng)進行檢查,萬用表就是使用最多的檢查工具。在系統(tǒng)聯(lián)調(diào)時不排除某個元件 被燒壞或者不工作,如SPGT62C19B片被燒壞,重新?lián)Q個芯片。以下為在對各個模塊進行調(diào)試過程中出現(xiàn)的問題,以及問題的分析與解決過 程:一、程序仿真正確,將程序下載到STM32t理器中時,LCD顯示的數(shù)據(jù)不穩(wěn)定。原因分析與解決方法:既然能夠顯示數(shù)據(jù),說明硬件LCD®接就是正確的。可 知,還就是在軟件編寫時出現(xiàn)了問題,便從LCD顯示程序一步步檢查,最后發(fā)現(xiàn)定 義數(shù)據(jù)的類型出現(xiàn)了錯誤。二、軟件編寫完成后進行調(diào)試時下載不了程序。原因分析與解決方法:軟件配置沒有設置好,經(jīng)過指導老師的指導找到了問 題的所在,重新配置好軟件后程序順利的下載。4總結(jié)本

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論