www.gusucode.com > 《雷达数据处理及应用》之Singer模型雷达目标跟踪源码程序 > 《雷达数据处理及应用》之Singer模型雷达目标跟踪源码程序/Singer_target_movement.m
function [x,y,zx,zy,NN]=Singer_target_movement %函数定义:生成目标运动的真实值和测量值 % %***************仿真条件******************************************************* T=2; %雷达扫描周期 r=10000; %量测误差方差 x0=2000;%目标在X轴方向的起始位置 y0=10000;%目标在Y轴方向的起始位置 xv0=0;%目标在X轴方向的起始速度 yv0=-15;%目标在Y轴方向的起始速度 NN=500;%采样点数 x=zeros(NN,1);%X轴位置初始化 y=zeros(NN,1);%Y轴位置初始化 x(1)=x0;%X轴初始位置 y(1)=y0;%Y轴初始位置 vx(1)=xv0;%X轴初始速度 vy(1)=yv0;%Y轴初始速度 for i=1:NN-1 if i<200 ax=0; ay=0; vx(i+1)=vx(i)+ax*T; vy(i+1)=vy(i)+ay*T; elseif (i>=200)&(i<=300) ax=15/200; ay=15/200; vx(i+1)=vx(i)+ax*T; vy(i+1)=vy(i)+ay*T; elseif (i>300)&(i<=500) ax=0; ay=0; vx(i+1)=vx(i)+ax*T; vy(i+1)=vy(i)+ay*T; end x(i+1)=x(i)+vx(i)*T+0.5*ax*T^2+0.5*0*T^2*randn;%X轴的动态方程 y(i+1)=y(i)+vy(i)*T+0.5*ay*T^2+0.5*0*T^2*randn;%Y轴的动态方程 end %***************产生量测噪声******************** nx=100*randn(NN,1); ny=100*randn(NN,1); %***************量测值************************** zx=x+nx; zy=y+ny; vvx=vx; vvy=vy; save target_movement_out vvx vvy %i=1:NN; %k=4:1:NN; %l=4:1:NN; %figure(1) %plot(x,y,'-dm'); %title('目标运动轨迹') %xlabel('x方向') %ylabel('y方向') %legend('目标运动轨迹')