打印
[STM32F1]

有了交流信号的实部和虚部,如何计算初始相位?谢谢!

[复制链接]
558|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yszong|  楼主 | 2021-1-18 22:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有了交流信号的实部和虚部,如何计算初始相位?谢谢!

使用特权

评论回复
沙发
午夜粪车| | 2021-1-18 22:49 | 只看该作者
这是个电路里面的书本知识问题, arctg(虚部/实部)

使用特权

评论回复
板凳
jiajs| | 2021-1-18 22:51 | 只看该作者

Angle=atan(Px/Py);
if(Px>0 && Py<0)Angle=Angle+PI;
else if(Px<0 && Py<0)Angle=Angle+PI;
else if(Px<0 && Py>0)Angle=Angle+2*PI;

使用特权

评论回复
地板
yszong|  楼主 | 2021-1-18 22:53 | 只看该作者

这又是什么意思?

使用特权

评论回复
5
huangchui| | 2021-1-18 22:55 | 只看该作者

angle 相位
tan(angle)=sin(angle)/cos(angle)=Px/Py,-90°<angle<90°;
后面的乱七八糟的不用管,tan函数周期是180°,加一个两个180°,不影响波形。他的单位是弧度PI 3.14 等效于180°。

使用特权

评论回复
6
午夜粪车| | 2021-1-18 22:57 | 只看该作者

Angle=atan(Px/Py); 这样求出的值是弧度值,范围:-π/2 ~ π/2
if(Px>0 && Py<0)Angle=Angle+PI;
else if(Px<0 && Py<0)Angle=Angle+PI;
else if(Px<0 && Py>0)Angle=Angle+2*PI
上面的这些是为了判断(py,px)所在象限,为了让弧度值变到0~2π之间,PI即π

使用特权

评论回复
7
huangchui| | 2021-1-18 22:58 | 只看该作者
你说得对,要判断象限

使用特权

评论回复
8
wenfen| | 2021-1-18 23:05 | 只看该作者
跟各位大神又学了一招。

使用特权

评论回复
9
yszong|  楼主 | 2021-1-18 23:08 | 只看该作者
多谢大家讨论这么多哈,呵呵

使用特权

评论回复
10
tfqi| | 2021-2-5 12:42 | 只看该作者
是正切还是反切来着

使用特权

评论回复
11
wiba| | 2021-2-5 12:42 | 只看该作者
就是高中的数学吧  呵呵呵

使用特权

评论回复
12
zljiu| | 2021-2-5 12:46 | 只看该作者
简单的计算问题

使用特权

评论回复
13
coshi| | 2021-2-5 12:48 | 只看该作者
对了 还需要判定象限

使用特权

评论回复
14
aoyi| | 2021-2-5 12:52 | 只看该作者
呵呵呵 比较简单的算法

使用特权

评论回复
15
flycamelaaa| | 2021-2-5 16:25 | 只看该作者

跟各位大神又学了一招。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

830

主题

11379

帖子

4

粉丝