简单记忆clarke和park坐标变换

news2024/12/28 3:16:35

简单记忆clarke和park坐标变换

简介

想用简单的办法把这些变换矩阵写出来,需要的时候可以使用,不用再去翻书(当然完全记住还是更快一些)。只是自己用来记忆这些变换的方法。

具体可以参考:手撕系列(2):Clark变换与Park变换 - 知乎 (zhihu.com)
和这个视频:The Clarke and Park transformations (Episode 8)
还有这个(有空再看):C. J. O’Rourke, M. M. Qasim, M. R. Overlin, and J. L. Kirtley, “A Geometric Interpretation of Reference Frames and Transformations: dq0, Clarke, and Park,” IEEE Trans. Energy Convers., vol. 34, no. 4, pp. 2070–2083, Dec. 2019, doi: 10.1109/TEC.2019.2941175.

Clarke变换

只看等幅值的Clarke变换。想一想abc三轴的方向上,单位长度的矢量,在αβ系中的坐标:

a : ( 1 , 0 ) b : ( − 1 2 , 3 2 ) c : ( − 1 2 , − 3 2 ) \begin{align*} &a:(1,0) \\ &b:\left(\frac{-1}{2},\frac{\sqrt{3}}{2}\right) \\ &c:\left(\frac{-1}{2},-\frac{\sqrt{3}}{2}\right) \end{align*} a:(1,0)b:(21,23 )c:(21,23 )

把abc三个矢量的α坐标(实部)写第一行,β坐标(虚部)写第二行,乘上系数2/3,就是Clarke变换。
[ x α x β ] = T 3 / 2 [ x a x b x c ] = 2 3 [ 1 − 1 2 − 1 2 0 3 2 − 3 2 ] [ x a x b x c ] \left[ \begin{matrix} x_\alpha \\ x_\beta \end{matrix} \right] =T_{3/2}\left[ \begin{matrix} x_a \\ x_b \\ x_c \end{matrix} \right]= \frac{2}{3} \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} x_a \\ x_b \\x_c \end{matrix} \right] [xαxβ]=T3/2 xaxbxc =32[102123 2123 ] xaxbxc

去掉系数2/3,做个转置,就是Clarke反变换。因为正变换时采用了等幅值,乘以了系数2/3,所以反变换就不需要再加系数了——我大致是这样理解的。

T 2 / 3 = [ 1 0 − 1 2 3 2 − 1 2 − 3 2 ] T_{2/3}= \left[\begin{matrix} 1 & 0 \\ -\frac{1}{2} & \frac{\sqrt{3}}{2} \\ -\frac{1}{2} & -\frac{\sqrt{3}}{2} \end{matrix}\right] T2/3= 12121023 23

Park变换

关于Park变换,一直记得主对角线上是cos,副对角线是是sin,总是记不清sin的负号在哪里。
矢量在逆时针旋转,角度增大,而经过park变换后成为一个直流量,所以,park变换的作用相当于对矢量做了顺时针的旋转,也就是 e − j θ = c o s θ − j s i n θ e^{-j \theta}=cos \theta-jsin \theta ejθ=cosθjsinθ把实部写第一行,虚部写第二行,得到了半个park变换矩阵,就知道了负号是在第一列的sin。。。
Park反变换, e j θ = c o s θ + j s i n θ e^{j \theta}=cos \theta+jsin \theta ejθ=cosθ+jsinθ,同理。

T r ( − θ r ) = [ c o s θ r s i n θ r − s i n θ r c o s θ r ] ,    ( Park ) T r ( θ r ) = [ c o s θ r − s i n θ r s i n θ r c o s θ r ] ,    ( inverse   Park ) \begin{align*} T_{r}(-\theta_r) &= \left[\begin{matrix} cos\theta_r & sin\theta_r \\ -sin\theta_r & cos\theta_r \\ \end{matrix} \right], \;(\text{Park}) \\ T_{r}(\theta_r) &= \left[\begin{matrix} cos\theta_r & -sin\theta_r \\ sin\theta_r & cos\theta_r \end{matrix} \right], \;(\text{inverse\,Park}) \\ \end{align*} Tr(θr)Tr(θr)=[cosθrsinθrsinθrcosθr],(Park)=[cosθrsinθrsinθrcosθr],(inversePark)

具体也可以参考:手撕系列(2):Clark变换与Park变换 - 知乎 (zhihu.com)

附1

在αβ系中, x ⃗ = k α e ⃗ α + k β e ⃗ β \vec{x}=k_{\alpha}\vec{e}_{\alpha}+k_{\beta}\vec{e}_{\beta} x =kαe α+kβe β
在abc系中,同一个物理量, x ⃗ = k a e ⃗ a + k b e ⃗ b + k c e ⃗ c \vec{x}=k_{a}\vec{e}_{a}+k_{b}\vec{e}_{b}+k_{c}\vec{e}_{c} x =kae a+kbe b+kce c
其中 e ⃗ x \vec{e}_{x} e x为坐标轴方向上的单位向量。
为了在两个坐标系中切换,需要找到单位向量之间的对应关系。
比如abc系->αβ系: e ⃗ b = − 1 2 e ⃗ α + 3 2 e ⃗ β \vec{e}_{b}=-\frac{1}{2}\vec{e}_{\alpha}+ \frac{\sqrt{3}}{2}\vec{e}_{\beta} e b=21e α+23 e β
但是反过来,αβ系->abc系,其实挺难理解的,因为表示方法不唯一。。暂时还没懂。
比如 e ⃗ α = e ⃗ a = − e ⃗ b − e ⃗ c \vec{e}_{\alpha}=\vec{e}_{a}=-\vec{e}_{b}-\vec{e}_{c} e α=e a=e be c

而系数2/3只是为了使变换后矢量的模和三相物理量的幅值相等。

附2

关于“为什么三相电压之和为0,却能合成一个旋转矢量”这个问题,用MATLAB简单画个图。代码注释里有大致的解释。

close
t = 0:0.2*1e-3:0.02;
f = 50;

% 三相电压,正序
va = 100*cos(2*pi*f*t);
vb = 100*cos(2*pi*f*t - 2*pi/3);
vc = 100*cos(2*pi*f*t + 2*pi/3);

% 三相电压被放置在空间上的不同位置
% 空间上的位置,令a相为0°
% b相超前a相120°,即位于2*pi/3
% c相滞后a相120°,即位于-2*pi/3
% 也就是说这三个矢量的方向不变,幅值随时间变化(幅值可以为负值)
% 后缀_c表示是矢量(复数),实部为在α轴上的投影,虚部为β轴上的投影
va_c = va;
vb_c = vb*cos(2*pi/3) + 1i*vb*sin(2*pi/3);
vc_c = vc*cos(-2*pi/3) + 1i*vc*sin(-2*pi/3);

v_sum = va_c + vb_c + vc_c; % 三个矢量的合成结果

subplot(2,1,1)
plot(t,va,t,vb,t,vc,t,va+vb+vc);
legend('v_a','v_b','v_c','v_a+v_c+v_c'); 
%可以看到在时间上,三相电压之和是0

subplot(2,1,2)
plot(real(v_sum),imag(v_sum),'.');
axis equal
hold on
% 三相电压在空间上错开120°,合成结果落在一个圆上,且半径为1.5倍的相电压幅值
% 这里画了某个时刻的三个矢量的合成结果
ii = 40;
plot([0,real(va_c(ii))],[0,imag(va_c(ii))]);
plot([0,real(vb_c(ii))],[0,imag(vb_c(ii))]);
plot([0,real(vc_c(ii))],[0,imag(vc_c(ii))]);
plot([0,real(v_sum(ii))],[0,imag(v_sum(ii))]);
legend('sum','v_a','v_b','v_c','sum(ii)');

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

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

相关文章

【Redis】实现及优化分布式锁:实现、解决误删锁问题以及lua脚本确保redis操作原子性

目录 一、概念及不同分布式锁实现的对比 1、概念 2、特征 3、不同分布式锁实现的对比 二、Redis实现分布式锁的思路 1、获取锁思路 2、释放锁思路 三、代码实现分布式锁 1、准备 2、获取锁 2、释放锁 四、分布式锁的误删锁问题 1、问题 2、原因 五、误删锁的解决…

分布式配置中心

一、Config概述 Spring Cloud Config 解决了在分布式场景下多环境配置文件的管理和维护 好处: 集中管理配置文件 不同环境不同配置,动态化的配置更新 配置信息改变时,不需要重启即可更新配置信息到服务 二、Config 快速入门 1、使用git…

5.10-5.11总结

我教的课中 课程双击事件,跳转到课程界面 输入学生姓名和学号,添加学生 加载学生名单,双击学生,弹出学生资料,并且可以删除学生 但删除学生还有bug。

LeetCode - 1552 两球之间的磁力

目录 题目来源 题目描述 示例 提示 题目解析 算法源码 题目来源 1552. 两球之间的磁力 - 力扣(LeetCode) 题目描述 在代号为 C-137 的地球上,Rick 发现如果他将两个球放在他新发明的篮子里,它们之间会形成特殊形式的磁力。…

二维各向同性介质弹性波数值模拟(交错网格有限差分法)

一、一阶速度-应力弹性波方程 在二维各向同介质xoz平面内,假定体力为0。 从上面方程当中,我们为了得到各点的应力和速度值,就需要得到关于对时间t和空间x,z的偏导。 二、时间上的2M阶差分 由Taylor公式得 三、空间2N阶近似差分…

知识推理——CNN模型总结(持续更新)

记录一下我看过的利用CNN实现知识推理的论文。 最后修改时间:2023.05.10 目录 1.ConvE 1.1.解决的问题 1.2.优势 1.3.贡献与创新点 1.4.方法 1.4.1 为什么用二维卷积,而不是一维卷积? 1.4.2.ConvE具体实现 1.4.3.1-N scoring 1.5.…

RK3568平台开发系列讲解(驱动基础篇)GPIO控制方式

🚀返回专栏总目录 文章目录 一、使用GPIO sysfs接口控制IO二、使用libgpiod控制IO沉淀、分享、成长,让自己和他人都能有所收获!😄 📢GPIO是 General Purpose I/O 的缩写,即通用输入输出端口,简单来说就是MCU/CPU可控制的引脚, 这些引脚通常有多种功能,最基本的是高…

3D点云在线查看利器【LasViewer】

LasViewer是一个免费的3D点云在线查看工具,支持LAS/LAZ格式的3D点云文件在浏览器中的直接渲染。访问地址:LasViewer。 推荐:用 NSDT设计器 快速搭建可编程3D场景。 1、LasViewer快速上手 和BimAnt的其他在线工具一样,LasViewer的…

Windows11使用Cpython 编译文件 报错 error: Unable to find vcvarsall.bat 完美解决方法

开发环境说明: python 3.6.2Vs studio 2017 (已经安装C桌面开发) 我的 vcvarsall.bat 路径为: "D:\vsstudio\VC\Auxiliary\Build\vcvarsall.bat" 一般在Vs studio 的此安装路径下 修改python源代码 修改文件为 python3.6.2\Li…

shell脚本练习题

名为lianxi.txt的文件内容如下: Steve Blenheim:238-923-7366:95 Latham Lane, Easton, PA 83755:11/12/56:20300 Betty Boop:245-836-8357:635 Cutesy Lane, Hollywood, CA 91464:6/23/23:14500 Igor Chevsky:385-375-8395:3567 Populus Place, Caldwell, NJ 2387…

[230516] TPO71 | 2022年托福阅读真题第4/36篇 | Electrical Energy from the Ocean | 11:50

目录 7101 Electrical Energy from the Ocean Paragraph 1 问题1 Paragraph 2 问题2 Paragraph 3 问题3 Paragraph 4 问题4 做错 Paragraph 5 问题5 做错 Paragraph 6 问题6 Paragraph 7 问题7 Paragaph 8 问题8 做错 Paragraph 2 问题9 问题10 7101…

GateWay源码解析

前言 一、GateWay的自动配置 springboot 在引入一个新的组件时&#xff0c;一般都会有对应的XxxAutoConfiguration类来对该组件进行配置&#xff0c;GateWay也不例外&#xff0c;在引入了以下配置后&#xff0c;就会生成对应的GatewayAutoConfiguration自动配置类 <!-- gat…

15.Python Package目录及打包并发布到PyPI

欢迎访问个人网络日志&#x1f339;&#x1f339;知行空间&#x1f339;&#x1f339; 文章目录 0.基本介绍1.__init__.py文件1.1 Regular Package1.2 namespace package 2.Python Package工程2.1 安装及打包并发布到pypi2.2 将Python文件编译成.so 3.包的搜索路径参考资料 0.基…

go test coverage 单测覆盖率

单元测试的最终统计标准就是单测覆盖率&#xff0c;统计单测总体覆盖了多少行代码。一般来说&#xff0c;我们只需要关注增量代码的覆盖率&#xff0c;而非全量代码。增量代码就是本次迭代改动的代码&#xff0c;比如本次迭代改动了100行代码&#xff0c;我们保证单测能覆盖到这…

【Vue工程】007-Scss

【Vue工程】007-Scss 文章目录 【Vue工程】007-Scss一、概述1、CSS 问题三大缺点CSS 预处理器 2、简介3、中文网4、Slogan 二、基本使用1、安装2、配置全局 scss 样式文件3、在 vite.config.ts 配置4、组件中使用5、访问 http://localhost:5173/home 一、概述 1、CSS 问题 参考…

【OJ比赛日历】快周末了,不来一场比赛吗? #05.13-05.19 #14场

CompHub 实时聚合多平台的数据类(Kaggle、天池…)和OJ类(Leetcode、牛客…&#xff09;比赛。本账号同时会推送最新的比赛消息&#xff0c;欢迎关注&#xff01; 更多比赛信息见 CompHub主页 或 点击文末阅读原文 以下信息仅供参考&#xff0c;以比赛官网为准 目录 2023-05-…

AC AP简单组网

AC AP简单组网 1、LSW1交换机配置2、AC1控制器配置3、初步效果查看3.1、查看PC1获取地址情况3.2、查看AP获取地址情况 4、AC1控制器配置组网5、组网成功验收5.1、查看AP的物理地址&#xff08;dis arp)5.2、ensp模拟的拓扑结果5.3、STA链接到AP网络5.3、查看STA地址及连通性 vl…

ChatGPT:讯飞星火认知大模型-科大讯飞

讯飞星火认知大模型 科大讯飞推出的新一代认知智能大模型&#xff0c;拥有跨领域的知识和语言理解能力&#xff0c;能够基于自然对话方式理解与执行任务。从海量数据和大规模知识中持续进化&#xff0c;实现从提出、规划到解决问题的全流程闭环。 进入科大讯飞官网点击注册 …

【枚举+数学】CF1781D Many Perfect Squares

Many Perfect Squares - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意&#xff1a; 思路&#xff1a; n&#xff0c;1~50&#xff1a;对n暴力 x&#xff0c;0~1e18&#xff1a;O(1)计算 完全平方数&#xff1a;p^2 Code&#xff1a; #include <bits/stdc.h>#de…

liunx将普通用户提升为管理员

场景 用户要求将账号设置为管理员 操作如下 先登录服务器用管理员账号 打开配置文件/etc/sudoers 此时你会发现文件是空的&#xff0c;为什么呢&#xff1f;原因如下 因为当时使用的是管理员账号 需要切换成root才可以修改此文件 命令sudo su - 操作见图片 操作完之后 用户…