Skip to content

A simple linear MPC-based quadcopter control simulation

Notifications You must be signed in to change notification settings

jbwenjoy/MPC_Quadcopter

Repository files navigation

MPC Quadcopter

基于Matlab MPC Toolbox的简易四旋翼无人机控制仿真

一个简单的练手小项目(MATLAB版本:2022b)


2023-Mar-21

修复了在期望偏航不为0时无人机会失稳的问题。当然也许我并没有彻底解决这一问题,只是让MPC认为期望的偏航角每时每刻都为0,这样就回避了MPC无法稳定控制偏航的问题。以下为偏航控制测试的结果。

image

image

image


2023-Mar-7

更新了MPC权重,添加了新的可视化模块(需要在MATLAB中安装3dscope),移除了废弃的工程文件

可以飞一个稍微复杂些的8字,结果可以在SavedData/TrackingResult20230303.fig查看

image

image


2023-Feb-28

把原来的12个输出量改为4个(位置xyz和偏航yaw),因为轨迹通常只需要这几个量

目前可以以大约6m/s的速度跟踪圆圈轨迹,下图中的轨迹为一位于$z=0$平面、半径$r=10m$的圆

屏幕截图_20230227_215849

位移

image

速度

image

姿态欧拉角

image

桨转速

image

目前的问题:

参数几乎没怎么调,特别是高度上存在较大的稳态误差,同时第一圈的跟踪性能很差


2023-Feb-18

虽然解决了一些bug,程序基本能跑了,但问题还很多,比如模型线性化以及MPC参数。

目前仅采用了MATLAB自带的模型线性化器,问题是当系统状态改变较大时这种近似效果不好。 下一步计划采用反馈线性化(Feedback Linearization)。

MPC设计还比较naive,需要继续学习一个。。。

About

A simple linear MPC-based quadcopter control simulation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages