PX4飞行测试

news2024/11/26 10:05:31

文章目录

  • 前言
  • 一、首次飞行指南
  • 飞行入门
    • 解锁飞机
    • 起飞
    • 降落
    • 飞行控制/命令
    • 辅助飞行
  • 任务飞行
    • 规划任务
    • 设置机体航向
    • 设置航点/转弯半径
  • 地理围栏
    • 故障保护地理围栏
    • 地理围栏规划
  • 安全点(集结点)
    • 创建/定义安全点
  • 地形跟随/保持
    • 地形跟随
    • 地形保持

前言

本节包含有关飞行(完全配置过的)自动驾驶仪控制机体的主题。 它涵盖了(自动驾驶仪辅助)手动飞行和完全自主飞行的任务规划。

一、首次飞行指南

学习飞行是很有趣的! 这些指南旨在确保您的首次飞行体验愉快、有教育意义且安全。

选择合适的地点
为您的第一次飞行选择正确的位置至关重要。 要注意的主要事项是:
确保空间是开放的。 附近没有高大的树木、山丘或建筑物,因为它会影响 GPS 接收。
确保100米内没有人。
确保在 100 米范围内没有您不应该撞到的东西 - 没有房屋、建筑物、汽车、水、玉米地(很难在其中找到无人机)。

注解 虽然 100 米的间距已经是一个很好的“经验值”,但您还应该确保遵守您所在地区的飞行规定。

带上专业人士
带上有经验的人进行第一次飞行。 让他们帮助您完成飞行前检查,并让他们在出现问题时进行干预!

做好计划
起飞前规划好航线。 确保您知道整条路线以及机体将在何处/如何降落。

减少损失
使用您的无人机损坏财产或伤害人员可能会产生重大的法律和财务后果(远远超过无人机本身的价值)。
无人机应始终在没有障碍物或人员的安全区域内手动飞行,并且必须始终清晰可见。
如果您开始失去对机体的控制,并且无法恢复控制,请尽快在空旷的地方坠落。

注解 在遥控器上设置返航或刹车开关很有用。 这使您在必要时可以立即返回或坠毁您的无人机。

飞行入门

本节介绍了在手动或自动驾驶辅助飞行模式下使用遥控器操控机体的基础知识。

注解在您第一次飞行之前,您应该阅读我们的首次飞行指南。

解锁飞机

在操控飞机之前,必须先进行解锁。这将为所有电机和驱动器供电;在多轴飞行器上,它将启动螺旋桨转动。
如果设置了安全开关,先解锁安全开关,然后对您的机体使用解锁命令 - 将油门杆放在右下角。您也可以在QGroundControl中进行解锁。

提示: 飞机在校准/配置完成之前无法解锁。车辆状态通知(包括车载LED、音频通知和QGroundControl)可以告诉您车辆何时准备好飞行(并在车辆未准备好飞行时帮助您找出原因)。
如果您解锁后过长时间没有起飞,机体将( 默认情况下)自动加锁(关闭电机)! 这是一种安全措施,可确保机体在没有被使用时恢复到安全状态。

VTOL机型只能在多轴模式下解锁(默认-可以使用CBRK_VTOLARMING 启用固定翼飞机模式下解锁)。

起飞

最简单的起飞方式(在机体解锁后)是使用自动起飞(takeoff)模式。 通常可以通过遥控器拨杆开关或地面站触发。

多旋翼(以及多旋翼模式下的垂直起降)飞行员可以通过启用位置模式解锁飞机,然后将油门杆提高到62.5%以上来手动起飞。高于此值,所有控制器都被启用,无人机将输出悬停所需的油门值(MPC_THR_HOVER)。

注解 如果机体在解锁后过长时间没有起飞,无人机将会加锁(使用COM_DISARM_PRFLT调整超时时间)。
如果起飞时出现问题,故障保护将自动停止发动机。

降落

最简单的降落方法是使用自动降落或者返航模式。
对于多轴飞行器(和多轴模式下的 VTOL),飞手可以通过向下推油门杆手动降落,直到机体降落加锁。

请注意,默认情况下,机体在降落后会自动加锁:通过COM_DISARM_LAND来设置降落后自动加锁的时间(或完全禁用它)。

通过将油门杆放在左下角可以手动加锁。

注解 如果您在降落期间看到车辆“抽搐” (电机不停的在关闭打开状态快速切换) 这可能是由于
降落检测器配置不当(特别是MPC_THR_HOVER设置不当)造成的,可以将此参数改小。

飞行控制/命令

所有飞行,包括起飞和降落,都使用 4 个基本命令进行控制:横滚、偏航、俯仰和油门。

遥控器基础命令
为了控制您的飞机,您需要了解基本的横滚、偏航、俯仰和油门命令如何影响三维空间中的运动。 这取决于您是控制像固定翼一样向前飞行的飞机,还是像多轴这样的“悬停飞机”。

悬停飞机
悬停飞行器(多旋翼,直升机,VTOL悬停模式)到动作命令响应如下所示:

多旋翼基本动作

俯仰 => 前后
横滚 => 左右
偏航 => 围绕机体中心左/右旋转。
油门 => 改变高度

前飞飞机

向前飞行的飞机(固定翼、固定翼模式的VTOL)对动作命令作出如下反应:

固定翼基本动作
俯仰 => 上升/下降.
横滚 =>左右倾和转弯
偏航 => 左/右旋转和转弯。
油门 =>改变前飞速度

注解 对于飞机的最佳转弯又称为协调转弯,需同时操作滚动和少量偏航。 这个动作需要一定的经验!

辅助飞行

即使了解了机体是如何控制的,全手动模式的飞行也是棘手的。 新用户应该配置他们的遥控器来使用辅助飞行模式,在这种模式下自动驾驶仪自动增稳。

强烈建议新手使用以下三种模式:

自稳模式-机体很难侧翻,并且如果摇杆被释放飞行器将趋于平稳(但不保持位置)。
高度模式 - 爬升和下降由一个最大速率来控制。
位置模式 - 当摇杆被释放机体将保持当前位置(位置定点,不会随风漂移)。

任务飞行

规划任务

手动规划任务非常简单:
切换到任务视图
在左边的工具栏选择Add Waypoint 按钮
点击地图添加航点。
使用右侧的航点列表修改航点参数和类型。底部的高度指示器提供每个航点的相对高度。
完成后,单击上传按钮(右上角)将任务发送到飞机。
您还可以使用Pattern自动创建测量栅格。

更多信息参考:QGC地面站使用教程
在这里插入图片描述

设置机体航向

如果设置,多旋翼飞行器将调整偏航以指向目标航路点中设定的航向值(对应于MAV_CMD_NAV_waypoint.param4)。如果未明确设置目标航路点的航向(param4=NaN),则飞机偏航将指向参数MPC_yaw_MODE中指定的航向。默认情况下,是指向下一个航点。

不能独立控制偏航和行驶方向的机型将忽略偏航设置(例如固定翼)。

设置航点/转弯半径

航点/转弯半径定义了车辆认为已到达航路点的半径,并将立即切换到(并开始转向)下一个航路点。

对于多旋翼无人机,使用参数NAV_ACC_RAD调整航点半径。 默认情况下,半径设置的很小以确保多旋翼无人机通过航路点上方,但可以增加半径以创建更平滑的路径,这时无人机在到达航路点之前便开始转弯。

下图显示了相同任务以不同的航点半径参数飞行的轨迹:
在这里插入图片描述

转弯速度是根据航点半径(=转弯半径)和最大允许速度和加速度自动计算的。

任务上传后,切换到飞行视图。 任务将显示为一条航线,这样可以方便跟踪(在此视图中无法修改航线)。滑动底部按钮可以开始任务
在这里插入图片描述

地理围栏

围栏是一个虚拟边界,用于定义机体可以在哪些地方行驶。 围栏可用于防止机体飞出遥控器的范围,或进入不安全或受限制的空域。

PX4提供了两个独立的机制来指定围栏:

一个是基本的“故障保护”地理围栏,定义了一个简单的圆柱体。
一个是可以使用围栏规划(QGroundControl)定义更复杂的几何图形。

地理围栏适用于所有模式,包括任务和手动飞行。

故障保护地理围栏

故障保护围栏定义了一个圆心在home点的圆柱,它具有指定的最大半径和高度。
设置中还包括越界时的故障保护动作。 可能只是一个警告通知,但更常见的是机体会立即返回一个安全位置。

请添加图片描述

地理围栏规划

PX4 支持由多个圆形和多边形区域组成的复杂地理围栏边界,这些区域可以定义为禁出或禁入区域。
围栏规划
在这里插入图片描述打开 QGroundControl > Plan View.
在这里插入图片描述

选择规划类型为Fence。 这将显示地理围栏编辑器。
选择多边形围栏或圆形围栏按钮,可将添加所需基本类型的围栏到地图中。 这也在编辑器中增加了此类围栏的条目。
在地图上调整围栏的形状和位置。
围栏中心的圆点可以用来调整围栏的位置。
边界上的圆点可以用来调整半径。
角(顶点)上的圆点可以用来改变多边形的形状。 点击线段中间可以在两个顶点中添加新的顶点。
围栏编辑器可以设置围栏是禁出或禁入区域,还可以通过(编辑单选按钮)选择一个围栏来编辑或者通过删除按钮来删除。
可添加任意数量的围栏
完成后,点击(右上角) 上传 按钮向车辆发送围栏(连同集结和任务)。
在围栏故障保护中需要设置越界动作。

安全点(集结点)

安全点是返航模式目的/降落点。 启用后,机体将从HOME点、任务降落点或安全点选择最近的返航目的地。

创建/定义安全点

在QGroundControl中创建安全点(也称为“集结点”)。
在这里插入图片描述
总结:
打开 QGroundControl > Plan View
在 规划编辑器 (屏幕右侧) 选择 集结 标签/按钮。
选择工具栏(屏幕左侧)上的 Rally Point 按钮 。
在地图上点击任意位置来添加集结/安全点。
规划编辑器显示并允许您编辑当前(在地图上显示为绿色R)的集结点。
您可以选择另一个(在地图上显示为橙色/黄色的R)集结点来进行编辑。
选择需要上传按钮将集结点(连同任务和地理围栏)上传到机体。

使用安全点
默认情况下不启用安全点(有许多不同的返回模式类型)。
启用安全点的方法:
使用 QGroundControl 参数编辑器设置参数:RTL_TYPE=3。

地形跟随/保持

PX4支持带有距离传感器的多旋翼和多旋翼模式下的垂直起降飞行器进行地形跟随和地形保持。

PX4不“原生”支持任务模式中的地形跟踪,QGroundControl可用于定义近似跟随地形的任务(这只是根据地形上方的高度设置航路点高度,其中航路点处的地形高度是从地图数据库中获得的)。

地形跟随

地形跟随使车辆在低空行驶时能够自动保持地面以上相对恒定的高度。这有助于避免障碍物,并在飞越不同地形时保持恒定高度(例如用于航空摄影)。

提示
该功能可以在位置和高度模式下启用,在带有距离传感器的多旋翼和多旋翼模式下的垂直起降飞行器上启用。
当启用地形跟踪时,PX4使用EKF估计器的输出提供高度估计值,并使用估计的地形高度(使用另一个估计器从距离传感器测量值计算)提供高度设定值。随着离地距离的变化,高度设定值会调整以保持离地高度恒定。
在较高的高度(当估计器报告距离传感器数据无效时),飞行器切换到高度跟随,并且通常使用绝对高度传感器获取高度数据,在平均海平面(AMSL)以上接近恒定的高度飞行。

注解
更准确地说,车辆将使用此处定义的可用选定高度数据源。
通过将MPC_ALT_MODE设置为1,可以启用地形跟踪。

地形保持

地形保持使用距离传感器来帮助车辆在低空水平静止时,在高度控制模式下更好地保持离地恒定高度。这使得车辆能够避免由于气压计漂移或螺旋桨气流造成的过度气压计干扰而导致的高度变化。

注解
该功能可以在位置和高度模式下启用,在带有距离传感器的多旋翼和多旋翼模式下的垂直起降飞行器上启用。

当水平移动(速度>MPC_HOLD_MAX_XY)或高于距离传感器提供有效数据的高度时,车辆将切换到高度跟随。

通过将MPC_ALT_MODE设置为2来启用地形保持。

注解
地形保持与地形跟随类似。它使用EKF估计器的输出来提供高度估计,并使用估计的地形高度(使用单独的单状态地形估计器从距离传感器测量值计算)来提供高度设定点。如果到地面的距离因外力而改变,则高度设定点会调整以保持地面以上的高度不变。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

虚拟主播也带货?直播电商的变与不变

5月6日晚,海外虚拟主播vox在B站开启了中国直播首秀。从最终数据来看,直播1.7小时,营收111万人民币,当晚还登上平台热门首位,这样的直播吸金能力,让不少明星都望尘莫及。 更值得关注的是,直播间…

Matlab:表达式

Matlab:表达式变量数字矩阵运算符数组运算符函数表达式示例变量 与大多数其他编程语言一样,MATLAB 语言提供数学表达式,但与大多数编程语言不同的是,这些表达式涉及整个矩阵。 MATLAB 不需要任何类型声明或维度说明。当 MATLAB …

PyCharm 这40个使用技巧真棒

大家好,今天分享 PyCharm 40个使用技巧,内容有点长,喜欢欢迎收藏、分享、点赞。 废话不多说。我们开始吧! 文章目录技术提升第一章:运行调试篇1\. 通过指定参数,执行程序2\. 程序结束了,照样可…

Vue 3 属性绑定细节

在ButtonDemo中默认会把传给这个组件上的所有事件,都传递给Button中的最外层的元素 不管这个最外层的元素是什么!比如下图:在button外面还有一个div,那么传递给最外层的就应该是div,而不是button 最外层为div 想让组件的某一个部分,点击时被触发click事件 现在传递给最…

LeetCode-764. 最大加号标志【动态规划,二维数组】

LeetCode-764. 最大加号标志【动态规划,二维数组】题目描述:解题思路一:动态规划。用一个n*n的数组记录每个点上下左右方向上为1的最小值。最后ans返回数组中最大的加号。解题思路二:优化1。解题思路三:0题目描述&…

word制作多个单位联合发文的文件头

一、前言 word制作多个单位联合发文的文件头,好像不难。但是做起来,却发现,自己的只是储备还是不够,居然花费了1个多小时才搞定....哎 二、遇到问题 开始思路是想使用【分栏】来操作,但是不得其法,搞了一…

驱动开发基础知识

文章目录记录驱动开发前的知识储备工作一、驱动开发环境搭建二、驱动开发框架(重点:WDF框架)1、前世今生(1)Vista简介(2)发展历史2、基于框架的驱动程序的 WDM(1)驱动程序…

linux(1.nginx基础 2.使用Nginx负载均衡及动静分离)

一.nginx基础 目录 1. Nginx使用场景2. Nginx中的进程 2.1 Nginx中的多进程模型2.2 多进程模式的优点:2.3 缓存3. Ngnix的负载均衡策略 3.1 轮询法3.2 加权轮询3.3 原地址哈希3.4 最小连接数法3.5 Fair3.6 url_hash3. Nginx配置文件4. Nginxtomcat 集群示例 4.1 下…

c++学习-STL常用函数

第八部分-STL常用函数 5.1 常用遍历算法 5.1.1 for_each 5.1.2 transform 5.2 常用查找算法 5.2.1 find 5.2.2 find_if 5.2.3 adjacent_find 面试题中如果出现查找相邻重复元素,记得用stl中的adjacent_find算法 5.2.4 binary_search 5.2.5 count 5.2.6 count_if 5.…

【双十一特辑】爱心代码(程序员的浪漫)-李峋

前言 最近《点燃我温暖你》中李峋的爱心代码超级火,看着特别心动,这不,光棍节快到了,给兄弟们教学一波爱心代码,赶在双十一前表白,让这个双十一不在是孤单一个人!目录 前言 C语言简易爱心代码…

final 关键字 —— 限制继承、限制虚函数重写

final 关键字有两个作用,一个是限制继承,一个是限制重写。 目录 1、限制继承 (1) 基类的构造函数设为私有 (2) 基类类名后面加上 final 关键字修饰 2、限制虚函数重写 1、限制继承 限制继承有两种方式,一种是将基类的构造函数设为私有&am…

谷粒商城-基础篇(详细流程梳理+代码)

文章目录前言一、项目环境搭建1.1、安装virtualbox以及vagrant1.2、Docker安装MySQL与Redis1.3、前后端开发工具统一配置1.4、Git工具安装与配置1.5、Gitee创建仓库与IDEA导入1.6、构建微服务模块1.7、编写.gitignore文件(忽略上传gitee文件配置)1.8、数…

【云原生之K8s】 K8s资源控制及探针检查

文章目录一、资源限制1.资源限制的使用2.request资源(请求)和limit资源(约束)3.Pod和容器的资源请求和限制4.官方文档示例5.资源限制实操5.1 编写yaml资源配置清单5.2 释放内存(node节点,以node1为例&#…

昨晚,我用python帮学妹P证件照自拍,然后发现。。。

人生苦短,我用Python前因后果先上效果准备工作证件照尺寸调整证件照背景调整各种背景颜色图片完整代码结尾最后前因后果 事情是这样的 晚上我正在聚精会神写代码(打游戏~) 突然,收到学妹给我发来的消息 还有一张自拍照 而且是…

基于stm32单片机的超声波测距显示倒车雷达提醒报警系统Proteus仿真

资料编号:145 下面是相关功能视频演示: 145-基于stm32单片机的超声波测距显示倒车雷达提醒报警系统Proteus仿真(源码原理图仿真论文)设计内容 本次嵌入式课程设计综合实验的内容为倒车测距系统。以proteus keilU5为模拟硬件基础…

Android studio中控件TextView学习

1、TextView 基础属性 layout_ width; 组件的宽度layout. _height: 组件的高度id: 为TextView设置- -个组件idtext; 设置显示的文本内容textColor: 设置字体颜色textStyle: 设置字体风格,三个可选值: n normal(无效果),bold(加粗), italic(斜…

Springboot @Async 失效的坑

异步应用场景 为了提高接口的响应性能,当业务非常复杂的情况下,可以将一部分跟业务关联性不是特别强的逻辑进行异步处理。如日志记录、短信发送、增加积分等。通常而言会将此类业务逻辑通过异步的方式进行处理,从而加快接口的响应速度&#…

【HMS Core】集成多种HMS Core服务,让APP成为旅行小助手

1 介绍 Duration: 5:00 总览 旅行者能够使用该应用在华为地图上搜索附近名胜景点、游玩去处或是附近ATM、餐馆和医院等。 服务场景描述 Tourism应用通过集成机器学习服务的地标识别能力,能够提供旅行过程所有必要的信息,还可以识别图片中的地标建筑。…

[Python]字符串常用操作与方法

前言 系列文章目录 [Python]目录 文章目录前言1. 字符串的常用操作1.1 格式化输出1.1.1 %1.1.1.1 语法1.1.1.2 字符串格式操作符(%)的格式化符号%c:以字符的形式格式化输出整数或长度为1的字符串%r:将数据格式化为供解释器读取的形式%s:将数据…

一文带你精通Git

一文带你精通git回顾git对象树对象提交对象重新认识git 基本命令git 高层命令分支(特别重要)分支冲突&分支合并git 存储git 后悔药远程分支和团队协作远程仓库冲突回顾 博主之前直接已经写过了git的相关基础博客了,老铁可以自行去查看。本篇文章的目…