打印
[STM32F1]

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

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

使用特权

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

使用特权

评论回复
板凳
jiajs| | 2019-3-26 18:28 | 只看该作者

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|  楼主 | 2019-3-26 18:28 | 只看该作者
这又是什么意思?

使用特权

评论回复
5
huangchui| | 2019-3-26 18:29 | 只看该作者

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

使用特权

评论回复
6
午夜粪车| | 2019-3-26 18:30 | 只看该作者

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| | 2019-3-26 18:31 | 只看该作者
你说得对,要判断象限

使用特权

评论回复
8
wyjie| | 2019-3-26 18:32 | 只看该作者
跟各位大神又学了一招。

使用特权

评论回复
9
yszong|  楼主 | 2019-3-26 18:32 | 只看该作者
结贴了,多谢大家讨论这么多哈,呵呵

使用特权

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

本版积分规则

830

主题

11379

帖子

4

粉丝