MCSDK是ST(意法半导体)推出的STM32电机控制软件开发套件(MCSDK),使用该软件对电机进行配置后,可以直接生成FOC控制电机源码工程,简化了开发过程。
从官网下载安装之后,会出现以下图标,双击安装打开即可,这里需要注意的是该软件是基于HAL库实现的,需要提前在电脑上安装CubeMX,我这里是采用的CubeMX+Keil的开发方式。
这里直接双击打开,然后点击新建工程
在工程配置中根据实景情况选择参数,我这里是自己太淘宝上买了一块板子,所以就直接选择Custom应用和Custom板子和电源了,如下图所示:
接下来我们需要修改设备的供电电源,这里我买的电机的供电需要是24V左右,使用直流稳压电源供电,在配置时就直接选用则电压为24V。这里的电压需要根据自己的电机的实际参数修改。
电压配置好之后选择主控芯片的型号,直接电机图中的芯片型号,然后选择自己电机开发板的型号即可,我这里采用的是STM32G431CBU6。时钟源默认的是8Mhz的外部晶振,主频为170Mhz,ADC参考电压为3.3V如果自己板子有改动,需要去适当修改。
芯片选择好之后进行电机参数配置,点击电机图标,然后配置电机参数和传感器,如果电机没有传感器可以不选。
传感器配置,我这里使用的是霍尔传感器
测速传感器选择霍尔传感器:
电机参数配置好之后接下来,需要去配置工程中所用到的串口、按键、PWM输出定时器以及霍尔传感器用到的定时器等外设的配置,这里需要根据自己的原理图配置。
霍尔传感器原理图:采用定时器4的通道123
驱动器部分原理图:
基础外设配置完成之后,接下来我们配置一下MCU的模拟输入部分:
首先配置电流采样,并计算增益相关参数,这里编辑于原理图来进行填写,这里用到了STM32G4内部的运放:
接下来配置MCU的模拟输入部分,运放的配置
总线电压采集的配置:
由于我这里没有温度传感器和过流保护,所以取消了这两个选项的勾选:
配置好模拟输入之后接下里配置电流环和速度环的KP、KI参数:
配置完成之后就可以生成代码了:
生成完成之后就可以在指定目录中找到对应的CubeMX工程了,因为我这里外部晶振是24Mhz所以需要打开修改一下时钟:
修改完时钟之后ADC会报错,只需要将ADC时钟配置为4分频即可
点击生成工程,就可以了,可以看到编译工程没有报错,直接烧录到开发板即可。
然后我们就可以通过上位机或者按键启动电机了,点击软件中的图标启动上位机:
效果如下:
无刷电机