PX4固定翼调试校准流程及实验相关问题记录分析

2023-05-16

pixhawk固定翼调试流程

对于px4固件,其对应选择的一般是qgroundcontrol地面站(APM一般使用Mission Planner)。本次调试的固件版本是1.6.5dev(最新的固件并不稳定,可能会有bug)。基本的调试流程如下:

地面站调试界面

  1. 刷固件,我们刷的是1.6.5dev版本
    这里写图片描述

  2. 选择Airframe,这里我们选择标准的固定翼
    这里写图片描述

  3. 遥控器的校准,这里我们选择的是model1(日本手(右手油门)——左手升降舵和方向舵,右手油门和副翼)
    这里写图片描述

  4. 传感器校准,这里需要注意的是固定翼的空速计,可以在Parameters中的Circuit Breaker中选择禁用相关的空速计和安全开关等
    sensor校准
    这里写图片描述
    选择禁用
  5. 遥控器模式设置,这里我们设置了Manual、Stabilized和Mission三种模式
    这里写图片描述
  6. 电调的校准,电调校准很重要,不做电调行程校准,飞机无法起飞
    这里写图片描述

这里补充一下遥控器和接收机的对频,在遥控器的LINK——SYSTEM——LINK,在LINK在闪烁的时候给接收机上电,接受的红灯变成绿色,对频成功。
这里写图片描述

相关链接:
px4固件和地面站相关资料


调试过程中的问题记录

本次调试的问题多半为硬件问题,首先遇到的是1,2,3,4通道没有输出(顺便说一下,飞控的主通道和舵机的接法是:针脚1=副翼,针脚2=升降舵,针脚3=油门,针脚4=方向舵)。测试接收机,发现接收机没有直接的输出,更换接收机后,发现依然不行,且指示灯出现时亮时不亮的情况,经过测试,是电源模块出了问题。在解决电源模块问题后,发现电机不转,但副翼可以动,将电源直接连电调,发现电调有问题(这里需要说明一下,如果电机出现慢慢的滴滴声,说明是没有PWM信号,但是有电源输入,如果出现很慢慢的滴滴声,则说明有PWM,但是没有电源输入)。在解决所有硬件问题后,在第二天的使用中,发现调试好的固件又出问题了,经过重重排除,最终发现是PX4固件不稳定的问题,于是没有刷最新的固件,而是刷了之前下好的1.6.5dev版本的固件,所有问题终于全部解决。这里也需要说明一下PX4指示灯的各种含义:
指示灯含义


飞行试验相关问题记录

本次进行了固定翼的Manual、Stabilized、Mission三种模式的测试。其中Mission模式测试了航点飞行。主要出现以下问题:

  1. 飞机副翼、方向、升降舵面偏角过大,导致在操纵方向舵与升降舵时,多次出现舵面失速导致飞机姿态发生剧烈变化。对于这个问题,一个原因是飞机本身问题,舵面过大,不易于操作,另外建议在地面站Manual模式下设置各个舵面的最值,使舵面偏转角度正负不超过30°
  2. 飞机进入自稳模式后,机动性能很差,在关键时刻无法按飞行员的意识及时将飞机改出危险的境地。对于这个问题,需要调整飞控在增稳模式下对飞机姿态的限制,增大飞机可使用俯仰角与滚转角,提高其在增稳模式下的机动性,为了更好的控制,需要对PID值进行调整
  3. 在进行Mission模式时,只能切一次Mission模式,如果后面需要再进行航迹飞行,只能重新load航点信息,这个和旧的代码不一样,旧的代码可以进行多次的Mission模式切换。这个在操作过程中需要格外注意,不可胡乱切Mission模式,这样很可能造成飞机乱飞的情况。
  4. 在测试过程中,发现飞机偏离航迹很远,对于这个问题,经过查资料和询问,很可能是航点设置有问题,航点之间的距离一般有100m左右,每个点的loiter radius为50m,在航点50m之类,飞机认为是到达航点,在代码中会有一个accept radius参数。在测试中,发现高度误差较大,会有1m左右,对于这个定位不准的问题,我们建议使用差分GPS来获得更精确的定位,这样也有利于航迹规划。

后续的研究的一些个人看法

对于还未做的自动起飞和降落问题,经查找,多半是关于APM的自动起飞降落的参数设置:APM固定翼自动起飞,对于这个问题,经过在一些飞控群里的交流,现在可以得到的资料如下:

  1. 对于takeoff点和home点,一般设置二者的距离为100m。takeoff点的角度设置在10~15度。对于降落过程中,需要设置拉飘的角度(拉飘:一般的降落时直接俯冲,但达到某个高度的时候,需要拉升降舵,使飞机变成抬头的姿态来增大阻力,从而降低飞机速度,安全降落)。这个角度在10度左右。
    这里写图片描述
  2. 以下是一些收集到的关于自动起飞和降落的参数设置资料:
    自动起飞参数设置
    对于上面的RWTO_ATRSPD_SCL参数,原来的是130%,这里之所以是30%,是因为作者本人对PX4原生固件代码做了一些修改。
    这里写图片描述
    以上是自动降落的参数设置,其中FW_L1_DAMPING和FW_L1_PRERIOD是L1算法的两个参数,和航点关系很大,可以作进一步研究。
  3. 对于后续的研究代码建议是,主要研究以下代码:
    src/Firmware/src/modules/navigator/mission.cpp
    src/Firmware/src/modules/dataman/dataman.c
    src/Firmware/mavlink/include/mavlink/v2.0/common/mavlink_msg_mission_item.h
    src/Firmware/mavlink/include/mavlink/v2.0/common/mavlink_msg_mission_item_int.h
    src/Firmware/src/lib/runway_takeoff/RunwayTakeoff.cpp
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PX4固定翼调试校准流程及实验相关问题记录分析 的相关文章

  • sap上传excel文档字符限制处理

    abap中有多个函数处理上传的excel文档中的数据 xff0c 记录数据的信息 xff08 行 列 值 xff09 如 xff0c 函数KCD EXCEL OLE TO INT CONVERT xff1a data lt data in
  • ffmpeg部署和springboot使用

    视频存储部署 一 环境安装 1 1 yasm安装 在编译ffmpeg时 xff0c 执行 configure xff0c 报出了如下错误 xff1a nasm yasm not found or too old Use disable x8
  • 【docker】安装clickhouse

    一 联网安装clickhouse 1 为了方便安装 xff0c 将clickhouse的工作目录和数据目录都在同一个目录下 xff0c 在home下创建目录 mkdir clickhouse cd clickhouse 创建日志 配置文件
  • springboot整合mybatis-plus、clickhouse、mysql多数据源

    springboot的多数据源有多种方式 xff0c 本文按照指定不同dao mapper xml的方式来实现访问不同的数据源 这样的好处是不用注解去切换数据源 1 引入驱动 span class token generics span c
  • linux中的oracle启动和关闭

    一 启动数据库实例 span class token number 1 span 切换到oracle用户 su span class token operator span oracle span class token number 2
  • BigDecimal计算工具类

    方便以后大家使用 span class token keyword import span span class token namespace java span class token punctuation span math spa
  • 安装、使用mongodb踩过的坑

    轻松一下 没用分布式架构之前 xff0c 你只有一个问题 xff1a 并发性能不足 用了分布式架构 xff0c 多出了一堆问题 xff1a 数据如何同步 主键如何产生 如何熔断 分布式事务如何处理 使用mongodb踩过的坑 今天对安装 x
  • JS使用总结:简单标签赋值和取值:span等;实时触发事件

    JS使用总结 简单标签赋值和取值 xff1a span等 xff1b 实时触发事件 xff1b 了解一下简单标签赋值和取值实时触发事件代码 了解一下 作为后台开发 xff0c 今天使用了前端的技术 xff0c 做一个总结 xff1b 包括两
  • FreeRtos的笔记 (一)

    FreeRtos的笔记 一 一 前言 linux是分时系统 和 RTOS时实操作系统区别 RTOS时实操作系统 当外界事件或数据产生时 xff0c 能够接受并以足够快的速度予以处理 实时操作系统是保证在一定时间限制内完成特定功能的操作系统
  • UCOSII操作系统(一)--基础知识

    前言 比较主流的操作系统有UCOSII FREERTOS LINUX等 参考书籍 xff1a 嵌入式实时操作系统 COS II原理及应用 嵌入式实时操作系统uCOS II 邵贝贝 第二版 1 操作系统的作用 xff1a 操作系统是计算机硬件
  • ORB SLAM2 编译&运行

    1 依赖安装 xff1a 1 xff09 安装 GLEW xff1a sudo apt get install libglew dev 2 xff09 安装 libuvc xff1a git clone https github com k
  • SAP 一句话入门之SD

    SD是Sales and Distribution的简称 在SAP系统中 xff0c 销售与分销模块处在供应链下游 xff0c 关注从客户订单到向客户收款的全过程 SD模块中的Sales好理解 xff0c 而Distribution却容易被
  • realsense-ros安装

    一 realsense ros安装 1 Create a catkin workspace mkdir p realsense rosws src cd realsense rosws src catkin init workspace 2
  • thinkphp页面请求时间超过40S报404错误解决办法

    最近在写一个thinkphp项目的时候 xff0c 发现Ajax从后端请求数据时间比较长 xff0c 大概需要45秒左右 xff0c 但是一旦请求时间超过40s xff0c 页面就会超时404了 xff0c 一开始以为是ajax请求时间不能
  • C语言宏定义详解

    宏定义引入 源程序在编译之前 xff0c 会先进行预处理 预处理并不是C语言编译器的组成部分 xff0c 不能直接对它们进行编译 经过预处理后 xff0c 程序就不再包括预处理命令了 xff0c 最后再由编译程序对预处理之后的源程序进行编译
  • C语言枚举详解

    枚举的引入 枚举是C语言中的一种基本数据类型 xff0c 它可以让数据更简洁 xff0c 更易读 枚举语法定义格式为 xff1a enum 枚举名 枚举元素1 枚举元素2 注意 xff0c 各元素之间用逗号隔开 注意 xff0c 末尾有分号
  • STC-ISP使用指南

    该软件无需安装 xff0c 下载后打开直接用 本软件是专门给STC系列单片机下载烧录程序的 xff0c 并不能适用于ARM系列的单片机 界面介绍 xff1a 打开后的界面如下 xff1a 左边的部分一般是用来下载程序的 xff0c 右面一般
  • STM32前言知识总结

    目录 关于STM32 STM32F1 存储器 位带操作 三种启动模式 低功耗模式 复位 时钟系统 STM32库 仿真器和调试器 注 xff1a 本文大部分内容来自于STMCU官网以及STM32数据手册 STM32使用的是ARM公司的Cort
  • STM32的标准库及其使用

    单片机的开发工作量 xff0c 主要集中在两个地方 xff0c 一是调通各种外设 xff0c 二是实现产品功能 像较高级的语言 xff0c 比如c 43 43 java python等 因为将底层操作进行了封装 xff0c 所以只需要集中关
  • PADS(一)简介、安装与基本使用

    PADS是一款制作PCB板的软件 PADS包括PADS Logic PADS Layout和PADS Router PADSLayout xff08 PowerPCB xff09 提供了与其他PCB设计软件 CAM加工软件 机械设计软件的接

随机推荐

  • 电路中的常见符号总结

    嵌入式如何阅读原理图和数据手册 路溪非溪的博客 CSDN博客 硬件原理图常见缩写 EN xff1a Enable xff0c 使能 CS xff1a Chip Select xff0c 片选 RST xff1a Reset xff0c 重启
  • 嵌入式常见英文2500词总结

    目录 嵌入式硬件常见英文总结 嵌入式软件常见英文总结 电子技术专业英语 嵌入式硬件常见英文总结 block diagram xff0c 框图 figure xff0c 图形 xff0c 图标 processor xff0c 处理器 Mirr
  • 我的2013—弃金融IT,从SAP业务

    我的2013 xff0c 是动荡的一年 xff1b 这一年 xff0c 我跳巢了 xff1b 这一年 xff0c 我换行业了 xff1b 这一年 xff0c 我离开了生活5年的长春 xff0c 来到成都 xff1b 这一年 xff0c 我放
  • STM32实战总结:HAL之电机

    电机基础知识参考 xff1a 51单片机外设篇 xff1a 电机 路溪非溪的博客 CSDN博客 无刷电机和有刷电机 先详细了解有刷电机 xff1a 带你了解 xff08 有刷 xff09 电机工作原理 哔哩哔哩 bilibili 再详细了解
  • F407标准库之时钟系统

    主要参考正点原子数据手册和源码资料等 第19讲 STM32时钟系统精讲 哔哩哔哩 bilibili 此处记录较为重要或者较易出错的一些遗漏之处 xff0c 作为补充 一般而言 xff0c 时钟越高 xff0c 速度越快 xff0c 但同时抗
  • F407标准库之定时器

    主要参考正点原子数据手册和源码资料等 第31 通用定时器基本原理讲解 哔哩哔哩 bilibili 此处记录较为重要或者较易出错的一些遗漏之处 xff0c 作为补充 定时器中断 定时器相关的库函数主要集中在固件库文件 stm32f4xx ti
  • F407标准库之基础知识

    关于STM32的结构体封装 在STM32中 xff0c 有两种容易弄混的结构体封装 第一种是系统对底层寄存器的封装 结构体类型定义好之后 xff0c 是不会分配地址空间的 xff0c 此时只是个类型定义 xff0c 之后使用的时候 xff0
  • c++架构师需要掌握哪些知识

    目录 本文技术梳理主要针对于三类人群的技术需求 c c 43 43 Linux服务器端开发岗位分析 经常被问到的问题 xff1a 技术体系建立的好处 c c 43 43 Linux服务器开发技术学习路径 一 精进基石 二 高性能网络设计 三
  • cmake:使用execute_process调用shell命令或脚本

    CMake可以通过execute process调用shell命令或者脚本 xff0c 其原型如下 xff1a execute process COMMAND lt cmd1 gt args1 COMMAND lt cmd2 gt args
  • 树莓派3B+上安装ubutun mate 18.04.2

    1 准备16G以上储存卡 xff0c 读卡器 2 准备两个软件 xff1a SDCardFormatter Win32DiskImager分别用于储存卡格式化和写入系统文件 链接如下 xff1a 链接 xff1a https pan bai
  • linux应用编程--思维导图

    思维导图软件是xmind 下载源文件点击打开链接
  • 深度学习中Batch、Iteration、Epoch的概念与区别

    在神经网络训练中 xff0c 一般采用小批量梯度下降的方式 Batch Epoch Iteration 就是其中的重要的概念 我们要理解懂得它们都是什么以及它们之间的区别 1 Batch 每次迭代时使用的一批样本就叫做一个Batch xff
  • STM32使用CubeMAX配置的串口中断接收方法

    STM32使用CubeMAX配置的串口中断接收方法 目录 1 定位串口中断发生的地方 2 处理串口中断接收的流程是 xff1a xff08 1 xff09 初始化串口 xff08 2 xff09 在main中第一次调用接收中断函数 xff0
  • SAP 寻找增强点的方法

    SAP中寻找增强的实现方法 SAP 增强已经发展过几代了 xff0c 可参考 SAP 标准教材 BC425 和 BC427 简单的说SAP的用户出口总共有四 代 1 第一代 基于源代码的增强 SAP提供一个空代码的子过程 xff0c 在这个
  • SNMPV3的实现原理

    在snmp发展到V3版本后 xff0c 把snmp的安全性提升到一个新高度 xff0c 这同时也带来了实现上的复杂性 在02年 xff0c 03年我都曾经想进一步的了解它的实现 xff0c 但都没什么进展 这次在实现Csnmp的过程中 xf
  • ubuntu更新错误:dists/artful/main/binary-arm64/Packages 404 Not Found

    Failed to fetch http archive ubuntu com ubuntu dists artful main binary arm64 Packages 404 Not Found IP 91 189 88 162 80
  • 个人公众号开通啦!!!!

    已经开通了个人微信公众号 xff1a 编程时光机 以后会在公众号里和大家分享知识和生吞活 xff0c 欢迎大家关注 xff01 xff01
  • 小白学AI系列(一)-- AI简史

    经过一段时间的酝酿 xff0c 小白学AI系列也正是开始了 xff01 小编将从三个阶段和大家一起入门人工智能 xff0c 掌握常用机器学习算法和数据分析技巧 小编专业为数据融合方向 xff0c 也曾接触过机器学习 xff0c 但由于人工智
  • 小白学AI系列(二) -- Python模块和函数

    原文地址 xff1a 小白学AI系列 xff08 二 xff09 Python模块和函数 今天的内容是带大家学习解释性语言 Python 小编有学过一段时间的C 43 43 和Matlab 相对于二者而言 xff0c Python是作为学习
  • PX4固定翼调试校准流程及实验相关问题记录分析

    pixhawk固定翼调试流程 对于px4固件 xff0c 其对应选择的一般是qgroundcontrol地面站 xff08 APM一般使用Mission Planner xff09 本次调试的固件版本是1 6 5dev xff08 最新的固