无人机飞行控制系统技术,四旋翼无人机控制系统建模技术详解

物理建模是四旋翼无人机控制系统建模的基础,主要涉及到无人机的物理特性和运动学特性。物理建模的目的是将无人机的运动与输入信号(如控制电压)之间的关系进行数学描述。

四旋翼无人直升机是具有四个输入力和六个坐标输出的欠驱动动力学旋翼式直升机,从而可知该系统是能够准静态飞行(盘旋飞行和近距离盘旋飞行)的自主飞行器。与传统的旋翼式无人机相比,四旋翼无人机只能通过改变旋翼的 转速来实现各种运动。与传统的直升机那种具有可变倾斜角不同的是,四旋翼无人直升机具有四个倾斜角固定的旋翼,因此结构和动力学特性得到了简化。

图片

四旋翼无人机动态数学模型

任何系统的运动方程,都是针对某一特定的参考坐标系建立的。无人机在本质上属于多体动力学系统。无人机机身的运动可以看成六自由度的刚体运动,包含绕三个轴的转动和重心沿三个轴向的线运动。想要描述无人机的转动,须选用机体坐标系想要描述无人机的位置,须选用地面坐标系。

地面坐标系OXYZ

地面坐标系就是一种固定在地球表面的坐标系。首先在地面上选定一个原点 O,使得 X 轴指向地球表面的任意一个方向。Z 轴沿着铅直方向指向天,Y 轴在水平面内与 X 轴垂直,指向通过右手定则来确定。在忽略地球的自转运动和地球质心的 曲线运动时,该地面坐标系可看成是一个惯性坐标系。飞行器的位姿态、速度、角速度等都是相对于这一坐标系来衡量的。

图片

机体坐标系oxyz

坐标系固定在航飞行器上 并遵循右手法则的三维正交直角坐标系称为机体坐标系。原点 o 位于飞行器的质心处, x 轴在飞机的对称平面内,并且平行于飞行器的设计轴线,指向机头前 方。y 轴垂直于机身对称平面,并指向机身右方。z 轴的在飞行器对称平面内, 与 xoy 平面垂直,并指向飞行器的上方。

图片

欧拉角

机体坐标系与地面坐标系的关系可以通过三个欧拉角进行表示,分别是俯仰角θ、滚转角Φ和偏航角ψ。

图片

坐标转换矩阵

体坐标系和地面坐标系之间的转换满足下面关系式:

图片

图片

动力学模型的建立

根据牛顿第二定律,有:

图片

图片

动力学模型的建立

图片

图片

图片

由牛顿第二定律以及飞行器的动力方程,飞行器载体在参考坐标系下的位移方程为:

图片

由此可以得到位置坐标的线性位移方程:

图片

无人机应以动态坐标为基础进行动力学研究。由刚体的欧拉方程,绝对导数在动态坐标下可以表示为:

图片

其中(p,q,r分别为机体坐标系上的横滚,俯仰,偏航角速度):

图片

整理得到:

图片

图片

图片

由欧拉角方程可以飞行器的角运动方程:

图片

图片

图片

定义:

图片

图片

PID控制

PID控制是一种经典的闭环反馈控制方法,它广泛应用于多种工业控制系统。经典PID控制由比例环节、积分环节和微分环节三部分组成。控制系统以测量值y(t)和设定值r(t)之间的误差值e(t)作为输入量,通过对误差e(t)进行比例、积分和微分运算使控制系统输出量u(t)的误差最小化。

图片

图片

图片

由动力学方程可得俯仰角θ、滚转角Φ的理想值:

图片

图片

由姿态角PID后得到:

图片

图片

图片

在四旋翼无人机中,无人机的运动主要受到四个电机的旋转速度的影响。每个电机通过旋翼产生升力,进而影响无人机的位置和姿态。因此,物理建模需要建立无人机的位置、速度、加速度、角速度、姿态等运动参数与电机旋转速度之间的关系。

系统集成与验证

系统集成与验证是对四旋翼无人机控制系统建模效果的检验和确认,也是在实际应用中对无人机性能进行评估的重要环节。

在系统集成阶段,需要将物理模型、数学模型和控制算法进行整合,构建完整的四旋翼无人机控制系统。在这个过程中,需要考虑到无人机的硬件限制和实际应用环境,确保系统能够稳定运行。

验证阶段则是对控制系统性能的评估和测试。通过在仿真环境或实际飞行中对无人机的性能进行测试,可以评估控制算法的有效性和稳定性。同时,也可以通过调整控制参数来优化无人机的性能表现。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【前端素材】推荐优质后台管理系统网页Stisla平台模板(附源码)

一、需求分析 1、系统定义 后台管理系统是一种用于管理和控制网站、应用程序或系统的管理界面。它通常被设计用来让网站或应用程序的管理员或运营人员管理内容、用户、数据以及其他相关功能。后台管理系统是一种用于管理网站、应用程序或系统的工具,通常由管理员使…

kubectl 声明式资源管理方式

目录 介绍 YAML 语法格式 命令 应用yaml文件指定的资源 删除yaml文件指定的资源 查看资源的yaml格式信息 查看yaml文件字段说明 查看 api 资源版本标签 修改yaml文件指定的资源 离线修改 在线修改 编写yaml文件 创建资源对象 查看创建的pod资源 创建service服务对…

STL容器之string类

文章目录 STL容器之string类1、 什么是STL2、STL的六大组件3、string类3.1、string类介绍3.2、string类的常用接口说明3.2.1、string类对象的常见构造3.2.2、string类对象的容量操作3.2.3、string类对象的访问及遍历操作3.2.4、 string类对象的修改操作3.2.5、 string类非成员函…

【C++提高编程】

C提高编程 C提高编程1 模板1.1 模板的概念1.2 函数模板1.2.1 函数模板语法1.2.2 函数模板注意事项1.2.3 函数模板案例1.2.4 普通函数与函数模板的区别1.2.5 普通函数与函数模板的调用规则1.2.6 模板的局限性 1.3 类模板1.3.1 类模板语法1.3.2 类模板与函数模板区别1.3.3 类模板…

Redis源码安装教程来喽~

一.下载 Index of /releases/ [rootserver ~]# wget --no-check-certificate http://download.redis.io/releases/redis-6.2.7.tar.gz二.解压 [rootserver ~]# tar xf redis-6.2.7.tar.gz -C /usr/local/ [rootserver ~]# cd /usr/local [rootserver local]# ll 总用量 44K …

黑马JavaWeb课程中安装vue脚手架出现的问题

1 安装node.js 要想前端工程化,必须安装node.js,前端工程化的环境。 在成功安装node.js后, 修改全局包安装路径为Node.js安装目录, 修改npm镜像源为淘宝镜像源,这里出现第一个问题,视频中给的淘宝镜像为&…

Find My扫地机器人|苹果Find My技术与机器人结合,智能防丢,全球定位

扫地机器人又称自动打扫机、智能吸尘、机器人吸尘器等,是智能家电的一种,能凭借人工智能,自动在房间内完成地板清理工作。一般采用刷扫和真空方式,将地面杂物先吸纳进入自身的垃圾收纳盒,从而完成地面清理的功能。现今…

Vue.js大师: 构建动态Web应用的全面指南

VUE ECMAScript介绍什么是ECMAScriptECMAScript 和 JavaScript 的关系ECMAScript 6 简介 ES6新特性let基本使用const不定参数箭头函数对象简写模块化导出导入a.jsb.jsmain.js Vue简介MVVM 模式的实现者——双向数据绑定模式 Vue环境搭建在页面引入vue的js文件即可。创建div元素…

计算机网络——22TCP拥塞

TCP拥塞 TCP拥塞控制机制 端到端的拥塞控制机制 路由器不向主机有关拥塞的反馈信息 路由器的负担较轻符合网络核心简单的TCP/IP架构原则 端系统根据自身得到的信息,判断是否发生拥塞,从而采取动作 拥塞控制的几个问题 如何检测拥塞 轻微拥塞拥塞 控…

戏说c第二十六篇: 测试完备性衡量(代码覆盖率)

前言 师弟:“师兄,我又被鄙视了。说我的系统太差,测试不过关。” 我:“怎么说?” 师弟:“每次发布版本给程夏,都被她发现一些bug,太丢人了。师兄,有什么方法来衡量测试的…

STM32USART串口数据包

文章目录 前言一、介绍部分数据包两种包装方式(分割数据)HEX数据包文本数据包 数据包的收发流程数据包的发送数据包的接收固定包长的hex数据包接收可变包长的文本数据包接收 二、实例部分固定包长的hex数据包接收连接线路代码实现 可变包长的文本数据包接…

存储过程基本了解

文章目录 介绍存储过程示例1. 目的2. 输入参数3. 输出参数4. 执行逻辑5. 返回值6. 示例用法7. 注意事项 存储过程的关键字有哪些简单实操 介绍 存储过程是一组预编译的SQL语句,以及流程控制语句,封装在数据库服务器中并可以被重复调用。它们可以接收参数…

css实现居中

基础代码&#xff1a; <div class"box"><div class"content"></div> </div> css实现居中的几种方式&#xff1a; 1、flex布局&#xff08;水平垂直&#xff09; .box {width: 200px;height: 200px;background-color: pink;disp…

C#,K中心问题(K-centers Problem)的算法与源代码

1 K中心问题&#xff08;K-centers Problem&#xff09; k-centers problem: 寻找k个半径越小越好的center以覆盖所有的点。 比如&#xff1a;给定n个城市和每对城市之间的距离&#xff0c;选择k个城市放置仓库&#xff08;或ATM或云服务器&#xff09;&#xff0c;以使城市…

c语言经典测试题8

在c语言经典测试题6的第一题&#xff0c;大家是否想过可不可以将递归参数改为s呢&#xff1f;或许有的人已经试过了&#xff0c;但是发现好像不会有结果&#xff0c;其实是因为s为后置&#xff0c;先试用后加1&#xff0c;然而我们这个是在s出了函数之后才会运行加1操作&#x…

sqllabs第五关floor报错注入

实验环境sqllabs第五关 floor()报错注入的原因是group by在向临时表插入数据时&#xff0c;由于rand()多次计算导致插入临时表时主键重复&#xff0c;从而报错&#xff0c;又因为报错前concat()中的SQL语句或函数被执行&#xff0c;所以该语句报错且被抛出的主键是SQL语句或函…

《求生之路2》服务器如何选择合适的内存和CPU核心数,以避免丢包和延迟高?

根据求生之路2服务器的实际案例分析选择合适的内存和CPU核心数以避免丢包和延迟高的问题&#xff0c;首先需要考虑游戏的类型和对服务器配置的具体要求。《求生之路2》作为一款多人在线射击游戏&#xff0c;其服务器和网络优化对于玩家体验至关重要。 首先&#xff0c;考虑到游…

AI时代,我们需要什么能力?

AI 时代&#xff0c;一定会重构很多行业&#xff0c;也会重构人民的生活工作方式&#xff0c;那么 AI 时代&#xff0c;我们需要培养什么能力呢&#xff1f; 我们应该去做那些 AI 做不了的事情&#xff01;让 AI 成为我们的工具&#xff0c;助力我们更高效的解决问题&#xff…

JS利用Worker多线程大文件切片上传

在做前端上传时&#xff0c;会遇到上传大文件&#xff0c;大文件就要进行分片上传&#xff0c;我们整理下思路&#xff0c;实现一个分片上传&#xff0c;最终我们要拿到每一个分片的hash值&#xff0c;index 分片索引&#xff0c;以及分片blob&#xff0c;如下&#xff1a; 一…

曾桂华:车载座舱音频体验探究与思考| 演讲嘉宾公布

智能车载音频 I 分论坛将于3月27日同期举办&#xff01; 我们正站在一个前所未有的科技革新的交汇点上&#xff0c;重塑我们出行体验的变革正在悄然发生。当人工智能的磅礴力量与车载音频相交融&#xff0c;智慧、便捷与未来的探索之旅正式扬帆起航。 在驾驶的旅途中&#xff0…