stm32直流電機(jī)控制程序_第1頁(yè)
已閱讀1頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1STM32直流減速電機(jī)控制(一)在直流減速電機(jī)控制中,最常用的方法就是通過(guò)PWM來(lái)控制直流電機(jī)的轉(zhuǎn)速。在控制小車走直線的過(guò)程中,需要兩者的轉(zhuǎn)速一置(如果要走得很直,還需要在短時(shí)間內(nèi)保證兩者的行程大致相當(dāng),這可以用PID算法來(lái)控制,以后的文章中會(huì)專門敘述)。因此,在檢測(cè)到兩者轉(zhuǎn)速不一樣時(shí),需要?jiǎng)討B(tài)調(diào)整其中一個(gè)或兩個(gè)輪子的PWM的點(diǎn)空比(簡(jiǎn)單點(diǎn)的就以一個(gè)輪為基準(zhǔn),調(diào)整另外一個(gè)輪子即可;如果以一個(gè)固定的標(biāo)準(zhǔn)的話,需要調(diào)整兩個(gè)輪子的PWM占空

2、比)。程序第一步:設(shè)置GPIO,略(輸出PWM的管腳用Mode_AF_PP即可)程序第二步:設(shè)置定時(shí)器,(保證產(chǎn)生兩路PWM即可,我用的是TIM4)voidTIM4_Configuration(void)TIM_TimeBaseInitTypeDefTIM_TimeBaseInitStructureTIM_OCInitTypeDefTIM_OCInitStructure時(shí)間基初始化TIM_TimeBaseInitStructure.TI

3、M_Period=14418K144=125Hz這個(gè)是電機(jī)PWM的頻率TIM_TimeBaseInitStructure.TIM_Prescaler=4000720000004000=18KTIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1TIM_TimeBaseInitStructure.TIM_CounterMode=TIM_CounterMode_UpTIM_TimeB

4、aseInitStructure.TIM_RepetitionCounter=0x0000TIM_TimeBaseInit(TIM4輸出比較模式設(shè)置用于4路PWM輸出TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM2輸出PWMTIM_OCInitStructure.TIM_OutputState=TIM_OutputState_Enable使能正向通道TIM_OCInitStructure.TI

5、M_OutputNState=TIM_OutputState_Disable失能反向通道TIM_OCInitStructure.TIM_Pulse=PWM_L左輪DIR的占空比TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_Low輸出極性為低電平TIM_OCInitStructure.TIM_OCNPolarity=TIM_OCPolarity_High互補(bǔ)輸出極性為高電平TIM_OC

6、InitStructure.TIM_OCIdleState=TIM_OCIdleState_SetTIM_OCInitStructure.TIM_OCNIdleState=TIM_OCNIdleState_ResetTIM_OC1Init(TIM4PWM_L初始化TIM_OC1PreloadConfig(TIM4TIM_OCPreload_Disable)改變點(diǎn)空比后立即產(chǎn)生效應(yīng)TIM_OCInitStructure.TIM_Pulse

7、=PWM_R左輪PWM的占空比TIM_OC2Init(TIM4PWM_R初始化TIM_OC2PreloadConfig(TIM4TIM_OCPreload_Disable)改變點(diǎn)空比后立即產(chǎn)生效應(yīng)3externvu16CCR1_Valexternvu16CCR2_Valexternvu16CCR3_Valexternvu16CCR4_ValvoidTIM2_IRQHler(void)TIM2_CH1togglingwithfrequen

8、cy=183.1Hzif(TIM_GetITStatus(TIM2TIM_IT_CC1)!=RESET)TIM_ClearITPendingBit(TIM2TIM_IT_CC1)capture=TIM_GetCapture1(TIM2)TIM_SetCompare1(TIM2captureCCR1_Val)TIM2_CH2togglingwithfrequency=366.2Hzif(TIM_GetITStatus(TIM2TIM_IT

9、_CC2)!=RESET)TIM_ClearITPendingBit(TIM2TIM_IT_CC2)capture=TIM_GetCapture2(TIM2)TIM_SetCompare2(TIM2captureCCR2_Val)TIM2_CH3togglingwithfrequency=732.4Hzif(TIM_GetITStatus(TIM2TIM_IT_CC3)!=RESET)TIM_ClearITPendingBit(TIM2

10、TIM_IT_CC3)capture=TIM_GetCapture3(TIM2)TIM_SetCompare3(TIM2captureCCR3_Val)TIM2_CH4togglingwithfrequency=1464.8Hzif(TIM_GetITStatus(TIM2TIM_IT_CC4)!=RESET)TIM_ClearITPendingBit(TIM2TIM_IT_CC4)capture=TIM_GetCapture4(TIM

溫馨提示

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

評(píng)論

0/150

提交評(píng)論