【无人机】基于Matlab的四旋翼无人机控制仿真

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机  电力系统

⛄ 内容介绍

旋翼类无人机相对于固定翼无人机具有能够垂直起降,空中悬停等优点,而四旋翼无人机作为其中一个典型的代表,不仅结构简单还具有良好的带载能力,也易于操控,在军事领域,民用领域,都有着广泛的应用,常见的包括航天拍摄,灾害救援,物资运输等.飞行控制系统是四旋翼飞行器的关键,其中,如何控制飞行器的姿态,是整个飞行控制的核心问题.要保证四旋翼无人机在各种飞行环境下都具有良好的飞行状态,飞行控制算法极为重要.

⛄ 部分代码

function sdot = quadEOM(t, s, qn, controlhandle, trajhandle, params)

% QUADEOM Wrapper function for solving quadrotor equation of motion

%  quadEOM takes in time, state vector, controller, trajectory generator

%  and parameters and output the derivative of the state vector, the

%  actual calcution is done in quadEOM_readonly.

%

% INPUTS:

% t             - 1 x 1, time

% s             - 13 x 1, state vector = [x, y, z, xd, yd, zd, qw, qx, qy, qz, p, q, r]

% qn            - quad number (used for multi-robot simulations)

% controlhandle - function handle of your controller

% trajhandle    - function handle of your trajectory generator

% params        - struct, output from crazyflie() and whatever parameters you want to pass in

%

% OUTPUTS:

% sdot          - 13 x 1, derivative of state vector s

%

% NOTE: You should not modify this function

% See Also: quadEOM_readonly, crazyflie

% convert state to quad stuct for control

qd = stateToQd(s);

% Get desired_state

desired_state = trajhandle(t);

% The desired_state is set in the trajectory generator

qd.pos_des      = desired_state.pos;

qd.vel_des      = desired_state.vel;

qd.acc_des      = desired_state.acc;

qd.yaw_des      = desired_state.yaw;

qd.yawdot_des   = desired_state.yawdot;

% get control outputs

[F, M] = controlhandle(qd, t, params);

% compute derivative

sdot = quadEOM_readonly(t, s, F, M, params);

end

⛄ 运行结果

⛄ 参考文献

[1]魏家辉, 姜春波, 陈浩,等. 基于Matlab的四旋翼无人机控制仿真[J]. 数码世界, 2018.

⛄ Matlab代码关注

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

matlab科研助手

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

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

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

打赏作者

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

抵扣说明:

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

余额充值