基于Rflysim平台的无人机拦截三维比例导引算法仿真

【后厂村路钢铁侠出品】

一、Rflysim简介

RflySim是一套专为科研和教育打造的Pixhawk /PX4MATLAB/Simulink****生态系统或工具链,采用基于模型设计(Model-Based DesignMBD)的思想,可用于无人系统的控制和安全测试。

基于三维比例导引的Rflysim仿真

二、三维比例导引简介

浅入深出的介绍比例导引法原理及分析-CSDN博客

导引导弹概述和相对运动方程-CSDN博客

三维比例制导律matlab代码(含注释)_matlab三维求导-CSDN博客

三、无人机拦截数学建模

3.1常用坐标系定义

地面坐标系OXYZ、无人机坐标系、轨迹坐标系、速度坐标系、视线坐标系

3.2无人机动力学和运动学建模

3.3无人机-目标运动信息计算

四、算法仿真结果

4.1基于差分法matlab仿真二维比例导引

Matlab 复制代码
clear all;
close all;
clc
% 假设sphere_pos和pos_info是已经定义好的变量,其中sphere_pos是一个3x1的数组,pos_info是一个结构体,包含mav_pos字段,也是一个3x1的数组  
sphere_pos = [20, 45];
mav_pos=[0,0];
self.temp1=0
self.temp2=0
self.temp3=0
self.temp4=0
self.K=6;
dt=0.01;
% 计算los向量  
cmd_v=[0,0];
i=1;
pmr=[];
% 计算LOS的横向通道、竖向通道角度 
while i<100000
los = [sphere_pos(1) - mav_pos(1), sphere_pos(2) - mav_pos(2)];
q_x = atan2(los(2), los(1)); % 注意MATLAB中atan2的参数顺序与Python不同  
dqx = q_x - self.temp1;  
self.temp1 = q_x;  

theta_x = atan2(cmd_v(2), cmd_v(1)); % 注意MATLAB中atan2的参数顺序  
self.temp3 = theta_x;  

% 比例导引:计算期望速度角度  
theta_xd = (self.K * dqx) + self.temp3;  

  
% 计算V的横向通道、竖向通道角度  
cmd_v = [cos(theta_xd),sin(theta_xd)];   
cmd_v = cmd_v / norm(cmd_v);  
cmd_v = cmd_v * 4; % 调整速度向量的幅度
mav_pos=mav_pos+(dt.*cmd_v);
i=i+1;
pmr(i,:)=mav_pos;
if los(2)<1
    break;
end
end
plot(pmr(:,1),pmr(:,2),'r')
xlabel('X(m)');ylabel('Y(m)');%给三维图加坐标轴标注
text(0, 0,'\leftarrow起始点');%给目标轨迹加标注
text(sphere_pos(1), sphere_pos(2),'\leftarrow目标飞行器');%给目标轨迹加标注

仿真结果:

4.2基于差分法matlab仿真三维比例导引

三维的仿真代码是两个二维耦合的。

仿真结果:

4.3基于Rflysim仿真结果

基于三维比例导引的Rflysim仿真

仿真侧拍

相关推荐
风暴智能3 小时前
T16IZ遥控器教程__遥控器与无人机对频
无人机
云卓SKYDROID1 天前
无人机三叶螺旋桨概述
单片机·无人机·遥控器·云卓科技·精准降落·螺旋桨
鹧鸪云光伏1 天前
光伏无人机3D建模:毫秒级精度设计
3d·无人机
云卓SKYDROID1 天前
无人机抗风模块运行与技术难点分析
无人机·通道·遥控器·高科技·云卓科技
kangkang-1 天前
PC端基于SpringBoot架构控制无人机(二):MavLink协议
java·spring boot·后端·无人机
kangkang-4 天前
PC端基于SpringBoot架构控制无人机(三):系统架构设计
java·架构·无人机
森焱森4 天前
垂起固定翼无人机介绍
c语言·单片机·算法·架构·无人机
moonsims4 天前
全国产化行业自主无人机智能处理单元-AI飞控+通信一体化模块SkyCore-I
人工智能·无人机
可颂笪4 天前
PX4无人机上的返航操作和参数解读
无人机·个人开发
Spey_Events4 天前
千翼破界,百景赋能 | 2025深圳eVTOL展无人机场景应用专场即将启幕
无人机