PLL锁相环+abc-dq坐标变换——MATLAB代码

参考Simulink编写锁相环程序,在数据处理中不需要运行sim函数调用Simulink,以此来提高数据处理的效率。

下面相关代码,此处未考虑0轴分量


function [ud_filt,uq_filt] = PLL(data,kp,ki)
%%kp = 1; %ki = 10; 锁相环参数

size_data = size(data);
Ts = ceil(1e10*(data(1,2) - data(1,1)))/1e10;%计算采样时间
time = 0:Ts:6-Ts;
ua = data(2,:);% 三相电流数据
ub = data(3,:);
uc = data(4,:);


wt(1) = 0;% 初始角度
for i=1:1:size_data(2)
    [ud(i),uq(i)] = a3s_2r (ua(i),ub(i),uc(i),wt(i));%% abc-dq 坐标变换

    time_for = time(1:i);  %% 循环时间
    if i==1
        yq(i) = uq+uq*time_for; % 首次循环采用数值计算
        yyq(i) = yq*time_for;
    else
        sys_PI = tf([kp ki],[1 0]);
        yq = lsim(sys_PI,uq,time_for);% 
        sys_s = tf(1,[1 0]);
        yyq = lsim(sys_s,yq,time_for);
    end
    wt(i+1) = mod(yyq(i),2*pi);% 循环角度
    f(i) = yq(i)/2/50/pi;% 输出频率
end
%% 滤波环节
fc = 100;%截止频率
fs = 1/Ts;%采样频率

[b,a] = butter(6,fc/(fs/2));
% freqz(b,a)
ud_filt = filter(b,a,ud); %b为分子,a为分母 第三项为输入数据
uq_filt = filter(b,a,uq); 
end

坐标变换函数如下,此处未考虑0轴分量

function [udi,uqi] = a3s_2r(ua,ub,uc,theta)

for i=1:1:max(size(ua))
    Martx = [cos(theta(i)) cos(theta(i)-2*pi/3) cos(theta(i)+2*pi/3);...
        -sin(theta(i)) -sin(theta(i)-2*pi/3) -sin(theta(i)+2*pi/3)];%坐标变换矩阵
    
    udq(i,:) = (2/3)*Martx*[ua(i);ub(i);uc(i)];%abc-dq变换  此处采用等幅值变换公式
end
    udi = udq(:,1);
    uqi = udq(:,2);
end

若不需要相角,建议直接给定相角,进行3s-2r变换,提高运行速度;

主函数如下:

clear
data = load("YStator_3020.mat");
data = data.YStator_3020;
% data = load("YTotal_3060.mat");
% data = data.YTotal_3060;
datau = [data(1,:);data(2,:);data(3,:);data(4,:)];%电压
time = data(1,:);
ua = data(2,:);% 三相电流数据
ub = data(3,:);
uc = data(4,:);
ia = data(5,:);% 三相电流数据
ib = data(6,:);
ic = data(7,:);


wt = time.*2*pi*50;

[ud,uq] = a3s_2r (ua,ub,uc,wt);%坐标变换函数
ud = ud/ud(1);
uq = uq/uq(1);
[id,iq] = a3s_2r (ia,ib,ic,wt);
id = id/id(1);
iq = iq/iq(1);

结果展示

 

d轴分量和q轴分量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值