基于STM32和L6208的步進電機控制系統_第1頁
基于STM32和L6208的步進電機控制系統_第2頁
基于STM32和L6208的步進電機控制系統_第3頁
基于STM32和L6208的步進電機控制系統_第4頁
基于STM32和L6208的步進電機控制系統_第5頁
已閱讀5頁,還剩4頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于STM32和L6208的步進電機限制系統摘要:本文介紹了步進電機的基本工作原理及限制方法,通過對ARM公司的STM32F103XX處理器Cortex-M3和ST公司步進電機驅動芯片L6208性能和驅動原理的深化分析,闡述了一種新型驅動步進電機的限制系統。本限制系統能夠實時、精確、牢靠地限制兩相兩極的步進電機。關鍵詞:STM32、L6208、步進電機Abstract:Thispaperintroducedthebasicworkprincipleandcontrolmethods,ByintroducingtheperformanceofSTM32F103XXandthoroughanalyzingthedriveprincipleofDMOSdriverforbipolarsteepermotorL6208,Iexpoundedanewcontrolsystemfordrivingsteepermotor.Thiscontrolsystemcancontrolbipolarsteppermotorreal-time,wellandtrulyandreliably.Keywords:STM32,L6208,steppermotor引言本系統采納STM32F103XX微限制器驅動雙極性步進電機的方法,執行整步和半步模式來限制步進電機。用戶可以選擇:操作模式(整步/半步);電機旋轉方式(順時針/逆時針);當前限制模式(快速/慢速)。這種方法運用中密度STM32F103XX微限制器和全集成兩相步進電機驅動L6208,這是性價比最高和最簡潔的方式獲得最小的CPU負載。Cortex-M3是特地在微限制系統和無線網絡等對功耗和成本敏感的嵌入式應用領域實現高系統性能而設計的,它大大簡化了編程的困難性,集高性能、低功耗、低成本于一體。本設計的主要特點:不需反饋器件,比其他運動限制系統成本低。尤其在低速扭轉力和強穩定性方面具有優勢。低功耗,高性能并且敏捷,可用于機器人限制,機械工具轉彎處,影像和其它精準的軸位置限制環境。高性能的STM32F103XX微限制器驅動步進電機依靠于限制器的低計算環境。方案比較與論證總體系統框圖如圖1所示:圖1系統框圖限制模塊選擇方案一:采納89C51作為步進電機限制器。經典51單片機具有價格低廉、運用簡潔等優點。但其運算速度低,功能單一,RAM、ROM空間小,不穩定等特點。 方案二:采納STM32F103XX作為步進電機限制器。STM32通過寄存器模式,尋址方式敏捷,RAM和FLASH容量大,運算速度快、低功耗、低電壓等,且通過TIM2的輸出比較模式來限制步進電機以連續周期的50%和一個可變頻率。DMA限制器可用來變更時鐘周期,Systick定時器敏捷地產生中斷。 基于以上分析,選擇方案二。電機的選擇 方案一:采納直流電機。直流電機具有優良的調速特性,調速平滑、便利,調整范圍廣;過載實力強,能承受常見的沖擊負載,可實現常見的無極快速啟動、制動和反轉;能滿意生產自動化系統各種不同的特別運行要求。直流電機的工作狀態可分為兩種:開環狀態和閉環狀態。直流電機工作在開環狀態時,電路相對簡潔,但其定位性能比較差。直流電機工作的閉環狀態時,其定位性能精確,但是相對開環狀態又要增加許多檢測器件,運用的元器件多,電路特別困難。方案二:采納步進電機。步進電機是將電脈沖信號轉變為角位移或線位移的開環限制元件。在非超載的狀況下,電機的轉速、啟停的位置只取決于脈沖信號的頻率和脈沖數,而不受負載變更的影響,即給電機一個脈沖信號,電機則轉過一個步距角。因此,步進電機具有快速啟停實力,假如負荷不超過步進電機所能供應的動態轉矩值,就能馬上使步進電機啟動或反轉,而且步進電機的轉換精度高,驅動電路簡潔,特別適合定位限制系統。基于以上分析,選擇方案二。驅動模塊的選擇方案一:采納繼電器對電動機的開和關進行限制,通過開關的切換對電機的速度進行調整。這個方案的優點是電路較為簡潔,實現簡潔;缺點是繼電器的響應速度慢、機械結構易損壞、壽命較短。方案二:采納L6208驅動芯片。供應了帶CMOS/TTL輸入邏輯以及幾個愛護功能的全愛護型雙H驅動橋,且為驅動雙極步進電機而特地優化的全集成驅動器,從而大幅度削減了電機限制應用所需的外圍元器件的數量。此芯片產品采納8V~52V的單電源電壓,全部的邏輯輸入引腳都配有降低噪聲敏感度的磁滯功能,而且兼容TTL/CMOS/CMOS3.3V電壓。為全面愛護對地短路和每個電橋的兩個相位之間的短路,芯片內置過流檢測電路(OCD)。OCD電路用于監測流經上橋臂功率DMOS晶體管的電流,因為沒有外部電阻器,所以也就降低了功耗,符合節能要求。此外,為保證對IC進行的全面的愛護,芯片上還集成了其它的特別電路:監測電源電壓的低壓封鎖愛護以及一旦結溫超過165℃時關閉全部功率輸出的熱愛護功能。這個器件能夠適應各種應用,包括微步進應用。基于上述理論分析和實際狀況,擬定選擇方案二。系統硬件設計電機限制系統的設計RESET、ENABLE、FAST/SLOW、HALF/FULL、CLOCK、CW/CCW是限制信號的輸入端,限制信號由STM32供應,可以干脆將STM32與L6208的相應引腳相連。STM32限制L6208對應引腳如表1所示:STM32引腳L6208引腳TIM2_CH1(PA0)CLOCK(PIN_1)PC2CONTROL(PIN_13)PC3HALF/(PIN_12)PC4CW/(PIN_2)PC5RESET(PIN_23)PC13EN(PIN_14)表1STM32限制L6208對應引腳電機限制系統原理圖如圖2所示:圖2電機限制系統原理圖L6208驅動電路圖如圖3所示:圖3L6208驅動電路圖系統軟件設計主程序流程圖:部分流程圖:圖4DMA流程圖圖5系統時鐘流程圖功能測試及結果分析結束語本系統主要以STM32為主要限制芯片。采納了L6208驅動芯片實現電機限制。在設計過程中,力求硬件電路簡潔,充分發揮軟件設計的優勢,編程敏捷便利來滿意系統的要求。參考文獻[1]李寧,《基于MDK的STM32處理器開發應用》,北京航空航天高校出版社[2]黃智偉,《全國高校生電子設計競賽系統設計》,北京航空航天高校出版社[3]ST公司,步進電機驅動l6208應用手冊。附錄一主要元器件清單:器件名稱器件數量STM32F103RBT6微限制器1片電機驅動芯片L6208N1片42BYG102步進電機1個電阻、電容、電位器、二極管若干附錄二主程序:intmain(void){/*SystemClocksConfiguration*/RCC_Configuration();/*NVICConfiguration*/NVIC_Configuration();/*Activatethedriver*/Stepper_Cmd(ENABLE);/*Drivercontrolpinconfiguration*/Stepper_PinControlConfig();/*Disabletheinitializationofthedriver*/Stepper_ResetDisable();/*-----------Modesselection:Rotationdirection,Stepmode,Decaymode---------------*/#ifdefRotationDirection_CWStepper_SetRotationDirection(Stepper_RotationDirection_CW);#endif/*RotationDirection_CW*/#ifdefRotationDirection_CCWStepper_SetRotationDirection(Stepper_RotationDirection_CCW);#endif/*RotationDirection_CCW*/#ifdefHalf_StepStepper_SelectMode(Stepper_Half);#endif/*Half_Step*/#ifdefFull_StepStepper_SelectMode(Stepper_Full);#endif/*Full_Step*/#ifdefControlSlow_CurrentStepper_SetControlMode(Stepper_ControlSlow);#endif/*ControlSlow_Current*/#ifdefControlFast_CurrentStepper_SetControlMode(Stepper_ControlFast);#endif/*ControlFast_Current*//*Startthesteppermotor*/Stepper_Start(ENABLE);/*Peripheralsconfiguration*/Stepper_Init();while(1){}}/***@briefConfiguresthedifferentsystemclocks.*@paramNone*@retval:None*/voidRCC_Configuration(void){/*RCCsystemreset(fordebugpurpose)*/RCC_DeInit();/*EnableHSE*/RCC_HSEConfig(RCC_HSE_ON);/*WaittillHSEisready*/HSEStartUpStatus=RCC_WaitForHSEStartUp();if(HSEStartUpStatus==SUCCESS){/*EnablePrefetchBuffer*/FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);/*Flash2waitstate*/FLASH_SetLatency(FLASH_Latency_2);/*HCLK=SYSCLK*/RCC_HCLKConfig(RCC_SYSCLK_Div1);/*PCLK2=HCLK*/RCC_PCLK2Config(RCC_HCLK_Div1);/*PCLK1=HCLK/2*/RCC_PCLK1Config(RCC_HCLK_Div2);/*PLLCLK=8MHz*9=72MHz*/RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);/*EnablePLL*/RCC_PLLCmd(ENABLE);/*WaittillPLLisready*/while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET){}/*SelectPLLassystemclocksource*/RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);/*WaittillPLLisusedassystemclocksource*/while(RCC_GetSYSCLKSource()!=0x08){}}}/***@briefConfigurethenestedvectoredinterruptcontroller.*@paramNone*@retval:None*/voidNVIC_Configura

溫馨提示

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

評論

0/150

提交評論