news 2026/7/9 4:13:45

FOC开发工具学习

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FOC开发工具学习

FOC开发工具使用

ST 提供的 FOC 开发套件——“X-CUBE-MCSDK”,来帮助我们生成 FOC 控制代码 。

X-CUBE-MCSDK:ST 推出的电机控制软件开发套件。其中包括永磁同步电机(PMSM)固件库(FOC 控制)以及 STM32 电机控制工作台(用于配置 FOC 固件库参数)。如下:

其中 FOC 驱动库就是 FOC 的核心算法实现,MCWorkbench 为一款 PC 软件,用于配置FOC 固件库参数。

Motor Control Workbench 简介

在 ST 的官网:https://www.st.com 中直接搜索关键词“MC SDK”,如下图 27.3.2.1 所示:

点击进去可以看到:

点击Get Software选择对应的版本下载即可。

参照正点原子中的,可以用X-CUBE-MCSDK-FUL_5.4.4.exe 的安装包,之后只需要一直点击下一步即可。注意安装路径一定不能有中文!!!

安装完成后会在桌面生成 MotorControlWorkbench 5.4.4 和 Motor Profiler 5.4.4 两个软件, 其中 Motor Profiler 5.4.4 是用于自动测量电机参数的软件,不过该软件针对的是使用ST 相关的主板和电机驱动板,这里就不介绍该软件的使用方法。 MotorControl Workbench 5.4.4 才是我们需要的软件,可以使用该软件配置电机驱动板等参数后并生成源代码。 完成了 X-CUBE-MCSDK-FUL 的安装,接着我们还需要安装 STM32CubeMX,因为使用 X-CUBE-MCSDK-FUL 配置完之后,在生成代码时需要使用到 STM32CubeMX。

STM32CubeMX的获取与安装

由于 CubeMX 是运行在 JAVA 环境下的,所以安装 CubeMX 之前需要先安装 JAVA(JAVA8及以上版本)。对于 Java 运行环境,可以到 Java 官网 www.java.com 下载最新的 Java 软件,官 网 下 载 地 址 : https://www.st.com/en/development-525tools/stm32cubemx.html?sc=stm32cubemx,

FOC例程创建

打开 ST Motor Control Workbench 软件,然后点击新建一个电机控制工程,如下

选择应用类型,单/双电机控制以及硬件类型等,如下。

针对不同负载类型的 FOC 可选应用类型,可选通用、泵、压缩机、空调、洗碗机、风扇、无人机,作为示例,我们直接选择通用类型即可。主设计界面如下。

然后根据无刷驱动板输入电源范围设置母线电压,如下

然后修改控制器型号为板载的 STM32F407IG,如下。

接着点击电机参数配置,不同电机参数不同,需根据电机手册的参数填写,正点原子的PMSM/BLDC 电机技术参数如下

传感器设置如下,这里使用的是霍尔传感器,大家可根据自己的电机硬件(传感器类型)选择编码器或者霍尔传感器,勾选对应选项即可。如需使用无感控制,则都不勾选。正点原子的PMSM 电机内置霍尔传感器以及编码器;BLDC 内置霍尔传感器。

以霍尔反馈方式为例,速度反馈使用霍尔传感器采集,则速度传感器设置如下

MOS 管设置,高电平有效,三相驱动配置完全一致,如下

MOS 管最大开关频率和死区时间设置如下。

母线电压检测设置,根据无刷电机驱动板原理图设置如下。

温度传感器及保护设置如下,由于此设置只针对 ST 的温度传感器,所以直接默认设置即可。

电流传感器设置,需根据驱动板的电流采集硬件电路设置对应参数,我们驱动板使用的是 0.02Ω的采样电阻,差分电路的放大倍数为 6 倍,所以设置如下。

右击 Fireware Driver Management 选择驱动设置,设置驱动参数设置如下。

控制模式选择速度模式作为演示,PWM 频率选择 16KHz,左下侧速度环 PID 参数是我们测试过的数据,运转情况良好,为了直接生成即可运行我们就直接输入调试测试过的 PID参数。接着设置电压保护如下。

接下来还要设置过流这一项:

用户接口设置如下。

数字输入输出设置根据开发板连接关系进行选择,以电机接口 1 为例,PWM 使用定时器1,霍尔传感器使用定时器 5,调试串口使用串口 1,使用按键 KEY2 用于启停开发板,相应管脚设置如下。

电流采集模拟接口设置如下。

温度采集模拟接口设置如下。

DAC 设置用于调试时候观测 FOC 数据,例如将电机的电角度、交轴电流通过 DAC 方式输出,这样就可以使用示波器实时观测数据的变化,一般无需使用时直接选择不用即可,如下。

配置完之后,就要检测 IO 分配是否有误,点击选项 ,IO 分配无误后显示 check ok。如下图:

最后就可以保存工程。点击按钮,生成 CubeMX 工程,第一次点击生成,选择编译器平台,后续在该工程下进行的修改只需要更新即可。

注意Firmware Package Version要是显示未安装的话,需要打开stm32cubemx软件去安装即可。

点击上图中的这个选项,然后会弹出来如下图所示,选择对应版本安装即可。

后续开始生成工程:

生成结束后可以打开CubeMX添加自己的设置,由于无刷驱动板默认不输出,因此需要通过CubeMX打开SHUTDOWN引脚,并且配置为输出功能,点击RUNSTM32Cube…打开CubeMX,设置关断引脚,如下。

点击 CLOSE 关闭生成完成窗口,重新回到 MCWorkbench,点击 按钮,生成工程,由于工程文件已经存在,为了避免覆盖用户配置,直接点击 UPDATE 更新即可。更新完成后关闭窗口,打开前面保存项目路径的文件夹找到 MDK 工程并打开,可直接编译并将程序下载进开发板。

然后选择对应的串口连接,然后就可以在该界面控制电机的速度。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/8 14:18:31

练题100天——DAY26:汇总区间+丢失的数字+数组交集

今天又又是三道题,难度范围:★★~★★★。难度完全是凭个人做的感觉标的,题还是得自己做了才知道。 100天也已经过1/4了,非常之不错啊,希望这些记录能让我对这些题的理解更深,当然,也希望能对你…

作者头像 李华
网站建设 2026/7/6 3:57:15

当AI芯片不再性感:博通的高增长,为何成了催命符?

出品I下海fallsea撰文I胡不知2025年12月12日16点03分,纳斯达克交易大厅的电子屏突然泛起红光。博通(AVGO.US)的股价在连续30分钟的抛售潮中直线下坠,从开盘402美元跌至357美元,单日跌幅最终定格在11.2%,市值…

作者头像 李华
网站建设 2026/7/8 6:01:22

Vibe Coding:AI驱动的编程新范式

Vibe Coding:AI驱动的编程新范式与MaynorAPIPro的完美结合 在2025年,人工智能技术迅猛发展,编程领域也迎来了一场革命。其中,“Vibe Coding”作为一种新兴的AI辅助软件开发技巧,正迅速流行开来。这种方法由AI专家Andr…

作者头像 李华
网站建设 2026/7/6 23:20:18

AI 数字孪生工厂:西门子与中信特钢的实践,如何降本 11%?

一、行业痛点:特钢制造的降本困局钢铁行业作为重工业支柱,长期面临 "三高两低" 的发展瓶颈:高能耗、高排放、高成本与低效率、低附加值。中信特钢作为全球特钢领军企业,其生产流程涵盖冶炼、连铸、轧制等十余个核心环节…

作者头像 李华
网站建设 2026/7/8 22:39:18

Spring IoC的实现机制是什么?

大家好,我是锋哥。今天分享关于【Spring IoC的实现机制是什么?】面试题。希望对大家有帮助; Spring IoC的实现机制是什么? 超硬核AI学习资料,现在永久免费了! Spring IoC(Inversion of Contro…

作者头像 李华
网站建设 2026/7/7 21:04:34

耐用折叠屏手机推荐:三星Galaxy Z TriFold如何破解“折痕与耐用”难题?

当折叠屏手机从概念产品走向大众市场,消费者最关心的问题之一就是耐用性。毕竟,折叠屏设备多出了复杂的机械结构和柔性屏幕,这些部件在日常使用中面临更多挑战。那么,如今的折叠屏手机在耐用性方面达到了什么水平?三星…

作者头像 李华