FOC算法

        如下图所示的,是FOC算法的整体流程图,下面图中最重要的部分就是SVPWM和3相全桥电路,U\alphaU\beta送给SVPWM进行运算,运算之后的结果为三个相差120°的马鞍波,然后将这三相马鞍波作为控制全桥MOS开关的三个PWM波的占空比,之后3相全桥电路在PWM波的控制下产生三相相差120°的正弦波。

        FOC的其他算法,例如park、repark、clark、reclark变换等都是经过数学变换计算的公式,都是对三相正弦波的解耦计算,中间存在等幅值变换条件。FOC的闭环控制中需要获得电机的角度、速度信息,需要根据不同的编码器进行计算;FOC的位置闭环控制,需要使用到精度比较高的编码器,如果使用三相的霍尔编码器是无法实现位置闭环运算的。

        下面将针对上面的框图进行算法的分块描述。

一、clark、reclark

        clark是对三相相差120°的正弦波的第一层的解耦,将ia、ib、ic三相交流信号解耦到I\alphaI\beta两种正弦信号。

(1)自然坐标系

        如下图所示的,是三相正弦波在无刷电机的三相上的电流,三个电流以正弦波的形式在无刷电机的三相上产生三个方向上的磁场,三个方向上的磁场的合磁场就是下面左图的蓝色线所示。

        如下图所示的在三相上产生的磁场的矢量和,就是一个整体的绕圆旋转的矢量磁场。

(2)αβ 坐标系【clark变换】

        三相相差120°的交流信号的控制运算是比较困难的,所以需要对三相交流信号进行解耦。首先进行第一步解耦,自然坐标系解耦到αβ 坐标系。

         

        首先知道iA、iB、iC的电流值(ADC采样获得),将三者的大小由自然坐标ABC坐标系,投影到αβ 坐标系;根据基尔霍夫电流定律,可以知道三相上的电流在三相的交点上的和是为0的。就可以得到下面的公式:

I_{A}+I_{B}+I_{C}=0

I_{\alpha }=I_{A}-cos(\frac{2\pi }{3})\cdot I_{B}-cos(\frac{2\pi }{3})\cdot I_{C}

I_{\beta }=sin(\frac{2\pi }{3})\cdot I_{B}-sin(\frac{2\pi }{3})\cdot I_{C}

将上面的公式化简之后得到:

\left( \begin{matrix} I_{\alpha } \\ I_{\beta } \\ \end{matrix} \right)= \left( \begin{matrix} cos0^{\circ}& -cos60^{\circ} & -cos60^{\circ} \\ sin0^{\circ} & sin60^{\circ} & -sin60^{\circ} \\ \end{matrix} \right)* \left( \begin{matrix} I_{A} \\ I_{B} \\ I_{C}\\ \end{matrix} \right)

\left( \begin{matrix} I_{\alpha } \\ I_{\beta } \\ \end{matrix} \right)= \left( \begin{matrix} 1& -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2} \\ \end{matrix} \right)* \left( \begin{matrix} I_{A} \\ I_{B} \\ I_{C}\\ \end{matrix} \right)

上面的clark变换之后,I_{\alpha }I_{\beta }的幅值相对于IA、IB、IC的值会有增加,为了等幅值变换(等幅值变换的目的为了将相电流的幅值信号传递给电流闭环PI控制器,PI控制器在输出控制变量限制幅值的时候相对使用幅值),等幅值变换一般乘以2/3就可以。

\left( \begin{matrix} I_{\alpha } \\ I_{\beta } \\ \end{matrix} \right)=\frac{2}{3}\cdot \left( \begin{matrix} 1& -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2} \\ \end{matrix} \right)* \left( \begin{matrix} I_{A} \\ I_{B} \\ I_{C}\\ \end{matrix} \right)

(3)reclark【反clark变换】

        如果使用数学的方式计算出来SVPWM的6个扇区的周期以及周期的判断生成马鞍波,那么就使用不到reclark;如果使用使用正弦波+反向三角波结合生成马鞍波的方式,就需要使用到reclark变换(两种信号合成的方式生成马鞍波,计算量比较小,适用于低性能单片机)。

        按照下图所示的将I_{\alpha }I_{\beta }向量分布到IA、IB、IC向量上进行计算得到下面的reclark的公式:

   

(4)clark和reclark的matlab的simulink的仿真模型

下面是clark的simulink模型

下面是reclark的simulink的仿真模型

二、park、repark

        park的作用实在clark解耦的基础上再次进行解耦运算,将I_{\alpha }I_{\beta }的正弦波解耦为线性数据Id、Iq,解耦成线性数据之后就可以使用PID控制器进行控制了。

        park变换是将αβ 坐标系的两个正弦波映射到一个旋转坐标系(旋转的坐标系是跟随着转子在旋转的),最终如下图所示的,q-d轴两个定值在旋转的情况下合成的磁场矢量就是无刷电机整体的磁场矢量。

        如下图所示的,将αβ 坐标系I_{\alpha }I_{\beta }投影到q-d轴,得到park的变换矩阵为:

转换成矩阵为:

此为正方形矩阵它的逆矩阵则为:

所以反park的公式为:

(1)matlab的park的simulink仿真模型

(2)matlab的repark的simulink仿真模型

三、SVPWM

        结合开头提供的FOC架构,SVPWM的主要作用就是将U\alphaU\beta两个正弦波经过计算转化为马鞍波,马鞍波的值作为PWM波占空比的值。SVPWM生成马鞍波的方式有两种:(1)使用数学计算的方式;(2)使用正弦波与反向三角波合成的方式。下面将针对这两种方式进行讲解。

3.1、SVPWM的基础知识

       SVPWM的作用就是生成马鞍波,就是利用马鞍波调节的值调节PWM的占空比,从而达到7段式中不同的典型开关状态切换,从而实现矢量式控制转子的目的。

(1)全桥电路

        利用全桥电路的MOS管的开关组合实现不同开关状态的切换,从而实现电机的矢量控制。全桥电路的MOS管的开关组合由8中状态,其中两种状态是零电压状态,上桥臂全部打开、下桥臂全部打开,电机中都是没有电流的。

       将3对磁极进行编码:1(上桥臂打开,下桥臂关闭);0(上桥臂关闭,下桥臂打开)。

        如下图所示的是MOS管的8种状态,其中V0和V7两种状态是零电压的状态,其他的6种状态可以产生如下图中六边形种箭头所示的磁场。

(2)六种典型矢量合成扇区矢量

        逆变电路中,不能让MOS处于一种状态一直导通,这样电感就没有了阻抗,就容易把电机烧掉,但是一般控制系统都会有过流保护电路。

        如下图第一扇区所示的,通过V6和V4两个矢量的合成任意矢量,也就是快速的将V4的MOS管状态与V6的MOS管状态进行快读的切换,在惯性的作用下,就相当于两个力同时作用拉着转子,就会让转子悬停在某一个状态,但此时的电机是一直在抖动的,只要控制好两个力的大小(也就是控制两个力所占的时间),就可以让转子在一个周期内丝滑转动。

(3)七段式和五段式的矢量合成

        上面所说的控制相邻两个典型矢量在一个定时器的定时周期内所占的时间,两个矢量所占时间的不同就可以控制合成矢量的角度。但是大部分使用的还是七段式的比较多。

注意:如上图所示的七段式SVPWM中,在100、110这两段时间都是在变化的,并不是一直不变的,三相马鞍波作为PWM的占空比,三相马鞍波是在变化的,PWM的占空比也是在变化的。

        下面的两张图是所有的扇区的七段式图。

(4)六边形内圆的合成磁场矢量

        如上图所示,

3.2、正弦和反向三角波合成马鞍波

3.3、数学计算生成马鞍波

四、开环VF、IF强拖

五、电流PI控制闭环

六、速度PI控制闭环

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

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

相关文章

前端笔记-day13

文章目录 01-体验vw和vh02-vw适配02-适配.htmldemo.lessdemo.css 03-vw和vh不能混用03-vw和vh.htmldemo.lessdemo.css 04-综合案例-酷我demo.htmldemo.lessbase.lessdemo.css 酷我&#xff08;标准版&#xff09;index.htmlindex.lessindex.css 01-体验vw和vh <!DOCTYPE ht…

记一次线上流量突增问题排查

一.问题 接流量告警出现获取 xx 信息接口调用次数同比往年大促活动猛涨.扩大至 10 倍之多.心里顿时咯噔一下.最近各种严打,顶风作案.某不是摸到电门了.一下子要把自己带走.从此走向求职之路.一时间脑子哇哇的思绪万千. 202x.5.20 大促开门红的调用.这个是往年活动的时候的调用…

如何在 Odoo 16 中生成 CSV 报告

在 Odoo 中&#xff0c;我们需要生成多种类型的文件以用于不同的目的。CSV 报告允许用户从 Odoo 数据库导出结构化数据。CSV 格式受到各种应用程序和工具的广泛支持&#xff0c;因此可以轻松地与外部系统&#xff08;如电子表格&#xff08;例如 Microsoft Excel、Google Sheet…

谷歌云 | Gemini 大模型赋能 BigQuery 情感分析:解码客户评论,洞悉市场风向

情感分析是企业洞察客户需求和改进产品服务的重要工具。近年来&#xff0c;随着自然语言处理 (NLP) 技术的飞速发展&#xff0c;情感分析变得更加精准高效。Google 推出的 Gemini 模型&#xff0c;作为大型语言模型 (LLM) 的代表&#xff0c;拥有强大的文本处理能力&#xff0c…

生成图质量评价

1. RichHF-18K 论文地址 解决问题&#xff1a; 如何对生成图质量进行算法评价&#xff0c;以优化图片质量&#xff0c;提升模型生成能力 解决思路&#xff1a; 参考多模态模型&#xff0c;构建评价模型&#xff0c;从7个维度分三个分支对生成图进行测评&#xff1a; Tips&…

如何将overleaf的latex格式转换为word

安装pandoc https://pandoc.org/installing.html 下载安装后&#xff0c;打开windows shell&#xff0c;测试是否安装成功&#xff1a; pandoc -v使用代码转换 进入你防止latex的文件夹&#xff0c;运行以下命令&#xff1a; pandoc -o output.docx -t docx .\main.tex其中…

录制微课的软件有哪些?这些软件你不能错过!

随着在线教育的蓬勃发展&#xff0c;微课已成为一种广受欢迎的教学形式。微课录制软件的选择对于教师而言至关重要&#xff0c;它不仅要具备简单易用的特点&#xff0c;还要能够满足高质量录制的需求。而对于教师来说&#xff0c;录制微课的软件有哪些呢&#xff1f;本文将介绍…

【日常记录】【插件】js 获取浏览器信息、操作系统等相关信息

文章目录 1. 原生方式2. 插件的方式2.1 Bowser 的基本使用2.2 UAParser2.3 Platform.js 参考链接 1. 原生方式 原生方式可以通过 navigator.userAgent 来获取 需要写一个正则来匹配&#xff0c;获取相关的信息 2. 插件的方式 获取浏览器版本相关信息的库主要有以下几个 Bowser&…

高德API接入安卓相关问题说明

高德API接入安卓相关问题说明 我们都在怀念过去&#xff0c;失去后我们才懂得珍惜&#xff0c;有些人或事早已经远去&#xff0c;可是还是会想起曾经拥有的岁月&#xff0c;会是一种喜悦&#xff0c;会是一种遗憾…… 目前Android开发已经普遍使用Android Studio&#xff0c;开…

人工智能算法工程师(中级)课程1-Opencv视觉处理之基本操作

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能算法工程师(中级)课程1-Opencv视觉处理之基本操作。OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源的计算机视觉和机器学习软件库。它提供了各种视觉处理函数&#xff0c;并…

红酒与电影经典:那些银幕上的醉人瞬间

在光影交织的银幕世界里&#xff0c;红酒不仅是品味生活的象征&#xff0c;更是情感与故事的催化剂。每当夜幕降临&#xff0c;一杯色泽深邃的红酒&#xff0c;便能带我们走进那些令人陶醉的影片瞬间&#xff0c;感受不同的人生百态。今天&#xff0c;就让我们一起回味那些银幕…

告别付费 API!使用 Ollama 和 MATLAB 玩转本地大模型

在“当MATLAB遇见ChatGPT&#xff1f;”一文中介绍了名为MatGPT的插件&#xff0c;该插件通过调用ChatGPT的API&#xff0c;实现了在MATLAB中与Chat GPT对话的功能。 虽然Open AI的GPT3.5和GPT4o可以免费使用&#xff0c;但调用API却需要收费&#xff0c;因此使用MatGPT这类插件…

mybatis 延迟加载

MyBatis的延迟加载&#xff08;Lazy Loading&#xff09;是一种优化技术&#xff0c;用于在需要时才加载关联对象或集合&#xff0c;从而提高性能和效率。以下是对MyBatis延迟加载的详细介绍&#xff1a; 延迟加载的基本概念 延迟加载是指在第一次访问对象的属性时才加载该对象…

阿一课代表随堂分享:红队反向代理之使用frp搭建反向代理

frp反向代理 frp简介 frp 是一个开源、简洁易用、高性能的内网穿透和反向代理软件&#xff0c;支持 tcp, udp, http, https等协议。 frp 是一个可用于内网穿透的高性能的反向代理应用&#xff0c;分为服务端frps和客户端frpc&#xff0c;支持 tcp, udp, http, https 协议。详…

修改服务器挂载目录

由于我们的项目通常需要挂载一个大容量的数据盘来存储文件数据&#xff0c;所以我们每台服务器都需要一个默认的挂载目录来存放这些数据&#xff0c;但是由于我们的误操作&#xff0c;导致挂载目录名字建错了&#xff0c;这时候后端就读不到挂载目录了&#xff0c;那我们我们的…

Java面经知识点汇总版

Java面经知识点汇总版 算法 14. 最长公共前缀&#xff08;写出来即可&#xff09; Java 计算机基础 数据库 基础 SQL SELECT first_name, last_name, salary FROM employees WHERE department Sales AND salary > (SELECT AVG(salary)FROM employeesWHERE department Sal…

德语中含“Augen”的惯用语表达-柯桥小语种学习德语考级

在我们的德语学习过程中&#xff0c;除了词汇的记忆&#xff0c;另一项重要的记忆任务就是惯用语的背诵啦。要知道&#xff0c;德语中有大量的Redewendung&#xff0c;他们以其言简意赅的表达&#xff0c;在日常用语中备受青睐。上一期我们已经学习了部分含有“Hand”的惯用语&…

去中心化时代的到来:区块链如何重新定义权力和控制

随着区块链技术的迅猛发展&#xff0c;我们正逐步进入一个去中心化的新时代。区块链不仅仅是一种技术&#xff0c;更是一种理念&#xff0c;它通过去除中心化的权威和控制节点&#xff0c;重新定义了数据管理、交易验证和权力分配的方式。本文将深入探讨区块链如何在去中心化时…

成都欣丰洪泰文化传媒有限公司电商服务领航者

在当今数字化浪潮中&#xff0c;电商行业正以前所未有的速度蓬勃发展。作为这片蓝海中的佼佼者&#xff0c;成都欣丰洪泰文化传媒有限公司凭借其专业的电商服务能力和对市场的敏锐洞察力&#xff0c;成为众多品牌信赖的合作伙伴。今天&#xff0c;就让我们一起走进成都欣丰洪泰…

CC5利用链分析

分析版本 Commons Collections 3.2.1 JDK 8u65 环境配置参考JAVA安全初探(三):CC1链全分析 分析过程 CC6是在CC1 LazyMap利用链(引用)的基础上。 CC5和CC6相似都是CC1 LazyMap利用链(引用)的基础上&#xff0c;改变了到LazyMap的入口类。 CC6是用TiedMapEntry的hashCode方…