搜索
bottom↓
回复: 14

请教各位大牛:双向户外电源如何通过ADC检测AC频率和相位

[复制链接]

出0入4汤圆

发表于 2023-8-4 12:26:51 | 显示全部楼层 |阅读模式
正在开发双向逆变电源,需要检测输入AC的频率和相位。要做到50Hz,60Hz兼容,大家有什么样的思路?以前做其他产品用过光耦采集过零点,但是抗干扰稳定性不太理想。

出180入85汤圆

发表于 2023-8-4 16:48:42 | 显示全部楼层
可以看看自动重合闸的设计思路

出0入0汤圆

发表于 2023-8-14 14:15:04 | 显示全部楼层
很早之前用电压电流FFT计算相位差,不知道是否可以用于你说的情况。

出0入211汤圆

发表于 2023-8-14 14:20:59 来自手机 | 显示全部楼层
如果做逆变器产品,还在考虑这个问题建议趁早放弃,数字锁相环是逆变器的入门环节。当然如果你是做毕业设计那就另说哈。

出50入135汤圆

发表于 2023-8-15 08:44:07 | 显示全部楼层
数字锁相环,坛里有个仿真的,可以找来看看.搜索PSIM就有.

出50入135汤圆

发表于 2023-8-15 08:46:44 | 显示全部楼层
这几年搞新能源的很火?看一下搞逆变和BMS工资好高,上次有家给我35/38,没去.我一直干的是自动化,

出50入135汤圆

发表于 2023-8-15 08:51:05 | 显示全部楼层
我用PSIM仿真过三相的,可以检查出频率和相位,AD采样后,clark->park->PID->积分->反馈到park变换.

出50入135汤圆

发表于 2023-8-15 08:55:59 | 显示全部楼层
void SimulationStep(
                double t, double delt, double *in, double *out,
                 int *pnError, char * szErrorMsg,
                 void ** reserved_UserData, int reserved_ThreadIndex, void * reserved_AppPtr)
{
g_nStepCount++;
Time_20KHz++;

if(Time_20KHz==50/clock)  //20KHz
    {
         Time_20KHz=0;
         U[1]=in[0];
         U[3]=U[2];
         U[2]=U[0]-U[1];   
         U[0]=U[1];   

       Ual=U[1];                                                  //U  
       Ube=63.6646*(U[2]*0.2+U[3]*0.8);      //U  
   
      
      angle=angle_temp;   
      Ud= Ual*cos(angle)+Ube*sin(angle);
      Uq=-Ual*sin(angle)+Ube*cos(angle);


//*********************    ***************************//
   //一阶低通滤波
   Uq_rms=0.1*Uq_rms+0.9*Uq;

    PLC_Error_1 = PLC_Error_0;                                    //            
    PLC_Error_0 =Uq_rms;                                    //        (    )                       


    PLC_PID+=( PLC_Kp *  PLC_Error_0-  PLC_Ki *  PLC_Error_1 );
    //PLC_PID=PLC_PID+PLC_Kp*PLC_Error_0-PLC_Ki*PLC_Error_1;                           
    //PLC_PID=PLC_PID+PLC_kp*(PLC_Error_0-PLC_Error_1)+PLC_ki*PLC_Error_0;

        count++;
        Hz_sum+=PLC_PID;
        angle_temp+=PLC_PID;
    if(angle_temp>PI2)
                angle_temp=0;

        if( count==400)  //50us*400=20000us=20ms
        {
                count=0;
                Hz=Hz_sum/400*3180;   //3184  W=2*pi*f =>f=W/2Pi=(Hz_sum/400)*20*1000/2Pi  20*1000/6.2831853=3184
                Hz_sum=0;
    }

        out[0]=Ud;
        out[1]=Hz;   
        out[2]=angle_temp;

}

出50入135汤圆

发表于 2023-8-15 08:58:12 | 显示全部楼层
程序很简单,这个是检测是单相锁相环的.没搞懂单相如何转成Ualf和Ubet,就是下面几句.
U[1]=in[0];
         U[3]=U[2];
         U[2]=U[0]-U[1];   
         U[0]=U[1];   

       Ual=U[1];                                                  //U  
       Ube=63.6646*(U[2]*0.2+U[3]*0.8);      //U  

出0入4汤圆

 楼主| 发表于 2023-8-17 23:20:05 | 显示全部楼层
Stm32Motor 发表于 2023-8-15 08:58
程序很简单,这个是检测是单相锁相环的.没搞懂单相如何转成Ualf和Ubet,就是下面几句.
U[1]=in[0];
         ...
(引用自9楼)

感谢!
就是时下流行做法 SOGI PLL。

出0入4汤圆

 楼主| 发表于 2023-8-17 23:28:04 | 显示全部楼层
Stm32Motor 发表于 2023-8-15 08:58
程序很简单,这个是检测是单相锁相环的.没搞懂单相如何转成Ualf和Ubet,就是下面几句.
U[1]=in[0];
         ...
(引用自9楼)

alpha 和 beta 是SOGI 的输出,通过一次积分和二次积分获得。

出0入4汤圆

 楼主| 发表于 2023-8-17 23:30:01 | 显示全部楼层
gumogumo 发表于 2023-8-14 14:15
很早之前用电压电流FFT计算相位差,不知道是否可以用于你说的情况。
(引用自3楼)

这样其实也可以,但是实时性欠佳。

出50入135汤圆

发表于 2023-8-18 07:54:18 来自手机 | 显示全部楼层
那个63.6648怎么来的,还有后面的0.2和0.8

出0入4汤圆

 楼主| 发表于 2023-8-18 12:17:05 | 显示全部楼层
Stm32Motor 发表于 2023-8-18 07:54
那个63.6648怎么来的,还有后面的0.2和0.8
(引用自13楼)

这个代码比较清晰,x1,x2 就是alpha,beta vectors

void updateSOGI(SOGI *sogi, double input, double frequency, double samplingTime) {
    double omega = 2.0 * M_PI * frequency;
    double alpha = 1.0 / (1.0 + omega * samplingTime);

    sogi->x1 = alpha * (sogi->x1 + omega * sogi->x2 + input * samplingTime);
    sogi->x2 = alpha * (sogi->x2 - omega * sogi->x1 + input * samplingTime);
}

出0入4汤圆

 楼主| 发表于 2023-8-18 12:17:56 | 显示全部楼层
hushaoxin 发表于 2023-8-14 14:20
如果做逆变器产品,还在考虑这个问题建议趁早放弃,数字锁相环是逆变器的入门环节。当然如果你是做毕业设计 ...
(引用自4楼)

感谢指明方向:)
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-1 12:12

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表