黄工无刷电机学习
直播中

李玲

7年用户 1233经验值
私信 关注
[问答]

如何去实现基于X-CUBE-SPN7的三相无刷电机的无感控制

使用X-CUBE-SPN7软件库需要注意哪些事项?
如何去实现基于X-CUBE-SPN7的三相无刷电机的无感控制?

回帖(1)

田晴

2021-8-5 14:10:48
  前言
  上一节给大家分享几篇比较好的介绍无刷电机无传感控制的文章,不知大家学习得怎么样,其实很多芯片公司(比如TI,ST,MICROCHIP,SILICON)都有推出针对他们家控制或驱动芯片的无感无刷电机控制的软硬件方案(软硬件),本节将基于NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH开发板结合ST推出的 X-CUBE-SPN7 三相无刷无感控制库为大家演示三相电机无感控制效果,以及X-CUBE-SPN7库使用的一需注意点。
  本节所用电机为2836无刷电机,电机有两组线(hall传感器线和电机三相线),工作电压24V,最大转速12000rpm:
  示例详解
  本节用到ST官方推出的NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH 开发板。
  准备操作
  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跳帽都不接。
  解压X-CUBE-SPN7库文件,得到如下文件目录:
  STM32CubeExpansion_SPN7_V1.0.0库支持030R8-Nucleo、103RB-Nucleo、302R8-Nucleo、401RE-Nucleo等多个Nucleo开发板:
  
  本节以STM32F103RB-Nucleo平台作为演示,进入
  STM32CubeExpansion_SPN7_V1.0.0ProjectsMultiExamplesMotorControlMDK-ARMSTM32F103RB-Nucleo文件夹,打开Project.uvprojx工程:
  在MC_SixStep_param.h中根据实际电机的参数修改对应参数,
  
  编译工程后下载到开发板后即可成功驱动电机,按STM32F103RB-Nucleo开发板上的蓝色按键可以启动或停止电机,调节X-NUCLEO-IHM07M1 3SH上蓝色电位器可以对电机进行调速!
  下面给出一张电机成功驱动后的效果图:
  OK,本期实验完成!通过本节内容,基于X-CUBE-SPN7软件库我们可以很快(需配合X-NUCLEO-IHM07M1 3SH 和 STM32F103RB-Nucleo 开发板)完成对三相无刷电机的无感控制!
  后续我们在自己的系统中要实现三相无刷电机无感控制,可以参考X-CUBE-SPN7软件库的实现方式,X-CUBE-SPN7的核心代码主要集中在下图的几个文件中,至于其内部是怎么实现的大家可参看源码。
  
  
  对了X-CUBE-SPN7库实现的无感控制效果也是有很大的提高空间,包括它在电机启动时有明显的对齐操作(有可能会使电机反转)带来的停顿感,还有启动不成功的机率比较高,这些都是后续可优化的方面。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分