STM32 电机教程 23 - ST MCLIB实战之基于stm32f13c8tx构建FOC工程
前言
前面章節(jié)我們介紹了很多關(guān)于ST MotorControl Workbench的使用及實(shí)例 ,但是所有的實(shí)例均是基于ST的NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH開(kāi)發(fā)板進(jìn)行講解與演示的,很多同學(xué)表示手頭并沒(méi)有相應(yīng)的開(kāi)發(fā)板,且在實(shí)際應(yīng)用時(shí)經(jīng)常會(huì)出現(xiàn)各種各樣的問(wèn)題,從本節(jié)開(kāi)始,將給大家演示一下實(shí)際應(yīng)用工程中怎么用ST MotorControl Workbench來(lái)配工程,調(diào)參數(shù)。在本節(jié)開(kāi)始之前先給大家分享幾個(gè)ST官方ST MotorControl Workbench的使用說(shuō)明資料(位于ST MotorControl Workbench安裝文件夾下的Documentation 文件夾中,如筆者的D:\Program Files (x86)\STMicroelectronics\MC_SDK_5.3.3\Documentation):
????? 好了,下面我們進(jìn)入實(shí)戰(zhàn)環(huán)節(jié),首選先簡(jiǎn)單看一下原理圖:
?
????? 電機(jī)控制部分電路基本就如上面的圖片所示,接下來(lái)我們就按上面的原理圖來(lái)構(gòu)延ST MotorControl Workbench電機(jī)控制工程:
新建工程,如下圖:
接下來(lái)我們按下圖所標(biāo)順序依次配置各模塊:
1.Bus Voltage sensing:
2.Temperature sensing,原理圖中沒(méi)有,跳過(guò)。
3.motor 根據(jù)自己實(shí)際電機(jī)參數(shù)去填寫(xiě),如筆者所用電機(jī)如下:
本實(shí)例用絕對(duì)式磁編碼器來(lái)檢測(cè)電機(jī)位置,所以傳感器這里可以都不選(先對(duì)無(wú)感FOC方式配好工程,然后到工程代碼中手動(dòng)加入絕對(duì)式編碼器對(duì)應(yīng)的功能代碼即可):
4.current sensing :
5.Over current protection(過(guò)流保護(hù)) :
?
6.Speed Sensing (選用無(wú)感方式,保持默認(rèn)即可) :
7.Power Stage – Power Switches(根據(jù)實(shí)際情況填) :
8.Power Stage – Driving signal …(根據(jù)實(shí)際情況填) :
9.Firmware Drive Management – start -up …(保持默認(rèn)) :
Firmware Drive Management – Drive setting …(根據(jù)實(shí)際填) :
Firmware Drive Management – addition features …(保持默認(rèn)) :
?
Firmware Drive Management – sensing Enabling …(根據(jù)實(shí)際填) :
10.MCU and Clock Freq :
11.Digital I/O :
12.DAC functionality :
13.ADC Input and Protection :
?
14.User Interface(保持默認(rèn)即可) :
?
保存工程,生成代碼即可:
生成完成后,MCU還不是stm32f103c8t6,這時(shí)可以到cube(.ioc)工程中修改MCU芯片,再更新代碼即可,用文本編譯器打開(kāi).ioc文件,用夫換工具將所有的STM103R替換成STM103C,然后將所有的STM103RBTx替換成STM103C8Tx,最后將LQFP64換成LQFP48:
修改前:
修改后:
當(dāng)然因?yàn)楸臼纠齼H有一個(gè)普通ADC通道(總線電壓),在.Ioc工程中ADC模塊配置有點(diǎn)小問(wèn)題,手動(dòng)按下圖修改即可:
最后在cube工具打開(kāi)ioc工程,按原理圖配置好LED引腳 ,SPI絕對(duì)磁編碼器接口,CAN通信接口以及修改一下定時(shí)器1接口(實(shí)際原理圖并沒(méi)有用到BREAK引腳 ),以下操作僅供參考:
CAN:
SPI:
LED:
最后調(diào)整一下模塊的初始化速度就可以直接生生工程代碼了:
?
打開(kāi)工程,編譯工程,解決掉工程中的各個(gè)問(wèn)題(最多問(wèn)題就是工程中少包含某個(gè)文件,手動(dòng)加入一下就可以了):
到此,基于ST MCLIB的stm32f13c8tx FOC工程創(chuàng)建工作就基本完成了,下一講將給大家介紹如何將其無(wú)感方式變成絕對(duì)式磁編碼位置檢測(cè)方式。也歡迎大家留言!!最后喜歡這個(gè)公眾號(hào)的同學(xué)們記得加關(guān)注了,每天都會(huì)有技術(shù)干貨推出!!
?
文中源碼及資料下載,關(guān)注十三公眾號(hào):
在公眾號(hào)里給十三發(fā)送 “下載|STM32 電機(jī)教程 23” :
?
?
總結(jié)
以上是生活随笔為你收集整理的STM32 电机教程 23 - ST MCLIB实战之基于stm32f13c8tx构建FOC工程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: STM32 电机教程 22 - 基于ST
- 下一篇: STM32 电机教程 24 - ST M