相较于MCSDK 5,MCSDK6给用户更大的自由度,直接开放JSON文件,可以自定义电机控制板的各种参数。咋一看全是对象和属性的文字化配置界面很让人头痛,但懂得如何使用MCSDK6这个版本,可以很好的快速开发自己设计的电机控制工程。
这里我尝试了MCSDK 6.2.0和 6.3.0两个版本的自定义流程,6.3.0多了一个可视化的配置界面,建议直接使用6.3.0这个版本去配置。
接下来,介绍如何使用 MCSDK6 自定义一个驱控板。有两个可以进入自定义编辑界面:Board Manager、Board Designer。
Board Manager
这里可以看到,根据板子的功能,ST把板子分为四种类型,这四种类型都是可以进行自定义的。
这里我选择自定义一个集合了电源组件和控制组件的板子。右下角点Create,就会出现一个空白的模版,这是一个JSON格式的文件,在里面需要填入MCU、时钟源、时钟频率等等信息,我建议可以按照st库里面现成的例程进行一个仿写。右上角有快捷键提示,可以用快捷键检查格式。
写好点保存,就可以退回到主界面,对电机和控制板进行选择,然后生成工程了。
Board Designer
下面这个Board Designer是一个更加直观的可视化界面。我更推荐用这个来建立工程。
点进Board Designer,左下角就是Create new board. 我们还是用Inventor做例子。
按照提示一路选就行了,把必选项填好以后,点Next往下走。
按照实际情况填写相关的Features,电流采样和PWM生成的两个信息必填。按照实际电路板的配置填写就行了。填写无误以后就按Apply进行保存。
所有基础配置完成以后就可以保存,然后退出Board Designer这个界面。回到主界面,点击New project,配置新的工程。
建立新的工程
这里我们就选择Invetord的硬件模式,配上单电机,FOC驱动算法。
电机随便选一个就行,进入到工程可以把电机参数改成自己项目的电机参数。
Inventer这一页可以拉到最下面,能看到自定义的板子,选上就行。
勾选好了就可以next。
一切OK,就可以Generate the project。这里要注意一点,三个版本要相互兼容,否则无法成功生成工程。
更多相关配置信息可以参考ST官方的电机控制板资料:STM32MotorControl:Motor Control Boards Description - stm32mcu (stmicroelectronics.cn)