FOC之SVPWM学习笔记

news2024/11/18 11:40:22

一、参考资料

  • 【自制FOC驱动器】深入浅出讲解FOC算法与SVPWM技术 - 知乎
  • FOC入门教程_zheng是在下的博客-CSDN博客
  • DengFOC官方文档
  • 技术干货 |【自制】FOC驱动板

二、FOC控制算法流程框图

  • 在FOC控制中主要用到三个PID环,从内到外依次是:电流环、速度环、位置环
  • 通过电流反馈来控制电机电流(扭矩)→通过控制扭矩来控制电机的转速→通过控制电机的转速控制电机位置

在这里插入图片描述

2.1 PI电流环(内层) 

2.2 电流环+速度环

  • w:电机的转速,可以通过电机编码器或者霍尔传感器计算得到 

2.3 位置环+速度环+电流环

  •  编码器无法返回电机的转速w,可以通过计算一定时间内的编码值变化量来表示电机的转速(用平均速度代表瞬时速度)
  • 电机转速比较高时,这样的方法是可以的。但是在位置控制模式时,电机的转速会很慢(因为需要转子固定在某个位置),此时用平均测速法会存在非常大的误差(转子不动或动的很慢,编码器就没有输出或者只输出1、2个脉冲)。
  • 所以为了避免速度环节带来的误差,在做位置控制时,可以只使用位置和电流组成的双环进行控制。此时位置环使用PID控制(位置的微分D就是速度),可以减小位置控制的震荡,加快收敛,积分项的作用是为了消除静态误差。

三、FOC控制算法重要公式

3.1 Clarke变换与反变换

  • Clarke变换:将三相正弦电流Ia、Ib、Ic,转换成Iα、Iβ

\begin{cases}I_\mathbf{\alpha}=I_a\\I_\mathbf{\beta}=\dfrac{2I_\mathbf{b}+I_a}{\sqrt{3}}\end{cases}

  •  Clarke逆变换:用不到,采用了SVPWM进行了替代。

\left\{\begin{aligned}I_{\alpha}&=I_{a}\\I_{b}&=\frac{\sqrt{3}I_{\beta}-I_{\alpha}}2\\I_{c}&=\frac{-I_{\alpha}-\sqrt{3}I_{\beta}}2\end{aligned}\right.

3.2 Park变换与反变换

  • Park变换:将两相正弦电流Iα、Iβ,转换为两个常量Iq、Id

   

α--β坐标系:电机定子

q-d坐标系:电机转子

θ:转子当前的角度

 \left\{\begin{aligned}Id&=I\alpha\times\cos\theta+I\beta\times\sin\theta\\Iq&=-I\alpha\times\sin\theta+I\beta\times\cos\theta\end{aligned}\right.

Iq:当三相绕组产生的磁场方向与转子磁铁相切时,电流产生的旋转力矩最大。

Id:当三相绕组产生的磁场方向与转子磁场方向反向平行时,这时电机会被吸在原地不动,电流都用来产生热量。

  • Iq=1,Id=0,转子逆时针旋转,且转速随着Iq的变大而变大。
  • Iq=0,Id=1,转子定在原地,且发热量随着Id的变大而变大。
  • Park逆变换:

\begin{cases}I\boldsymbol{\alpha}=Id\times\cos\theta-Iq\times\sin\theta\\I\boldsymbol{\beta}=Id\times\sin\theta+Iq\times\cos\theta\end{cases}  

3.3 扇区计算

在三相逆变电路中:

  • 1:上桥臂导通
  • 0:上桥臂关闭

3.3.1 矢量编码

为了便于分析:采用二进制的方式对电压矢量进行编码,例如二进制100,十进制为U4

  • 3个半桥臂共可产生8种输出状态(2^3=8)
  • U7(111):3个半桥的上桥臂全部导通,无电流输出
  • U0(000):3个半桥的上桥臂全部关闭,无电流输出

序号A相桥臂B相桥臂C相桥臂矢量编号
1000U0
2100U4
3110U6
4111U7
5011U3
6001U1
7010U2
8101U5

 

3.4 SVPWM(空间电压矢量)生成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/921150.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DevExpress WinForms数据编辑器组件,提供丰富的数据输入样式!(二)

DevExpress WinForms超过80个高影响力的WinForms编辑器和多用途控件,从屏蔽数据输入和内置数据验证到HTML格式化,DevExpress数据编辑库提供了无与伦比的数据编辑选项,包括用于独立数据编辑或用于容器控件(如Grid, TreeList和Ribbon)的单元格。…

第60步 深度学习图像识别:误判病例分析(Pytorch)

基于WIN10的64位系统演示 一、写在前面 上期内容基于Tensorflow环境做了误判病例分析(传送门),考虑到不少模型在Tensorflow环境没有迁移学习的预训练模型,因此有必要在Pytorch环境也搞搞误判病例分析。 本期以SqueezeNet模型为…

Java不用加减乘除做加法(图文详解)

目录 1.题目描述 2.题解 分析 具体实现 1.题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用、-、*、/四则运算符号。 示例 输入:1 2 输出:3 2.题解 分析 不能使用加减乘除四则运算符,那我们只能考虑…

论文笔记:从不平衡数据流中学习的综述: 分类、挑战、实证研究和可重复的实验框架

0 摘要 论文:A survey on learning from imbalanced data streams: taxonomy, challenges, empirical study, and reproducible experimental framework 发表:2023年发表在Machine Learning上。 源代码:https://github.com/canoalberto/imba…

多环境开发

多环境 1、多环境开发(YAML版) 小结: 多环境开发需要设置若干种常用环境,例如开发、生产、测试环境yaml格式中设置多环境使用—区分环境设置边界每种环境的区别在于加载的配置属性不同启用某种环境时需要指定启动时使用该环境 …

跨境电商儿童沙画办理EN71测试标准

儿童沙画就是小孩子玩的那种用彩色沙子或者彩色墨水,在有图形轮廓的纸片上去绘画,可以按照儿童沙画底板上的人物轮廓线条,动物线条,风景线条,动漫线条,去添加自己喜欢的颜色,让单调的线条变成自…

请不要将数据中台做成BI!

近年来,随着数据驱动决策的重要性日益凸显,数据管理的概念也不断演进。数据中台作为一种新兴的数据管理模式,旨在集中组织和整合数据资源,为企业提供更高效、更智能的数据支持。然而,有时候在构建数据中台的过程中&…

C语言入门 Day_9 条件判断

目录 前言: 1.if判断 2.else判断 3.易错点 4.思维导图 前言: 我们知道比较运算和逻辑运算都会得到一个布尔型的数据,要么为真(true),要么为假(false)。 今天我们来学习真和假在…

【性能优化】使用Perfetto定位应用启动性能的瓶颈

Android应用启动优化相关的文章已经有很多人都写过了,但是主要都是聚焦在,为了启动性能都做了哪些改动上,少见有文章会说应该如何分析、识别应用的启动性能。 本篇文章将会结合我个人对Perfetto的实际使用经历,讲解车载应用的启动…

Python“牵手”当当网商品详情API接口运用场景及功能介绍,当当网API接口申请指南

当当网是全球知名的综合性网上购物商城,由国内著名出版机构科文公司、美国老虎基金、美国IDG集团、卢森堡剑桥集团、亚洲创业投资基金(原名软银中国创业基金)共同投资成立。当当网是北京当当网信息技术有限公司营运的一家中文购物网站&#x…

【校招VIP】产品行测考点之图的推理和分析

考点介绍: 大厂产品校招笔试里经常会出现行测的考察,而图的推理是行测里面稍微有难度的一部分。因为时间有限,很多同学因为没有解题思路而丢分。 『产品行测考点之图的推理和分析』相关题目及解析内容可点击文章末尾链接查看! 一…

【Unity小技巧】最简单的UI设置适配方案,萌新必看

文章目录 前言导入素材开始一、页面适配方案二、侧边栏适配方法一方法二 参考完结 前言 这期来讲一个简单的UI设计方案,很多同学可能搞不懂锚点、轴心这些概念,导致做好的UI在别人的设备上,乱跑或者是重叠,或者是参加游戏老发时间…

10-案例: 注册登录

项目思路: 1. 首页展示 将数据传递给前端模板渲染 2. 注册用户 接收前端传递的数据,保存后,重定向到首页 3. 删除用户 接收前端传递的用户名,进行删除 4. 修改用户 接收前端传递的数据,老名字进行判断,新数据修改数据 项目结构: 构建蓝图: (1). apps / user / model.py 增…

知道吗?微软将Python集成到Excel中,国产软件“抄作业”了

Excel集成Python 众所周知哦,VBA是一种基于微软的Visual Basic语言的宏编程语言,专为在Office应用程序中执行自动化任务而设计。 VBA适用于Excel、Word、PowerPoint等Office套件中的宏编程,可直接操作和控制Office应用程序的对象模型。 我们…

Golang Gorm 高级查询之where查询

插入测试数据 package mainimport ("fmt""gorm.io/driver/mysql""gorm.io/gorm" )type Student struct {ID int64Name string gorm:"size:6"Age intEmail *string }func (*Student) TableName() string {return "student&q…

名片扫描仪有何优缺点?要不要买?

名片扫描仪是一种专用设备,用于将纸质名片上的信息转换为数字格式。它可以通过光学字符识别(OCR)技术将名片上的文本、图像和其他数据提取出来,并将其保存为电子文件或导入到相关应用程序中。 名片扫描仪是一种年代比较久的产品了…

申请甲骨文免费vps的流程

前提:拥有一张VISA信用卡或者mastercard信用卡 背景:甲骨文的免费VPS,已经使用了一年了,不得不说还是很香的。当时申请的节点是日本的,这次想申请一个美国的,话不多说,开冲。 最初申请的时候也是失败了好多…

【Terraform学习】使用 Terraform 从 EC2 实例访问 S3 存储桶(Terraform-AWS最佳实战学习)

使用 Terraform 从 EC2 实例访问 S3 存储桶 实验步骤 前提条件 安装 Terraform: 地址 下载仓库代码模版 本实验代码位于 task_ec2_s3connet 文件夹中。 变量文件 variables.tf 在上面的代码中,您将声明,aws_access_key,aws_…

linux 同时kill杀死多进程实践

使用场景 当程序中有使用到多进程且进程数较多的情况,如下图,且需要通过控制台杀死所有的 GSM_run.py 的进程时,利用 kill 命令一个一个的去结束进程是及其耗时且繁琐的,这时就需要我们的kill多进程的命令工作了。 批量 Kill 进程…

分享好用的翻译软件

网易有道翻译→网易有道翻译