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

📄 drawerror.m

📁 惯性导航系统传递对准系统模型程序
💻 M
字号:
function DrawError(record,Algorithm_PM)

disp(' Drawing the Navigation Information');
fig=0;

fig=fig+1;figure(fig); % draw the align
subplot(3,3,1);plot(record.time,1000*record.align(:,1),'r',record.time,1000*record.align(:,4),'g');ylabel('alpha(mrad)');
subplot(3,3,4);plot(record.time,1000*record.align(:,2),'r',record.time,1000*record.align(:,5),'g');ylabel('beta(mrad)');
subplot(3,3,7);plot(record.time,1000*record.align(:,3),'r',record.time,1000*record.align(:,6),'g');ylabel('gama(mrad)');xlabel('time(s)');
subplot(3,3,2);plot(record.time,180/pi*record.align(:,1),'r',record.time,180/pi*record.align(:,4),'g');ylabel('alpha(deg)');
subplot(3,3,5);plot(record.time,180/pi*record.align(:,2),'r',record.time,180/pi*record.align(:,5),'g');ylabel('beta(deg)');
subplot(3,3,8);plot(record.time,180/pi*record.align(:,3),'r',record.time,180/pi*record.align(:,6),'g');ylabel('gama(deg)');xlabel('time(s)');
subplot(3,3,3);plot(record.time,180/pi*(record.align(:,1)-record.align(:,4)),'b');ylabel('alpha error(deg)');
subplot(3,3,6);plot(record.time,180/pi*(record.align(:,2)-record.align(:,5)),'b');ylabel('beta error(deg)');
subplot(3,3,9);plot(record.time,180/pi*(record.align(:,3)-record.align(:,6)),'b');ylabel('gama error(deg)');xlabel('time(s)');

fig=fig+1;figure(fig); % draw the attitude
subplot(3,2,1);plot(record.time,180/pi*record.attitude(:,1),'r',record.time,180/pi*record.attitude(:,4),'g');ylabel('alpha(deg)');
subplot(3,2,3);plot(record.time,180/pi*record.attitude(:,2),'r',record.time,180/pi*record.attitude(:,5),'g');ylabel('beta(deg)');
subplot(3,2,5);plot(record.time,180/pi*record.attitude(:,3),'r',record.time,180/pi*record.attitude(:,6),'g');ylabel('gama(deg)');xlabel('time(s)');
subplot(3,2,2);plot(record.time,180/pi*record.attitude(:,7),'c',record.time,180/pi*record.attitude(:,10),'g');ylabel('alpha(deg)');
subplot(3,2,4);plot(record.time,180/pi*record.attitude(:,8),'c',record.time,180/pi*record.attitude(:,11),'g');ylabel('beta(deg)');
subplot(3,2,6);plot(record.time,180/pi*record.attitude(:,9),'c',record.time,180/pi*record.attitude(:,12),'g');ylabel('gama(deg)');xlabel('time(s)');

fig=fig+1;figure(fig); % draw the position
plot(180/pi*record.path(:,2),180/pi*record.path(:,1),'r'),xlabel('Longitude (deg)'),ylabel('Latitude (deg)');
hold on, 
plot(180/pi*record.path(:,4),180/pi*record.path(:,3),'c');
plot(180/pi*record.path(:,6),180/pi*record.path(:,5),'g'),
hold off;

fig=fig+1;figure(fig); % draw the alignment error (mrad)
subplot(3,1,1);plot(record.time,180/pi*(record.align(:,4)-record.align(:,1)),'r');ylabel('\alpha (度)'); 
subplot(3,1,2);plot(record.time,180/pi*(record.align(:,5)-record.align(:,2)),'r');ylabel('\beta (度)');
subplot(3,1,3);plot(record.time,180/pi*(record.align(:,6)-record.align(:,3)),'r');ylabel('\gamma (度)');xlabel('时间(秒)');

fig=fig+1;figure(fig); % draw the alignment error (deg)
subplot(3,1,1);plot(record.time,180/pi*record.align(1,4)*ones(size(record.align(:,4))),'g-.',record.time,180/pi*(record.align(:,1)-record.align(:,4)+record.align(1,4)),'r-');ylabel('\alpha (度)'); legend('真实值','估计值');
subplot(3,1,2);plot(record.time,180/pi*record.align(1,5)*ones(size(record.align(:,5))),'g-.',record.time,180/pi*(record.align(:,2)-record.align(:,5)+record.align(1,5)),'r-');ylabel('\beta (度)');
subplot(3,1,3);plot(record.time,180/pi*record.align(1,6)*ones(size(record.align(:,6))),'g-.',record.time,180/pi*(record.align(:,3)-record.align(:,6)+record.align(1,6)),'r-');ylabel('\gamma (度)');xlabel('时间(秒)');

switch Algorithm_PM.error 
    case 'Consider'
        fig=fig+1;figure(fig); % draw the estimation error of gyro drift
        subplot(3,1,1);plot(record.time,(record.cal(:,3))/(0.01*pi/180/3600),'-.m'); ylabel(' (0.01 deg/h)'); 
        subplot(3,1,2);plot(record.time,(record.cal(:,4))/(0.01*pi/180/3600),'-.m'); ylabel(' (0.01 deg/h)');
        subplot(3,1,3);plot(record.time,(record.cal(:,5))/(0.01*pi/180/3600),'-.m');ylabel('(0.01 deg/h)');xlabel('时间(s)');       
        fig=fig+1;figure(fig); % draw the estimation error of accelorameter bias
        g=9.8;
        subplot(2,1,1);plot(record.time,(record.cal(:,1))/(1e-5*g),'-.m');ylabel(' (1e-5g deg/h)');
        subplot(2,1,2);plot(record.time,(record.cal(:,2))/(1e-5*g),'-.m');ylabel('(1e-5g deg/h)');xlabel('时间(s)');       
    
    case 'LevelArm_Consider'
        fig=fig+1;figure(fig);
        subplot(3,1,1);plot(record.time,record.levelarm(:,1),'-.m'); ylabel(' (m'); 
        subplot(3,1,2);plot(record.time,record.levelarm(:,2),'-.m'); ylabel(' (m)');
        subplot(3,1,3);plot(record.time,record.levelarm(:,3),'-.m');ylabel('(m)');xlabel('时间(s)');
    
end
    

⌨️ 快捷键说明

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