【运动学】仿真CV、CA、CT三种运动模型轨迹【含Matlab源码 3037期】

本文介绍了如何通过两种方式获取Matlab源代码,包括一个付费下载的完整代码包和Matlab物理应用付费专栏。主要展示了带有加速度扰动的匀速直线运动目标的二维航迹仿真过程,以及处理随机噪声的算法。MATLAB版本为2014a,还提供了相关参考文献。
摘要由CSDN通过智能技术生成

在这里插入图片描述

⛄一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【运动学】基于matlab仿真CV、CA、CT三种运动模型轨迹【含Matlab源码 3037期】
点击上面蓝色字体,直接付费下载,即可。

获取代码方式2:
付费专栏Matlab物理应用(初级版)

备注:
点击上面蓝色字体付费专栏Matlab物理应用(初级版),扫描上面二维码,付费29.9元订阅海神之光博客付费专栏Matlab物理应用(初级版),凭支付凭证,私信博主,可免费获得1份本博客上传CSDN资源代码(有效期为订阅日起,三天内有效);
点击CSDN资源下载链接:1份本博客上传CSDN资源代码

⛄二、部分源代码

% 跟踪函数
function data = simutrack_cv(x0, y0, z0, v0, theta, phi, sigma_ax, sigma_ay, sigma_az, sigma_r, sigma_theta, sigma_phi, sigma_v, T, N)
%simutrack 仿真带加速度扰动的匀速直线运动目标的二维航迹.
%
% ‘x0’ 目标在x方向上的初始位置
% ‘y0’ 目标在y方向上的初始位置
% ‘z0’ 目标在z方向上的初始位置
% ‘v0’ 目标运动方向上的初始速度
% ‘theta’ 目标初始运动方向与x轴的夹角
% ‘phi’ 目标初始运动方向与xy平面的夹角
% ‘sigma_ax’ x轴方向的随机加速度(过程噪声)
% ‘sigma_ay’ y轴方向的随机加速度(过程噪声)
% ‘sigma_az’ z轴方向的随机加速度(过程噪声)
% ‘sigma_r’ 极坐标下距离的测量标准差
% ‘sigma_theta’ 极坐标下方位的测量标准差,单位度
% ‘sigma_phi’ 极坐标下俯仰的测量标准差,单位度
% ‘sigma_v’ 极坐标下径向速度的测量标准差
% ‘T’ 雷达扫描周期
% ‘N’ 采样点数
% ‘data’ 仿真得到的N点目标航迹[斜距 方位角 俯仰角 径向速度]

% 角度转变为弧度
theta = thetapi/180;
phi=phi
pi/180;

% xyz方向上的初始速度
vx0 = v0 * cos(theta)*cos(phi);
vy0 = v0 * sin(theta)*cos(phi);
vz0 = v0 * sin(phi);

% 状态转移矩阵
F = [1 T 0 0 0 0; 0 1 0 0 0 0; 0 0 1 T 0 0 ; 0 0 0 1 0 0;0 0 0 0 1 T;0 0 0 0 0 1];

% 过程噪声分布矩阵
Tao = [T^2/2 0 0;T 0 0;0 T^2/2 0 ; 0 T 0;0 0 T^2/2;0 0 T];

% 测量矩阵
% H = [1 0 0 0 0 0;0 0 1 0 0 0;0 0 0 0 0 1 ];

% 构造真实航迹
X(:,1) = [x0 vx0 y0 vy0 z0 vz0]‘;
for m = 2:N
X(:,m) = FX(:,m-1)+Tao[sigma_axrandn(1) sigma_ayrandn(1) sigma_az*randn(1)]’; %N个点迹的坐标
end

% 极坐标下的数值
r0 = sqrt(X(1,:).2+X(3,:).2+X(5,:).^2); %斜距
theta0 = atan(X(3,:)./X(1,:))*180/pi; %方位角
phi0 = atan(X(5,:)./sqrt(X(1,:).2+X(3,:).2))*180/pi; %俯仰角
vr0 = -(X(1,:).*X(2,:)+X(3,:).*X(4,:)+X(5,:).*X(6,:))./r0; %径向速度

for i=1:N
if(X(1,i)>=0&&X(3,i)>0)
theta0(i)=theta0(i);
else if(X(1,i)>=0&&X(3,i)<0)
theta0(i)=theta0(i)+360;
else
theta0(i)=theta0(i)+180;
end
end
end

% 加高斯观测噪声
r = r0 + sigma_rrandn(1,N);
theta = theta0 + sigma_theta
randn(1,N);
phi = phi0+sigma_phirandn(1,N);
vr = vr0+sigma_v
randn(1,N);

data = [r’, theta’,phi’,vr’];

⛄三、运行结果

在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 门云阁.MATLAB物理计算与可视化[M].清华大学出版社,2013.

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab领域

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值