⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 emu8channel360_jam2.m

📁 MyGui.rar
💻 M
字号:
% emu 8 channel 360 度
clc;
clear;
close all;
iNumOfChannel = 8;
fprintf('*******************************\n');
fprintf('      901加权单元测试仿真\n');
fprintf('*******************************\n\n');
CON1orOUT2=1;
while  CON1orOUT2==1
loadpath=input('\nloadpath=','s');
strLocalPath = loadpath;
for ii = 1: 1: iNumOfChannel
    AmpC(ii, :) = load(sprintf('%s\\%d\\Mark2Amp.txt', strLocalPath, ii));
    PhaC(ii, :) = load(sprintf('%s\\%d\\Mark2Phas.txt', strLocalPath, ii));
end
% t = 1 * pi / 180: pi / 180: 2 * pi;
% figure(1);
% for ii = 1: 1: iNumOfChannel
%     polar(t, AmpC(ii, :));
%     hold all;
% end

figure(2);
for ii = 1: 1: iNumOfChannel
    title('幅度');
    plot(AmpC(ii, :));
    hold all;
end
figure(3);
for ii = 1: 1: iNumOfChannel
    title('相位');
    plot(PhaC(ii, :));
    hold all;
end
fprintf('\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^');
fprintf('\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^');
CON1orOUT2=input('\nCON1orOUT2=');
end;
 



% subplot(2, 1, 2);
% for ii = 1: 1: iNumOfChannel
%     plot(AmpC_new(ii, :)); 
%     hold all;
% end
% 计算8路之间幅度和相位的差异
% t = linspace(5 * pi / 180, 2 * pi , 72);
% figure(4);
% plot(AmpC(1, 1:72));
% % AmpAdj = AmpC(1, :);            %确定标准
% AmpAdj = mean(AmpC(1, 1:72));
% 
% PhaAdj = PhaC(1, :);            %确定标准
% for ii = 1: 1: iNumOfChannel
%     AmpDiff(ii, :) = AmpC(ii, :) - AmpAdj;
%     maxAmpDiff(ii) = max(abs(AmpDiff(ii, :)));
%     PhaDiff(ii, :) = PhaC(ii, :) - PhaAdj;
% end
% for ii = 1: 1: iNumOfChannel
%     for jj = 1: 1: length(PhaDiff)
%         if (abs(PhaDiff(ii, jj)) > 7)   %去除掉180-(-180)所产生的极大点
%             PhaDiff(ii, jj) = 0;
%         end
%     end
%     maxPhaDiff(ii) = max(abs(PhaDiff(ii, :)));
% end
% disp('各路最大幅度差和相位差:');
% disp(maxAmpDiff);
% disp(maxPhaDiff);
% % 选取其中一个360度范围内的差异进行差异向量的计算
% for ii = 1: 1: iNumOfChannel
%     for jj = 1: 1: (360 / deltaAngle)
%         avrAmpDiff(ii, jj) = 10 ^ (AmpDiff(ii, jj) / 20);
%         avrPhaDiff(ii, jj) = PhaDiff(ii, jj);
%         %errVector(ii, jj) = (1 / avrAmpDiff(ii, jj)) * exp(- j * avrPhaDiff(ii, jj) * pi / 180);
%         errVector(ii, jj) = (1 / avrAmpDiff(ii, jj));           % 只校幅度不校相位
%     end
% end
% % 将校准向量输出到文件
% for ii = 1: 1: (360 / deltaAngle)
%     strFileName = sprintf('%s\\校为直线\\%d度.dat', strLocalPath, ii * deltaAngle);
%     fid = fopen(strFileName, 'w');
%     for jj = 1: 1: iNumOfChannel
%         fprintf(fid, '%g\r\n', real(errVector(jj, ii)));
%         fprintf(fid, '%g\r\n', imag(errVector(jj, ii)));
%     end
%     fclose(fid);
% end
% disp('文件保存完成!');
% myAmpData = load('F:\工作文件\901\仿真平台加权单元测试记录\干扰2第一路1248\Mark2Amp.txt');
% myPhaData = load('F:\工作文件\901\仿真平台加权单元测试记录\干扰2第一路1248\Mark2Phas.txt');
% figure(3);
% subplot(2, 1, 1);
% plot(myAmpData);
% hold all;
% subplot(2, 1, 2);
% plot(myPhaData);
% hold all;
% % 四个阶梯的幅度分别求平均
% for ii = 1: 1: 4
%     avrAmp(ii, :) = mean(myAmpData((ii - 1) * 360 + 1: (ii - 1) * 360 + 360)) * ones(1, 360);
%     divAmp(ii, :) = myAmpData((ii - 1) * 360 + 1: (ii - 1) * 360 + 360).' - avrAmp(ii, :);
%     subplot(2, 1, 1);
%     x = ((ii - 1) * 360 + 1: 1: (ii - 1) * 360 + 360);
%     plot(x, avrAmp(ii, :));
%     hold all;
% end
% figure(4);
% for ii = 1: 1: 4
%     x = ((ii - 1) * 360 + 1: 1: (ii - 1) * 360 + 360);
%     plot(x, divAmp(ii, :));
%     hold all;
% end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -