STM32 电机教程 19 - 基于ST MC Workbench 单电阻FOC
前言
????? 磁場定向控制又稱矢量控制(FOC), 本質上為控制定子電流的幅度和相位,使之產生的磁場和轉子的磁場正交,以產生最大的扭矩. PMSM的磁場定向控制框圖如下圖所示:
第17及18講成功實現了基于NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH及MotorControl Workbench的電機控制代碼工程的生成,及電機參數調試工作,成功讓電機運轉起來,上17、18講中,FOC電機電流采樣方式為三電采樣方式,ST的電機庫集成了電機單電阻采樣方式的支持,本節就給大家介紹使用ST 電機庫用單電阻FOC算法讓電機運轉起來。本節工程代碼直接在17講基求陪同上進行修改即可。
本節所用電機為2836無刷電機,電機有兩組線(hall傳感器線和電機三相線),工作電壓24V,最大轉速12000rpm:
示例詳解
本節用到ST官方推出的NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH 開發板。
?
按下圖接好跳線端子(單電阻接線方式):
本節的MotorControl Workbench工程直接用第17講的即可,直接復制上一講生生成工程文件及代碼工程文件,改名為Motor19:
打開工程文件,按下圖完成配置:
上圖第4步配置工作需按驅動板原理圖進行配置,操作如下:
確認之后工程會有如下提示信息:
進到MCU模擬通道設置窗口看一下,確定配置正確(如下圖)即可!
到這里就可以成生程代碼了:
?
進入MDK-ARM目錄,打開keil 工程:
直接編譯工程,編譯成功后下載代碼到開發板,記得勾選下載選項中的復位和運行選項:
程序下載完成后,用MotorControl Workbench工具調節試,操作如下,。
按17講的方法調試電機參數,讓電機的速度曲線與目標曲線基本重合,調參數時需要注意一點—高速低速都要試一下,確保電機在高速與低速時的運轉質量均有保證。
?
注意1:如果你的電機參正轉與反轉時運動表機相差很大如,電機可以正常正轉,但不能反轉,或反傳時速度上不去或反轉時電機噪音特別大,如果有上述情況,多半是因為電機角度不對,需調節下圖所指參數:
注意2:如果你的電機轉動時速度曲線跳動較大,可以適當地加大一些速度計算平均長度,如下圖:
注意3:如果你的電機轉動時速度收斂速度慢,可以適當加大控制參數,如果上現抖動或震蕩情況則需要減小相應的控制參數:
注意4:MotorControl Workbench配置的很多電機參數,可以直接在KEIL工程中進行更改,然后編譯下載即可,無需每次都用MotorControl Workbench進行修改,這些配置參數集中在"pmsm_motor_parameters.h","drive_parameters.h","power_stage_parameters.h"三個文件中,可以從main.c文件的包含文件 "motorcontrol.h"中快速找到它們。
?
OK,本期實驗完成!本節內容到此結束,也歡迎大家留言!!最后喜歡這個公眾號的同學們記得加關注了,每天都會有技術干貨推出!!
?
文中源碼及資料下載,關注十三公眾號:
在公眾號里給十三發送 “下載|STM32 電機教程 19” :
?
?
總結
以上是生活随笔為你收集整理的STM32 电机教程 19 - 基于ST MC Workbench 单电阻FOC的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32 电机教程 18 - MC W
- 下一篇: STM32 电机教程 20 - 基于ST