【无人机设计与技术】四旋翼无人机的建模

摘要

本项目的目标是通过 Simulink 建模和仿真,研究四旋翼无人机的建模、姿态控制、定点位置控制及航点规划功能。无人机建模包含了动力单元模型、控制效率模型和刚体模型,并运用这些模型实现了姿态控制和位置控制。姿态控制为无人机的平稳飞行提供基础,而位置控制则帮助无人机进行精确的空间定位。通过给定一系列航点,完成了航点规划功能的验证。仿真结果表明,系统设计的控制算法简单高效,具有良好的跟踪效果和稳定性。

理论

四旋翼无人机是多旋翼飞行器的一种,其控制原理基于姿态和位置控制器的设计。

  1. 动力单元模型:主要包括四个电机和螺旋桨的动力学行为,通过电机的转速控制推力和转矩。

  2. 控制效率模型:用于描述推力和转矩与电机控制输入之间的关系。

  3. 刚体模型:包括无人机的动力学模型和运动学模型,动力学模型主要描述力和加速度之间的关系,运动学模型描述无人机的姿态和位置随时间的变化。

无人机控制器分为姿态控制器和位置控制器两部分。姿态控制是为了保持无人机的平衡,通过控制螺旋桨的速度来调整俯仰角、滚转角和偏航角。位置控制则是在姿态控制的基础上,通过调整无人机的速度和加速度,使其能够在空间中移动到指定的位置。
航点规划:在位置控制的基础上,实现无人机的航点规划,即无人机按照设定的航点序列飞行,依次达到目标点。

实验结果

  1. 姿态控制仿真:通过设定步进信号验证姿态控制器的性能,结果表明无人机可以迅速达到设定的姿态角度,且姿态控制具有较好的动态响应特性,无超调现象。

  2. 位置控制仿真:位置控制在 Simulink 仿真中表现出较好的稳定性,能够准确跟踪设定的参考轨迹,并在达到目标位置后保持稳定。

  3. 航点规划实验:通过设定多个航点,无人机可以在仿真中依次到达每个航点,证明航点规划功能实现。

  4. 实验中的示波器图像显示了姿态角度(俯仰、滚转、偏航)的动态变化过程,验证了控制系统在动态跟踪方面的有效性。

部分代码

以下是一个姿态控制的简化代码示例:

% 四旋翼无人机的姿态控制器仿真代码
clc;
clear all;
close all;

% 参数设定
k_p = 1.2; % 比例增益
k_d = 0.8; % 微分增益
desired_pitch = 0; % 期望的俯仰角
desired_roll = 0; % 期望的滚转角
desired_yaw = 0; % 期望的偏航角

% 仿真时间
sim_time = 10; 

% 姿态控制器的 PD 控制
for t = 1:sim_time
    error_pitch = desired_pitch - current_pitch;
    error_roll = desired_roll - current_roll;
    error_yaw = desired_yaw - current_yaw;

    pitch_control = k_p * error_pitch + k_d * (error_pitch - last_error_pitch);
    roll_control = k_p * error_roll + k_d * (error_roll - last_error_roll);
    yaw_control = k_p * error_yaw + k_d * (error_yaw - last_error_yaw);

    last_error_pitch = error_pitch;
    last_error_roll = error_roll;
    last_error_yaw = error_yaw;

    % 更新无人机姿态
    current_pitch = update_pitch(pitch_control);
    current_roll = update_roll(roll_control);
    current_yaw = update_yaw(yaw_control);
end

参考文献

  1. Bouabdallah, S., & Siegwart, R. (2007). Full control of a quadrotor. Proceedings of the 2007 IEEE International Conference on Robotics and Automation.

  2. Mellinger, D., & Kumar, V. (2011). Minimum snap trajectory generation and control for quadrotors. Proceedings of the 2011 IEEE International Conference on Robotics and Automation.

  3. Mahony, R., Kumar, V., & Corke, P. (2012). Multirotor aerial vehicles: Modeling, estimation, and control of quadrotor. IEEE Robotics & Automation Magazine.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/885648.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OpenCV normalize() 函数详解及用法示例

OpenCV的normalize函数用于对数组(图像)进行归一化处理,即将数组中的元素缩放到一个指定的范围或具有一个特定的标准(如均值和标准差)。它有两个原型函数, 如下: Normalize()规范化数组的范数或值范围。当normTypeNORM…

制造企业为何需要PLM系统?PLM系统解决方案对制造业重要性分析

制造企业为何需要PLM系统?PLM系统解决方案对制造业重要性分析 新华社9月23日消息,据全国组织机构统一社会信用代码数据服务中心统计,我国制造业企业总量突破600万家。数据显示,2024年1至8月,我国制造业企业数量呈现稳…

简单线性回归分析-基于R语言

本题中&#xff0c;在不含截距的简单线性回归中&#xff0c;用零假设对统计量进行假设检验。首先&#xff0c;我们使用下面方法生成预测变量x和响应变量y。 set.seed(1) x <- rnorm(100) y <- 2*xrnorm(100) &#xff08;a&#xff09;不含截距的线性回归模型构建。 &…

计算机视觉综述

大家好&#xff0c;今天&#xff0c;我们将一起探讨计算机视觉的基本概念、发展历程、关键技术以及未来趋势。计算机视觉是人工智能的一个重要分支&#xff0c;旨在使计算机能够“看”懂图像和视频&#xff0c;从而完成各种复杂的任务。无论你是对这个领域感兴趣的新手&#xf…

Linux操作系统中MongoDB

1、什么是MongoDB 1、非关系型数据库 NoSQL&#xff0c;泛指非关系型的数据库。随着互联网web2.0网站的兴起&#xff0c;传统的关系数据库在处理web2.0网站&#xff0c;特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心&#xff0c;出现了很多难以克服的问…

SpringBoot整合JPA详解

SpringBoot版本是2.0以上(2.6.13) JDK是1.8 一、依赖 <dependencies><!-- jdbc --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jdbc</artifactId></dependency><!--…

C# C++ 笔记

第一阶段知识总结 lunix系统操作 1、基础命令 &#xff08;1&#xff09;cd cd /[目录名] 打开指定文件目录 cd .. 返回上一级目录 cd - 返回并显示上一次目录 cd ~ 切换到当前用户的家目录 &#xff08;2&#xff09;pwd pwd 查看当前所在目录路径 pwd -L 打印当前物理…

Unity实战案例全解析:RTS游戏的框选和阵型功能(5)阵型功能 优化

前篇&#xff1a;Unity实战案例全解析&#xff1a;RTS游戏的框选和阵型功能&#xff08;4&#xff09;阵型功能-CSDN博客 本案例来源于unity唐老狮&#xff0c;有兴趣的小伙伴可以去泰克在线观看该课程 我只是对重要功能进行分析和做出笔记分享&#xff0c;并未无师自通&#x…

ARM Process state -- SPSR

Holds the saved process state for the current mode. 保存当前模式的已保存进程状态。 N, bit [31] Set to the value of PSTATE.N on taking an exception to the current mode, and copied to PSTATE.N on executing an exception return operation in the current mod…

袋鼠云数据资产平台:数据模型标准化建表重构升级

数据模型是什么&#xff1f;简单来说&#xff0c;数据模型是用来组织和管理数据的一种方式。它为构建高效且可靠的信息系统提供了基础&#xff0c;不仅决定了如何存储和管理数据&#xff0c;还直接影响系统的性能和可扩展性。 想要建立一个良好的数据模型&#xff0c;设计时需…

链表的基础知识

文章目录 概要整体架构流程 小结 概要 链表是一种常见的数据结构&#xff0c;它通过节点之间的连接关系实现数据的存储和访问。链表由一系列节点&#xff08;Node&#xff09;组成&#xff0c;每个节点包含数据和指向下一个节点的指针。链表的特点是物理存储单元上非连续、非顺…

Qt的互斥量用法

目的 互斥量的概念 互斥量是一个可以处于两态之一的变量:解锁和加锁。这样&#xff0c;只需要一个二进制位表示它&#xff0c;不过实际上&#xff0c;常常使用一个整型量&#xff0c;0表示解锁&#xff0c;而其他所有的值则表示加锁。互斥量使用两个过程。当一个线程(或进程)…

网络编程,端口号,网络字节序,udp

前面一篇我们讲了网络的基础&#xff0c;网络协议栈是什么样的&#xff0c;数据如何流动传输的&#xff1b;接下来这篇&#xff0c;我们将进行实践操作&#xff0c;真正的让数据跨网络进行传输&#xff1b; 1.网络编程储备知识 1.1 初步认识网络编程 首先我们需要知道我们的…

Java基础 3. 面向对象

Java基础 3. 面向对象 文章目录 Java基础 3. 面向对象3.1. 面向对象3.2. 对象的创建和使用3.3. 封装3.4. 构造方法3.5. this关键字3.6. static关键字JVM体系结构 [^现阶段不用掌握]3.7. 单例模式 [^初级]3.8. 继承3.9. 方法覆盖3.10. 多态3.11. super关键字3.12. final关键字3.…

你的虚拟猫娘女友,快来领取!--文心智能体平台

文章目录 一、引言二、赛事介绍2.1 简介2.2 比赛时间2.3 大赛具体链接2.4 第一期赛题 三、智能体创建流程3.1 进入文心智能体平台3.1 创建智能体3.1 虚拟猫娘女友特性3.1 智能体调优 四、引言智能体测试五、结语 一、引言 我是热爱生活的通信汪&#xff0c;今天这篇博文记录一…

[CSP-J 2022] 解密

题目来源&#xff1a;洛谷题库 [CSP-J 2022] 解密 题目描述 给定一个正整数 k k k&#xff0c;有 k k k 次询问&#xff0c;每次给定三个正整数 n i , e i , d i n_i, e_i, d_i ni​,ei​,di​&#xff0c;求两个正整数 p i , q i p_i, q_i pi​,qi​&#xff0c;使 n …

C语言 | Leetcode C语言题解之第448题找到所有数组中消失的数字

题目&#xff1a; 题解&#xff1a; int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize) {for (int i 0; i < numsSize; i) {int x (nums[i] - 1) % numsSize;nums[x] numsSize;}int* ret malloc(sizeof(int) * numsSize);*returnSize 0;for (in…

“2024光明多多垂直农业挑战赛”决赛启动成功举办

由光明食品集团所属上花集团的光明花博邨基地&#xff0c;与拼多多携手&#xff0c;联合中国农业大学、浙江大学等共同举办的“2024光明多多垂直农业挑战赛暨第四届多多农研科技大赛”于9月20-21日正式启动决赛。来自上海交大、中国农大、上海农科院、国家农业智能装备工程技术…

基于Node.js+Express+MySQL+VUE科研成果网站发布查看科研信息科研成果论文下载免费安装部署

目录 1.技术选型‌ ‌2.功能设计‌ ‌3.系统架构‌ ‌4.开发流程‌ 5.开发背景 6.开发目标 7.技术可行性 8.功能可行性 8.1功能图 8.2 界面设计 8.3 部分代码 构建一个基于Spring Boot、Java Web、J2EE、MySQL数据库以及Vue前后端分离的科研成果网站&#xff0c;可…

Unity 2D RPG Kit 学习笔记

学习资料&#xff1a; B站教学视频&#xff1a;https://www.bilibili.com/video/BV1dC4y1o7A5?p1&vd_source707ec8983cc32e6e065d5496a7f79ee6 2D RPG Kit Documentation.pdf文档 1、2D RPG Kit Documentation文档 1.1、Scenes/TitleScreen 开始菜单工程 1.2、https://it…