【电机控制器】 基于STSPIN32G4的FOC控制

【电机控制器】 基于STSPIN32G4的FOC控制


### 文章目录

  • [@TOC(文章目录)](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [前言](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [一、实验目的](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [二、软件开发流程](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [1.被控对象:外转子无刷电机参数测量](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [2.控制器:控制参数设计](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [3.控制器:MCU寄存器配置](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [4.控制器:MCU配置验证](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [5.传感器:磁编码器验证](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [6.电机FOC控制:预定位Ud](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [7.电机FOC控制:开环强拖Uq](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [8.信号通讯:CAN通讯](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [9.电机FOC控制:单速度环闭环控制](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [10.电机FOC控制:单位置环闭环控制](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [11.电机FOC控制:单电流环闭环控制](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [12.电机FOC控制:双闭环电流环速度环控制](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [三、参考资料](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)
  • [总结](#文章目录 @TOC 前言 一、实验目的 二、软件开发流程 1.被控对象:外转子无刷电机参数测量 2.控制器:控制参数设计 3.控制器:MCU寄存器配置 4.控制器:MCU配置验证 5.传感器:磁编码器验证 6.电机FOC控制:预定位Ud 7.电机FOC控制:开环强拖Uq 8.信号通讯:CAN通讯 9.电机FOC控制:单速度环闭环控制 10.电机FOC控制:单位置环闭环控制 11.电机FOC控制:单电流环闭环控制 12.电机FOC控制:双闭环电流环速度环控制 三、参考资料 总结)

前言


提示:以下是本篇文章正文内容,下面案例可供参考

一、实验目的

完成电流、速度、位置三闭环控制

二、软件开发流程

1.被控对象:外转子无刷电机参数测量

  • 极对数:14
  • 相电阻:0.14欧
  • 额定电压:24V
  • 电机最大转速:3240RPM

2.控制器:控制参数设计

  • 主频:170M
  • 载波频率:25K
  • 电流环路控制周期:25K,更新事件(TRGO)同步触发 ADC1+ADC2 采样三相电流
  • 速度环位置环控制周期:5K
  • OPA增益:50
  • 采样电阻:2毫欧

3.控制器:MCU寄存器配置

4.控制器:MCU配置验证

通过示波器、万用表、DEBUG验证MCU配置是否正确

5.传感器:磁编码器验证

带电机不上电,手动旋转电机,计算时带上极对数,看是否符合预期的电角度、机械角度

6.电机FOC控制:预定位Ud

带电机上电,预定位给ud固定值,将电机拖动到固定角度,为角度offset

7.电机FOC控制:开环强拖Uq

带电机上电,给Uq固定值,电机拖动

开环验证了:

  1. 逆变桥与 PWM 输出:单片机(STM32G4)、STSPIN32G4 驱动芯片、三个半桥的 MOS 管、栅极驱动电路全部工作正常。
  2. 定时器与 SVPWM 时序:TIM1 的中心对齐模式、PWM 互补输出、死区时间配置以及占空比更新没有冲突,没有发生桥臂直通短路或严重波形失真。
  3. FOC_IPark_Calc 以及 FOC_SVPWM_Calc 的数学逻辑和三角函数调用是完全正确的。
  4. 三相占空比合成的矢量方向和幅值分配能够被电机无缝响应。
  5. 代码里的占空比缩放基准(前面提到的与 ARR 的匹配关系)大致是对的
  6. 电机的三相线(U, V, W)接到开发板的顺序没有根本性错误(即使线序接反,开环通常也只是表现为反转或稍微抖动一下,但能转起来说明换相逻辑能被电机吞吐)。

8.信号通讯:CAN通讯

上位机需要与CAN分析仪匹配,才能正常通讯。

CAN的H-L之间不上电测试60欧。

将上位机双方的采样点(Sample Point)差配置同步。

大多数上位机没有波形,只有帧,所以用Python写了一个波形生成器,用于测试CAN通讯。

9.电机FOC控制:单速度环闭环控制

前置工作

  • 已经验证了传感器没问题
  • 开环强拖没问题
  • 对位电压拖动到0角度OK
  • 开环VF拖动OK
  • CAN通讯有反馈转速和目标转速

优先考虑进行速度、位置闭环,最后再调整电流环。
进行速度闭环PI调参:先调整Kp,使电机响应到目标转速,再调整Ki,消除静态误差。

10.电机FOC控制:单位置环闭环控制

速度闭环控制没问题后,进行位置P调参。

11.电机FOC控制:单电流环闭环控制

offset确认:不带电机上电,静止状态下,测量VOUT电压是否符合偏置电压,ADC采样值是否为4096的一半(12采样精度)
CAN波形:需要三相电流反馈值,iq电流反馈、id电流反馈、iq设定值、id设定值
**电流极性确认:在开环或速度闭环情况下,采样电流,观测电流三相波形是否符合预期,满足极性要求。**三相电流如果某一相采集波形不好,可以利用KCL来计算,放弃某一相的直接采集,通过这种计算得出。而硬件上最好保持三电阻采样。软件确认后,可以不贴片。

电流环闭环q轴的PI调参

  • 令ud=0, id=0
  • 直接调整iq
  • 给定iq初始可以为0,ki为0,kp给小值
  • 此时电机应该静止不动,但是用手转动时可以感受到反向力矩
  • 观测反馈iq是否符合预期,有毛刺为正常现象

若iq符合预期,但是毛刺多,调整ki消除静态误差,或者增加滤波处理
电流环闭环d轴的PI调参:将q轴的参数直接给d轴,id=0的控制策略,所以实际使用时,直接令ud=0也可以

12.电机FOC控制:双闭环电流环速度环控制

三个单环调试完毕后,先进行双闭环控制,优先电流环速度环
要注意的是,pi输出的out_max和int积分限制与单环不同,内环最终输出到svpwm,因此限制在占空比(0-1)的范围,取0.95即可
而速度环的输出值为iq电流环的输入值,因此目标iq需要多少,就在这里限制多少
两个环路的参数一般不能直接使用,优先调整内环电流环,保持速度环不动,目标转速给0,上电后不能转动,给定目标转速其他固定值,例如500RPM,速度跟随要与单速度闭环效果类似

三、参考资料

基于【STSPIN32G4】的BLDC电机控制

stspin32G4这颗mcu里面集成的是哪一款G4?能不能用cubemx来进行配置

High performance 3-phase motor controller with embedded STM32G4 MCU

FOC_Driver硬件设计

foc学习笔记3------电流环

总结

本文仅仅简单介绍了【电机控制器】 基于STSPIN32G4的FOC控制,评论区欢迎讨论。

相关推荐
Elivs1 小时前
RMSNorm函数
人工智能·算法·机器学习
LCMICRO-133108477461 小时前
国产长芯微LD3092完全pin-pin替代LT3092,是一款可编程两端电流源
arm开发·单片机·嵌入式硬件·fpga开发·硬件工程·恒流源·lt3092
tudousisi2222 小时前
P4447 [AHOI2018初中组] 分组 题解复盘
算法
SNAKEpc121382 小时前
OpenGL(十一)- 变换管线
c语言·c++·算法·矩阵·图形渲染
nuoxin1142 小时前
BL-M8812CU3 无线 WiFi 模块-富利威
人工智能·嵌入式硬件·fpga开发·硬件工程·dsp开发
z20348315202 小时前
Livox Mid-360S点云图录制
嵌入式硬件·雷达·ros2
JNX_SEMI3 小时前
Hi5000Q/H 6.5~75V宽输入——与H5227A完全对等,无缝适配现有电源方案-聚能芯-智芯官方授权一级代理
驱动开发·单片机·嵌入式硬件·物联网·硬件工程
哥不想学算法3 小时前
STM32零基础教程(五):UART串口通信与协议设计
stm32·单片机·嵌入式硬件
WWJA王文举3 小时前
STM32时钟树怎么看?一步理解SYSCLK、HCLK、PCLK和外设时钟配置
stm32·单片机·嵌入式硬件