STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现

前言

      

上一节给大家分享几篇比较好的介绍无刷电机无传感控制的文章,不知大家学习得怎么样,其实很多芯片公司(比如TI,ST,MICROCHIP,SILICON)都有推出针对他们家控制或驱动芯片的无感无刷电机控制的软硬件方案(软硬件),本节将基于NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH开发板结合ST推出的 X-CUBE-SPN7 三相无刷无感控制库为大家演示三相电机无感控制效果,以及X-CUBE-SPN7库使用的一需注意点。

本节所用电机为2836无刷电机,电机有两组线(hall传感器线和电机三相线),工作电压24V,最大转速12000rpm:

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第1张图片

 

示例详解

本节用到ST官方推出的NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH 开发板。

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第2张图片

 

 

 

    1. 准备操作

 

NUCLEO-F103RB开发板资料(含原理图)获取:

方式1,在ST官方网站搜索NUCLEO-F103RB 找到对应资料并下载

方式2,在文中公众号发送 “下载|NUCLEO-F103RB

 

X-NUCLEO-IHM07M1 3SH开发板资料(含原理图)获取:

方式1,在ST官方网站搜索X-NUCLEO-IHM07M1 找到对应资料并下载

方式2,在文中公众号中发送 “下载|X-NUCLEO-IHM07M1

 

X-CUBE-SPN7库下载:

方式1,在ST官方网站搜索X-NUCLEO-IHM07M1 在其对应的软件包中找到X-CUBE-SPN7并下载

方式2,在文中公众号中发送 “下载|X-CUBE-SPN7

 

按下图连接好 NUCLEO-F103RB、X-NUCLEO-IHM07M1和电机根据电机的工作电压提供正确的电源,如我所演示电机工作电压是24V,即需给X-NUCLEO-IHM07M1的J1接口提供24V电源,同时X-NUCLEO-IHM07M1一些跳帽设置为:J5,J6选择1sh, 两个FOC跳帽都不接。

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第3张图片

解压X-CUBE-SPN7库文件,得到如下文件目录:

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第4张图片

STM32CubeExpansion_SPN7_V1.0.0库支持030R8-Nucleo、103RB-Nucleo、302R8-Nucleo、401RE-Nucleo等多个Nucleo开发板:

 

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第5张图片

本节以STM32F103RB-Nucleo平台作为演示,进入

STM32CubeExpansion_SPN7_V1.0.0\Projects\Multi\Examples\MotorControl\MDK-ARM\STM32F103RB-Nucleo文件夹,打开Project.uvprojx工程:

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第6张图片

在MC_SixStep_param.h中根据实际电机的参数修改对应参数,

 

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第7张图片

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第8张图片

 

编译工程后下载到开发板后即可成功驱动电机,按STM32F103RB-Nucleo开发板上的蓝色按键可以启动或停止电机,调节X-NUCLEO-IHM07M1 3SH上蓝色电位器可以对电机进行调速!

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第9张图片

下面给出一张电机成功驱动后的效果图:

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第10张图片

 

OK,本期实验完成!通过本节内容,基于X-CUBE-SPN7软件库我们可以很快(需配合X-NUCLEO-IHM07M1 3SH 和 STM32F103RB-Nucleo 开发板)完成对三相无刷电机的无感控制!

后续我们在自己的系统中要实现三相无刷电机无感控制,可以参考X-CUBE-SPN7软件库的实现方式,X-CUBE-SPN7的核心代码主要集中在下图的几个文件中,至于其内部是怎么实现的大家可参看源码。

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第11张图片

对了X-CUBE-SPN7库实现的无感控制效果也是有很大的提高空间,包括它在电机启动时有明显的对齐操作(有可能会使电机反转)带来的停顿感,还有启动不成功的机率比较高,这些都是后续可优化的方面。

 

最后,老规矩,在公众号里给十三发送 “下载|STM32 电机教程32” 即可下载文中资料及程序源码。

 

微信关注图中张十三的博客公众号:

STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现_第12张图片

你可能感兴趣的:(无感,电机控制)