简单记忆clarke和park坐标变换

article/2025/9/20 14:45:19

简单记忆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'); 
%可以看到在时间上,三相电压之和是0subplot(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://chatgpt.dhexx.cn/article/oX9MYHUO.shtml

相关文章

【Matlab】在Simulink中仿真Park变换

1.Park变换 如上图,Park变换的实质就是通过将矢量F的表示形式从2相静止坐标系表示转换为通过2相旋转坐标系来表示;如果dq坐标系跟着矢量F一起旋转的话那么他们就是定值啦~ 1.1.数学表达式 Park变换相对就简单很多了,就是坐标系的旋转&#x…

电机控制park变换公式推导

电机控制park变换公式推导 Clarke变换是将三相平面坐标系静止的向两相平面坐标系变化,把它映射到电机中的话,clarke变换得到的是静止的αβ坐标系,对应的是电机的定子。而我们今天要推导的park是旋转的dq坐标系,对应这的是电机的…

FOC项目知识点总结三 | 完全搞懂 Clarke 与 Park 变换(附动图,仿真文件以及详细讲解数学推导过程)

本文目的:最终可以完整推算两种变换 网上对于 Clarke 变换与 Park 变换的各种解释都是浅尝辄止,丝毫没有涉及到了其中的真实含义,对于前面的参数也只是几笔带过。真的是很令人抓狂。。。为了解决此类痛点,本人搜罗了网上可以找到…

小猫爪:PMSM之FOC控制02-Park变换

小猫爪:PMSM之FOC控制02-Park变换 1 推导2 Simulink仿真3 个人理解END 1 推导 废话不多说,直接就整出一个α-β轴和d-q轴的图: 然后再根据矢量计算得:   在这里不妨再贴上反park变换的结论(其实就是Park变换的逆过…

PMSM中常用的两种坐标变换——Park变换

Xiaoxiaodawei 摘要: 同步旋转的合成磁场是由三项定子绕组在气隙中产生的,而Park变换就是用一个假想的、随转子同步旋转的绕组来等效替代原来的三相定子绕组。根据等效的原则,不论使用什么样的绕组系统,只要可以在气隙中产生相同…

基于翻译模型(Trans系列)的知识表示学习

翻译模型(Trans) 解决问题:知识表示与推理 将实体向量表示(Embedding)在低维稠密向量空间中,然后进行计算和推理。 主要应用:triplet classification, link prediction 目前基于翻译模型&#x…

TransE模型:知识图谱的经典表示学习方法

传统的知识图谱表示方法是采用OWL、RDF等本体语言进行描述;随着深度学习的发展与应用,我们期望采用一种更为简单的方式表示,那就是【向量】,采用向量形式可以方便我们进行之后的各种工作,比如:推理&#xf…

【论文导读】Time-Series Representation Learning via Temporal and Contextual Contrasting(时间和上下文对比的时间序列表示学习)

Time-Series Representation Learning via Temporal and Contextual Contrasting(通过时间和上下文对比的时间序列表示学习) 论文信息摘要主要贡献论文结构1. Introduction2. Related Works3. MethodsArchitecture of proposed TS-TCC model 4. Experime…

表示学习(Representation Learning)之局部表示(Local Representation)与分布式表示(Distributed Representation)

一个良好的表示是内容充分高效表达的基础,作为沟通计算机与现实世界的桥梁,计算机行业人员每时每刻都在研究事物的表示。比如:编程语言,早期的机器语言和现在的高级程序语言可以看作是指令的两种不同表示方式,从可读性…

深度学习是表示学习的经典代表(浅谈什么是深度学习)

目录 先来看机器学习: 什么是特征? 深度学习是表示学习的经典代表: 深度学习的过程: 深度学习与传统机器学习差别: 深度学习代表算法: 先来看机器学习: 机器学习是利用经验experience来改…

深度学习中的表示学习_Representation Learning

一、深度学习网络的表达方式汇总及模型分类方法 人的大脑会对眼睛捕捉到的外界事物进行逐级抽象,逐渐提取出抽象的语义信息,以便为人脑所理解。深度学习从这一科学发现得到启发,通过网络的权值来捕捉外界输入模式的特征,并且通过…

基于GNN的图表示学习及其应用

文章内容概述 本文内容分两部分,第一部分为基于 GNN 的图表示学习,共包含两节,第1节主要从三种建模方法上对图表示学习进行对比阐述;第2节分别从两类无监督学习目标——重构损失与对比损失,对基于 GNN 的无监督表示学习…

知识表示学习(KG Embedding)—— TransX系列

文章目录 前言TransETransHTransRTransD总结参考资料 前言 知识表示学习是针对于知识图谱三元组所做的word embedding,平常所做的都是基于完整的文本表述比如一句话去产生word2vec这种副产物,但是KG中的embedding是更为直接的构建实体与关系之间的语义联…

网络表示学习总结

我的GitHub博客:咖啡成瘾患者 网络的邻接矩阵表示网络的分布式表示网络表示学习的经典工作 DeepwalkLINEnode2vec 网络表示学习的相关论文 最近看了paperweekly的两次关于网络表示学习的直播,涂存超博士与杨成博士讲解了网络表示学习的相关知识。本文将网…

Deep Multimodal Representation Learning(深度多模态表示学习)

多模态表示学习旨在缩小不同模态之间的异质性差距,在利用普遍存在的多模态数据中发挥着不可或缺的作用。基于深度学习的多模态表示学习由于具有强大的多层次抽象表示能力,近年来引起了人们的广泛关注。 多模态融合的核心问题是异质性间隙,而为…

干货!Labeling Trick: 一个图神经网络多节点表示学习理论

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! GNN 旨在学习单节点表示。当我们想要学习一个涉及多个节点的节点集表示(如链路表示)时,以往工作中的一个常见做法是将 GNN 学习到的多个单节点表示直接聚合成节点集的联合表示…

知识图谱表示学习

知识图谱是一种精细化的异构网络, 所以对其节点与边的表示学习也是一个热门的问题. 这里的学习依旧是得到它们的低维稠密向量. 这样做的好处: 降低知识图谱的高维性和异构性;增强知识图谱应用的灵活性;减轻特征工程的工作量;减少由于引入知识…

深度聚类:将深度表示学习和聚类联合优化

参考文献: 简介 经典聚类即数据通过各种表示学习技术以矢量化形式表示为特征。随着数据变得越来越复杂和复杂,浅层(传统)聚类方法已经无法处理高维数据类型。结合深度学习优势的一种直接方法是首先学习深度表示,然后再…

什么是表示学习(representation learning)表征学习 表达学习

机器学习算法的成功与否不仅仅取决于算法本身,也取决于数据的表示。数据的不同表示可能会导致有效信息的隐藏或是曝露,这也决定了算法是不是能直截了当地解决问题。表征学习的目的是对复杂的原始数据化繁为简,把原始数据的无效信息剔除&#…

知识表示学习模型

最近清华的THUNLP整理了Pre-trained Languge Model (PLM)相关的工作:PLMpapers,非常全面,想要了解最新NLP发展的同学不要错过。本来这篇是打算写一写Knowledge Graph BERT系列工作的,但是最近有在做知识图谱的一些东西所以就先整…