基于stm32的步進(jìn)電機(jī)控制系統(tǒng)嵌入式課程設(shè)計(jì)_第1頁
基于stm32的步進(jìn)電機(jī)控制系統(tǒng)嵌入式課程設(shè)計(jì)_第2頁
基于stm32的步進(jìn)電機(jī)控制系統(tǒng)嵌入式課程設(shè)計(jì)_第3頁
基于stm32的步進(jìn)電機(jī)控制系統(tǒng)嵌入式課程設(shè)計(jì)_第4頁
基于stm32的步進(jìn)電機(jī)控制系統(tǒng)嵌入式課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

摘要本文的主要工作是基于STM步3進(jìn)2電機(jī)控制系統(tǒng)的設(shè)計(jì)。隨著越來越多的高科技產(chǎn)品逐漸融入了日常生活中,步進(jìn)電機(jī)控制系統(tǒng)發(fā)生了巨大的變化。單片機(jī)、C語言等前沿學(xué)科的技術(shù)的日趨成熟與實(shí)用化,使得步進(jìn)電機(jī)的控制系統(tǒng)有了新的的研究方向與意義。本文描述了一個由STM微3處2理器、步進(jìn)電機(jī)、LC顯D示器、鍵盤等模塊構(gòu)成的,提供基于STM的32PW細(xì)M分技術(shù)的步進(jìn)電機(jī)控制系統(tǒng)。該系統(tǒng)采用STM微3處2理器為核心,在MD的K環(huán)境下進(jìn)行編程,根據(jù)鍵盤的輸入,使STM產(chǎn)3生2周期性PW信M號,用此信號對步進(jìn)電機(jī)的速度及轉(zhuǎn)動方向進(jìn)行控制,并且通過LC顯D示出數(shù)據(jù)。結(jié)果表明該系統(tǒng)具有結(jié)構(gòu)簡單、工作可靠、精度高等特點(diǎn).關(guān)鍵詞:STM32微處理器;步進(jìn)電機(jī);LCD顯示;PWM信號;目錄任務(wù)提出與方案論證 任務(wù)提出 方案論證 總體設(shè)計(jì) 2.1系統(tǒng)的硬件設(shè)計(jì) .控2制系統(tǒng)軟件設(shè)計(jì) 詳細(xì)設(shè)計(jì)及仿真 .設(shè)1計(jì)主要程序部分 .調(diào)2試與仿真 總結(jié) 實(shí)物圖和仿真圖1任務(wù)提出與方案論證步進(jìn)電機(jī)控制系統(tǒng)的整個設(shè)計(jì)中最重要的部分是利用PWM細(xì)分實(shí)現(xiàn)步進(jìn)電機(jī)調(diào)速的處理,雖然PW調(diào)M速很早就開始研究應(yīng)用,但如何用PW細(xì)M分調(diào)速的快速性和準(zhǔn)確性至今仍是生產(chǎn)和科研的課題。隨著微電子技術(shù)的發(fā)展與普及,更多高性能的單片機(jī)應(yīng)用使得PW細(xì)M分實(shí)現(xiàn)步進(jìn)電機(jī)PW調(diào)M速的快速性和準(zhǔn)確性都有了極大的提高。1.1任務(wù)提出總體方案根據(jù)課題要求,本設(shè)計(jì)采用STM32cor處t理e器x,由-SMP3GT6電機(jī)控制模塊作為直流電機(jī)的驅(qū)動芯片,由ADC輸入電位器產(chǎn)生調(diào)速命令,用TF彩T色LC作D為顯示模塊。1.2方案論證步進(jìn)電機(jī)控制系統(tǒng)硬件方案本系統(tǒng)主要由一塊STM平3臺2、SPGT62型C步1進(jìn)9電B機(jī)驅(qū)動模塊構(gòu)成,以STM為3核2心,包括電機(jī)驅(qū)動、電機(jī)、A/轉(zhuǎn)D換、LC顯D示等模塊。系統(tǒng)的結(jié)構(gòu)框圖如圖2.所1示。STM作3為2主控芯片,通過I/端O口來控制SPGT62型C步1進(jìn)9電B機(jī)驅(qū)動芯片,從而實(shí)現(xiàn)對步進(jìn)電機(jī)的控制。通過AD輸C入電位器產(chǎn)生調(diào)速命令反饋給STMSTM調(diào)3節(jié)2SPGT62型C步1進(jìn)9電B機(jī)驅(qū)動模塊的狀態(tài),從而使電機(jī)改變轉(zhuǎn)速和方向。同時,電機(jī)轉(zhuǎn)速可由彩色液晶LC顯D示出來,用AD輸C入電位器來對步進(jìn)電機(jī)的轉(zhuǎn)動方向和轉(zhuǎn)速等進(jìn)行設(shè)定。步進(jìn)電機(jī)控制系統(tǒng)軟件方案硬件功能的實(shí)現(xiàn)離不開軟件的設(shè)計(jì)與完成。軟件設(shè)計(jì)是步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)中最重要、最關(guān)鍵的部分,也是本次畢業(yè)設(shè)計(jì)的難點(diǎn)之處。由于本系統(tǒng)使用STM平3臺2,運(yùn)用Keilfo開r發(fā)環(huán)A境R,M在Keilu軟V件i平s臺i進(jìn)o行n開發(fā)。本課題軟件設(shè)計(jì)的思想主要是自頂向下,模塊化設(shè)計(jì),逐一設(shè)計(jì)各個子模塊,分別進(jìn)行調(diào)試,最后的連調(diào)整個程序,判斷是否達(dá)到預(yù)期的要求,做出結(jié)論。各個部分函數(shù)都可相互調(diào)用又相對獨(dú)立可調(diào),保證調(diào)試的便利與程序的可讀性。總體設(shè)計(jì)第一部分具體介紹了步進(jìn)電機(jī)控制系統(tǒng)的硬件設(shè)計(jì),包括SPGT62電C機(jī)1控制模塊電路的設(shè)計(jì);第二部分闡述了步進(jìn)電機(jī)控制系統(tǒng)的軟件設(shè)計(jì);2.1系統(tǒng)的硬件設(shè)計(jì)本系統(tǒng)采用STM作3為2主控制器,采用AD輸C入電位器作為輸入部分,步進(jìn)電機(jī)及其驅(qū)動電路采用SPGT62型C步1進(jìn)9電B機(jī)驅(qū)動模塊。下面分別對STM以3及相關(guān)模塊的特性進(jìn)行具體介紹。(1)步進(jìn)電機(jī)模塊本設(shè)計(jì)選用專用的電機(jī)驅(qū)動芯片SPGT62。CS1P9GBT62電C機(jī)1控9制B模組是為學(xué)生以及單片機(jī)愛好者學(xué)習(xí)步進(jìn)電機(jī)和直流電機(jī)控制而設(shè)計(jì)的學(xué)習(xí)套件。模組采用凌陽SPGT62電C機(jī)1驅(qū)9動B芯片,配置兩相步進(jìn)電機(jī)和直流電機(jī)各一臺,并提供4位LE數(shù)D碼管用來顯示電機(jī)轉(zhuǎn)速等信息。模組配備的步進(jìn)電機(jī)為35BY型永磁步進(jìn)電機(jī),工作方式為雙極性兩相四拍。步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。當(dāng)步進(jìn)電機(jī)接收到一個脈沖信號,它就按設(shè)定的方向轉(zhuǎn)動一個固定的角度(稱為“步距角”)。可以通過控制脈沖個數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時可以通過控制脈沖頻率實(shí)現(xiàn)步進(jìn)電機(jī)的調(diào)速。(2)LCD顯示模塊顯示電路是本設(shè)計(jì)硬件的主要構(gòu)成部分,STM外3接2TF模T塊,MzT彩2色4TF模T塊是一個2.英8寸的TF模T塊,內(nèi)置TF控T制器,對外連接直接通過8位的808總0線進(jìn)行指令和數(shù)據(jù)的傳輸。MzT有2像4素點(diǎn)數(shù)為24×032,0色彩深度為16位色,也就是每一個像素點(diǎn)需要用16位的數(shù)據(jù)來表示其顯示的內(nèi)容。MzT模塊的顯示操作非常簡便,需要改變某一個像素點(diǎn)的顏色時,只需要對該點(diǎn)所對應(yīng)的2個字節(jié)的顯存進(jìn)行操作即可。這部分電路連接時主要是把數(shù)據(jù)準(zhǔn)確穩(wěn)定的顯示出來,因此連接電路時需注意端口對應(yīng)的準(zhǔn)確連接,否則嚴(yán)重影響數(shù)據(jù)顯示的穩(wěn)定,甚至出現(xiàn)顯示不出來數(shù)據(jù)。2.控2制系統(tǒng)軟件設(shè)計(jì)控制系統(tǒng)軟件設(shè)計(jì)步驟:對于一個完整的嵌入式應(yīng)用系統(tǒng)的開發(fā),硬件的設(shè)計(jì)與調(diào)試工作僅占整個工作量的一半,應(yīng)用系統(tǒng)的程序設(shè)計(jì)也是嵌入式系統(tǒng)設(shè)計(jì)一個非常重要的方面,程序的質(zhì)量直接影響整個系統(tǒng)功能的實(shí)現(xiàn),好的程序設(shè)計(jì)可以克服系統(tǒng)硬件設(shè)計(jì)的不足,提高應(yīng)用系統(tǒng)的性能,反之,會使整個應(yīng)用系統(tǒng)無法正常工作。不同于基于PC平臺的程序開發(fā),嵌入式系統(tǒng)的程序設(shè)計(jì)具有其自身的特點(diǎn),在編寫嵌入式系統(tǒng)應(yīng)用程序時,可采取如下幾個步驟:(1)明確所要解決的問題:根據(jù)問題的要求,將軟件分成若干個相對獨(dú)立的部分,并合理設(shè)計(jì)軟件的總體結(jié)構(gòu)(2)合理配置系統(tǒng)的資源:與基于8位或16位微控制器的系統(tǒng)相比較,基于32位微控制器的系統(tǒng)資源要豐富得多,但合理的資源配置可最大的限度發(fā)揮系統(tǒng)的硬件潛能,提高系統(tǒng)的性能。對于一個特定的系統(tǒng)來說,其系統(tǒng)資源,如Fla、sEhEPR、OSMDR、A中M斷控制等,都是有限的,應(yīng)合理配置系統(tǒng)資源。(3)程序的設(shè)計(jì)、調(diào)試與優(yōu)化:根據(jù)軟件的總體結(jié)構(gòu)編寫程序,同時采用各種調(diào)試手段,找出程序的各種語法和邏輯錯誤,最后應(yīng)使各功能程序模塊化,縮短代碼長度以節(jié)省存儲空間并減少程序的執(zhí)行時間。此外,由于嵌入式系統(tǒng)一般都應(yīng)用在環(huán)境比較惡劣的場合,易受各種干擾,從而影響到系統(tǒng)的可靠性,因此,應(yīng)用程序的抗干擾技術(shù)也是必須考慮的,這也是嵌入式系統(tǒng)應(yīng)用程序不同于其他應(yīng)用程序的一個重要特點(diǎn)。Keilfo軟r件開A發(fā)R環(huán)M境本次設(shè)計(jì)的軟件部分采用模塊化的設(shè)計(jì)思想,將各個功能都編成了相應(yīng)的子程序。程序運(yùn)行時,通過主程序的調(diào)用及相應(yīng)模塊之間的嵌套調(diào)用,實(shí)現(xiàn)系統(tǒng)的整體功能。本設(shè)計(jì)所需的STM的3外2設(shè)包括PA口、PB口、PC口和定時器端口,所以也要對外設(shè)的時鐘進(jìn)行設(shè)置。由于PA口、PB口、PC口在APB系1統(tǒng)總線外設(shè)上,定時器TIM和2TIM在3APB系2統(tǒng)總線外設(shè)上,所以要對APB和1APB總2線的時鐘頻率進(jìn)行設(shè)置。經(jīng)過APB與1APB的2分頻,將SYSC轉(zhuǎn)L換K成可以進(jìn)行外設(shè)及TI可M以接收的系統(tǒng)時鐘。在時鐘初始化子程序中先對系統(tǒng)時鐘的模式進(jìn)行選擇,即將系統(tǒng)時鐘設(shè)置為HS模E式(外部時鐘模式),然后設(shè)置AH時B鐘等于系統(tǒng)時鐘,且設(shè)置了低速或高速AH,B最后使能的時鐘,時鐘初始化子程序的流程。

程序設(shè)計(jì)及仿真.1設(shè)計(jì)主要程序部分(主函數(shù))delay_init();for(index=0;index<8;innit();dex++)LCD_Init());LED_Init();{GPIOA->eatcodeindex];while(1)delay_ms(2);}#includekey=KEY_Scan(0);elseif(temp==0)//?D????ê?if(key==1)GPIOA->ODR=0;#include? {???ê?temp++;externconstu8 if(temp>2)gImage_jiemian[];temp=0;while(flag1)floatt1;{u16}t,t11,t12,t13,t14,resiful(tk;ey==2)beat=(angle*4076)/360;{while(beat--)unsignedchar angle+=15;{beatcode2[8]={0x0e,0x0c,0ifx(0angle>=360)d,0x09,0x0b,0x03,0x07an,gl0e=x0;6}GPR=beatcode1[inde;flag1=1; ;}index++;unsignedchar if(temp==2)beatcode1[8]={0x06,0x0{7,0x0index=index&0x07;3,0x0b,0x09,0x0d,0x0c,0x0e}delay_ms(2);;for(index=0;index<8};inflag1=0;intmain(void)dex++){unsignedchar {GPIOA->ODR=beatcode}2[temp=0,angle=0,index=i0nde,xf]l;ag1;unsignedlongbeat=0; delay_ms(2);LE}0;intkey=2;}}Drive_Init(); elseif(temp==1)delay_ms(10);uart_init(96//0′0); {}??ú3?ê??ˉ?a9600調(diào)2試與仿真調(diào)試包括硬件調(diào)試、軟件調(diào)試和整體聯(lián)調(diào)。由于硬件和軟件的研制是相對獨(dú)立進(jìn)行的,因此軟件調(diào)試是在硬件完成之前,而硬件也是在無完整軟件情況下進(jìn)行調(diào)試的。在調(diào)試中找出缺陷,判斷故障源,對硬、軟件做出修改,反復(fù)進(jìn)行這一過程,直至確信沒有錯誤之后接入單片機(jī)進(jìn)行整機(jī)聯(lián)調(diào)。軟件系統(tǒng)的調(diào)試任務(wù)是要查出程序設(shè)計(jì)當(dāng)中的語法及邏輯錯誤,并加以糾正。由于本課題設(shè)計(jì)軟件程序的編寫是按功能模塊的劃分來完成的,所以軟件調(diào)試可以采用“先分塊獨(dú)立測試后組合聯(lián)機(jī)”、“先單步調(diào)試后聯(lián)合調(diào)試”的方法。所謂的“先分塊獨(dú)立后組合聯(lián)機(jī)”就是首先將軟件程序進(jìn)行模塊分類,把與硬件無關(guān)的模塊進(jìn)行獨(dú)立調(diào)試,把與硬件相關(guān)的程序模塊進(jìn)行軟、硬聯(lián)合仿真調(diào)試。當(dāng)各模塊都獨(dú)立調(diào)試完成后,可將各程序模塊連接起來進(jìn)行聯(lián)調(diào),以解決在程序模塊連接中可能出現(xiàn)的邏輯錯誤。系統(tǒng)軟、硬件的聯(lián)調(diào)是一個不斷完善的過程,常常需要反復(fù)多次修改補(bǔ)充才能調(diào)試出一個性能良好的系統(tǒng)。在聯(lián)調(diào)過程中我們經(jīng)常遇到故障,這時需要對系統(tǒng)進(jìn)行檢查,萬用表是使用最多的檢查工具。在系統(tǒng)聯(lián)調(diào)時不排除某個元件被燒壞或者不工作,如SPGT62芯C片1被9燒B壞,重新?lián)Q個芯片。以下為在對各個模塊進(jìn)行調(diào)試過程中出現(xiàn)的問題,以及問題的分析與解決過程:一、程序仿真正確,將程序下載到STM處3理2器中時,LC顯D示的數(shù)據(jù)不穩(wěn)定。原因分析與解決方法:既然能夠顯示數(shù)據(jù),說明硬件LC連D接是正確的。可知,還是在軟件編寫時出現(xiàn)了問題,便從LC顯D示程序一步步檢查,最后發(fā)現(xiàn)定義數(shù)據(jù)的類型出現(xiàn)了錯誤。二、軟件編寫完成后進(jìn)行調(diào)試時下載不了程序。原因分析與解決方法:軟件配置沒有設(shè)置好,經(jīng)過指導(dǎo)老師的指導(dǎo)找到了問題的所在,重新配置好軟件后程序順利的下載??偨Y(jié)本設(shè)計(jì)將步進(jìn)電機(jī)作為控制對象,基本實(shí)現(xiàn)了PW細(xì)M分技術(shù)下的控制調(diào)速的功能。本文設(shè)計(jì)的基于STM的3舵2機(jī)控制系統(tǒng)就是在這種背景基礎(chǔ)上設(shè)計(jì)的。本設(shè)計(jì)是在各種儀器連接使用的基礎(chǔ)上設(shè)計(jì)而成的,只有充分了解有關(guān)STM微3處2理器以及各部分之間的關(guān)系才能達(dá)到要求。整個課題的開發(fā)過程主要包括了硬件電路設(shè)計(jì)和軟件程序的編寫兩個部分,主要任務(wù)是開發(fā)一個以STM為3核2心的控制系統(tǒng),通過在MD的K環(huán)境下編程,由STM產(chǎn)3生2PW信M號,可實(shí)現(xiàn)鍵盤對舵機(jī)角度和速度的控制,能夠通過LC顯D示步進(jìn)電機(jī)方向和速度。通過整機(jī)聯(lián)調(diào)驗(yàn)證了系統(tǒng)的可行性,能滿足設(shè)計(jì)要求,達(dá)到了設(shè)計(jì)的指標(biāo)。硬件部分是利用STM體3積2小、易擴(kuò)展、集成度高、可靠性高、功耗低、中斷處理能力強(qiáng)等特點(diǎn)。軟件部分采用模塊化設(shè)計(jì),這些模

溫馨提示

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

評論

0/150

提交評論