PX4无人机调试技术文档

2023-05-16

PX4无人机调试技术文档

一、硬件部分

1.调整电机序号、转向以及螺旋桨姿态,螺旋桨较高一侧为迎风侧,并使四个桨处于同一平面。

(下图为X型四旋翼无人机DEMO)
在这里插入图片描述
2.正确接线。

二、QGroundControl部分

(一).机架Airframe

(!!!更改之后需要"Apply and Restart "!!!)

1.1 在工具栏上选择 Gear图标 (载具设置),然后在侧边栏选择Airframe

1.2 先选择你的机架符合的大致分类,然后在下拉菜单中选择最匹配的机架类型。

1.3 点击Apply and Restart。 看到提示后点击 Apply 保存设置并重启载具 (飞机)。

(二).传感器Sensors

2.1磁罗盘Compass调试

2.1.1 选择一个远离磁场及金属品的位置进行调试。

2.1.2 在工具栏选择Gear图标 (机体设置),然后在侧边栏选择 Sensors

2.1.3 选择Compass按钮。

2.1.4 单击OK开始校准。

2.1.5

(1)将车辆置于红色(不完整)所示的任何方向并保持静止。

(2)一旦提示(方向图像变为黄色),则在任一/两个方向上围绕指定轴旋转车辆。

(3)完成当前方向的校准后,屏幕上的相关图像将变为绿色。

(4)对所有车辆方向重复校准过程。

2.2陀螺仪Gyroscope调试

2.2.1 选择Gyroscope按钮。

2.2.2 将飞机稳定在一个平面。

2.2.3 单击OK开始校准。

2.2.4 等待进度条完成。

2.3加速度计Accelerometer调试

2.3.1 点击 Accelerometer传感器按钮。

2.3.2 点击OK校准。

2.3.3 按照屏幕上的 images 引导,将机体翻转到指定位置。 看到 (图示位置变成黄色) 的提示,握紧机体并保持静止。 该位置标定完成后,屏幕上的相应图示将变成绿色。

2.3.4 在机体的所有方向上重复校准步骤。

2.4水平Level Horizon校准

2.4.1 点击 Level Horizon 按钮。

2.4.2 将飞行器放置于水平方向:

  • 这是飞行器在水平飞行时的位置(飞行器通常会向上轻微翘起!) 对于旋翼机,这是悬停位置。

2.4.3 点击 OK 开始校准。

2.4.4 等待校准过程结束。

(三).遥控器Radio

3.1 点击Radio 按钮。

3.2 点击 OK开始。

3.3 设置和你遥控相匹配的 发射机模式(即左右手)(这个确保在下面的校准中 QGroundControl 准确显示摇杆的位置(一般不需要调整)。

3.4 按照文字(在遥控器的图上)提示移动摇杆的位置。 当摇杆到达位置,点击Next 。重复上述步骤。

3.5 当出现提示,移动所有开关和旋钮到最大行程(你可以在 Channel Monitor 上看到他们指示条的移动)。

3.6 点击Next保存设置。

(四).飞行模式Flight Modes

4.1在左侧 Flight Mode Settings 中分别分配 Stabilized,Position,Altitude 三个飞行模式在遥控器上的对应。

4.2Switch Settings 中分配 Kill Switch 在遥控器上的对应。

(五).电源Power

5.1电源调试

5.1.1在电池芯数 Number of Cells(in Series) 模块填写合适的电池芯数。

5.1.2点击上侧的Calculate选项,输入外部实际测量电压值,并点选Calculate选项。

5.2电调调试

5.2.1 拆卸螺旋桨。

5.2.2 机体断开电源。

5.2.3点击 ESC PWM Minimum and Maximum Calibration 下的Calibrate

5.2.4 连接电源并等待调试结束。

(六).参数Parameters

6.1PID参数调试

​ pixhawk采用串级PID的方式,外环是控制角度,内环是控制角速度。因为内环更直接作用于电机,所以我们调试pixhawk的PID时,一般只用调试内环的PID即可(角速度)

注意!!! 一切PID参数的调试都是基于电调行程校准通过,桨和电机、电调匹配的基础之上。如果飞机飞起来就侧翻(没校准好传感器和电调),或者已解锁就起飞(桨和电机不匹配),出现这类飞机都飞不起来的问题,调试PID参数是没有意义的,切记! 调试PID参数是基于飞机飞行的有点不稳,但是基本可以飞行的基础之上!


6.1.1 试飞行之后将飞控与计算机连接。

6.1.2 打开QGroundControl,点击上方文档图标。

6.1.3 打开 Analyze 下的Download选项,点击右侧的Refresh选项。

6.1.4 选择需要的飞行日志并点击右侧Download选项并完成下载。

6.1.5 打开Flight Review页面,点击Choose File...,选择对应文件,然后Upload

6.1.6 点击弹出页的Open Analysis

6.1.7 根据图表调整参数,具体方式如下。


参数名称对照

1.俯仰的内环角速度PID参数。

MC_PITCHRATE_P MC_PITCHRATE_I MC_PITCHRATE_D

2.滚转的内环角速度PID参数。

MC_ROLLRATE_P MC_ROLLRATE_I MC_ROLLRATE_D

3.偏航的内环角速度PID参数。

MC_YAWRATE_P MC_YAWRATE_I MC_YAWRATE_D


参数调整

!!如果飞行器结构对称,那么ROLL与PITCH的概念应该等价,如果不对称,则应该分开讨论。 !!

Step 1.稳定俯仰和翻滚速率

(1)P增益调节 参数:MC_ROLLRATE_P, MC_PITCHRATE_P

​ 中油门上下,到刚好平衡重力。向俯仰或翻滚方向上稍做倾斜,观察反应。飞行器应该温和的抵抗倾斜过程,但保持倾斜角之后不会尝试恢复水平姿态。如果出现震荡,降低P。如果反应正确但非常慢,调大P直到开始出现抖动。重新调回P到稍稍有一点抖动甚至不再抖动(大概回调百分之十),到稍稍超调,典型值一般为0.1。

(2)D增益调节 参数:MC_ROLLRATE_D, MC_PITCHRATE_D

​ 如果参数处于某一值时,飞行器稍微抖动并且P值已经适量的减少。从0.01开始缓慢增加RATE_D直到消除最后一点震荡。如果此时飞行器又一次出现抖动,那就是D值过大。一般通过调节P与D就可以得到比较良好的电机响应。RATE_D的典型值一般在0.01–0.02 。

(3)I增益调节 参数:MC_ROLLRATE_I, MC_PITCHRATE_I

​ 如果飞行器可以实现定点但是定点的位置与期望存在误差,那么增加MC_ROLLRATE_I 和MC_PITCHRATE_I以增益MC_ROLLRATE_P的值得百分之五到百分之十开始向上增加。

Step 2.稳定翻滚与俯仰角度

P增益调节 参数 MC_ROLL_P, MC_PITCH_P
中油门上下,到刚好平衡重力。向俯仰或翻滚方向上稍做倾斜,观察反应。飞行器应该缓慢回到水平。如果出现抖动,减小P。如果反应正确但非常慢,调大P直到开始出现抖动。最佳的反应应该是超调10%–20%后得到良好的响应。
在QGoundControl可以锁定pitch与roll。姿态角度超调不要超过10%–20%。

Step 3.稳定航向速率

P增益调节 参数:MC_YAWRATE_P

​ 中油门上下,到刚好平衡重力。转动飞行器方向轴,观察反应。电机声音应该发生改变,飞行器应该阻碍方向变化。但是这个响应应该弱于俯仰与横滚方向,这是正常现象。如果飞行器出现抖动,减小MC_YAWRATE_P。如果响应非常剧烈甚至在小幅转动,减小P。典型值大概为0.2–0.3。(四轴因为其结构,导致航向上的不灵敏,yaw-p要小于pitch与roll)。
​ 在航向的速率控制中,如果响应非常强烈或出现震荡,会影响俯仰和横滚方向的响应。统筹调节pitch,roll,yaw达到平衡。

Step 4.稳定航向角

​ 中油门上下,到刚好平衡重力。转动飞行器方向轴,观察反应。飞行器应该缓慢的回到初始方向。如果飞行器出现抖动,减小P。当响应正确但速度慢,增加P直到反应达到稳定,但不要出现震荡。典型值大概为2–3。

前馈补偿调节 参数:MC_YAW_FF

​ 这个参数不太重要,并且可以在飞行过程中调节。但是不理想的参数会使响应变慢或过快。应该调节MC_YAW_FF使飞行器得到良好的响应过程。其有效范围0–1,典型值大概为0.8–0.9。(有时为了航拍效果考虑,可以再改小MC_YAW_FF,以便得到平滑的响应过程)。

​ 在QGoundControl观察ATTITUDE.yaw。超调不应该超过2%–5%.小于pitch与 Roll。

(以下根据需要进行修改)

6.2磁罗盘Compass参数调试

禁用 CAL_MAG0_EN,即外部磁罗盘,启用 CAL_MAG1_EN,即内部磁罗盘。

6.3EKF2参数调试

EKF2_AID_MASK 仅勾选vision position fusionvision yaw fusion

EKF2_HGT_MODE 仅勾选Range sensorSave

6.4TFMini参数调试

SENS_TFMINI_CFG 根据实际情况选择接口,暂用TELEM/SERIAL 4

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PX4无人机调试技术文档 的相关文章

  • PX4+QGC+jmavsim软件在环仿真

    一 环境修改 参考官方手册jMAVSim 仿真模拟 PX4 Developer Guide xff0c 以上环境基于上一篇内容 xff0c 未完成ROS 43 jmavsim 43 QGC环境搭建的请移步Ubuntu18 04下px4 43
  • ardupilot & px4 书写自己的app & drivers (二)

    新建任务列表任务 打印时间 任务列表 const AP Scheduler span class hljs tag Task span Copter span class hljs tag scheduler tasks span span
  • PX4与TX2通信

    PX4与TX2通信以及相关数据的获取 目录 1 PX4硬件接口 2 TELEM1 2接口线序 3 PX4与TX2通信 PX4 IO口定义 xff1a PX4硬件 xff1a 4 通信测试 5 RTPS 43 ROS Jetson TX2终端
  • PX4通过I2C方式添加自定义传感器(2)

    PX4 I2C通信方式传感器驱动分析 xff08 以ets airspeed为例 xff09 1 说明 这篇文章我们就来看看I2C传感器的驱动过程 xff0c 当然里面也有很多东西我不是很理解 xff0c 所以仅谈我领悟的一些东西 我就以e
  • PX4 SITL Gazebo 仿真时 libgazebo_multirotor_base_plugin 插件运行时出错

    PX4 SITL Gazebo 仿真时 libgazebo multirotor base plugin 插件运行时出错 问题描述原因分析解决办法总结 问题描述 在 Gazebo 中进行 PX4 的软件在环仿真时 xff0c 执 make
  • PX4无人机 - 键盘控制飞行代码

    PX4无人机 键盘控制飞行代码 仿真效果 实机效果 由于图片限制5M以内 xff0c 只能上传一小段了 xff0c 整段视频请点击链接 Pixhawk 6c 无人机 键盘控制无人机 Offboard模式 核心 xff1a 发布 mavros
  • PX4 Bootloader下载及编译过程中的问题解决

    买来的雷迅的板子都是Bootloader已经烧进去了 xff0c Fireware也已经刷进去了 如果是自制的板子 xff0c 上位机根本没法识别板子 xff0c 必须先烧写下载Bootloader后编译好的bin文件 这篇记一下自己下载及
  • px4 avoidance笔记

    最近在用px4官方的avoidance代码跑硬件避障 xff0c 官方介绍了只要生成符合sensor msgs PointCloud2点云信息就能使用 xff0c 因此为了应用长基线双目 xff0c 没有使用realsense的相机 xff
  • PX4源代码下载编译

    sudo git clone https github com PX4 PX4 Autopilot git recursivegit submodule update init recursivegit submodule update r
  • PX4进入系统控制台以及运行程序

    这里提供进入控制台两种办法 1 运行 Tools mavlink shell py dev ttyACM0 是我进入Px4系统控制台的命令 xff0c 进入之后应该是这样 Pixhawk src Firmware Tools mavlink
  • PX4模块设计之十六:Hardfault模块

    PX4模块设计之十六 xff1a Hardfault模块 1 Hardfault模块初始化2 Hardfault模块主程序3 Hardfault命令3 1 hardfault check status3 2 hardfault rearm3
  • PX4模块设计之三十六:MulticopterPositionControl模块

    PX4模块设计之三十六 xff1a MulticopterPositionControl模块 1 MulticopterPositionControl模块简介2 模块入口函数2 1 主入口mc pos control main2 2 自定义
  • PX4模块设计之四十三:icm20689模块

    PX4模块设计之四十三 xff1a icm20689模块 1 icm20689模块简介2 模块入口函数2 1 主入口icm20689 main2 2 自定义子命令custom command2 3 模块状态print status 重载 3
  • PX4模块设计之四十六:dataman模块

    PX4模块设计之四十六 xff1a dataman模块 1 dataman模块简介2 模块入口函数dataman main3 dataman模块重要函数3 1 start3 2 stop3 3 status3 4 task main 4 A
  • Px4源码框架结构图

    此篇blog的目的是对px4工程有一个整体认识 xff0c 对各个信号的流向有个了解 xff0c 以及控制算法采用的控制框架 PX4自动驾驶仪软件 可分为三大部分 xff1a 实时操作系统 中间件和飞行控制栈 1 NuttX实时操作系统 提
  • pixhawk px4 commander.cpp

    对于复杂的函数 xff0c 要做的就是看函数的输入是什么 来自哪里 xff0c 经过处理后得到什么 给谁用 xff0c 这样就可以把程序逻辑理清 中间的分析就是看函数如何处理的 span class hljs keyword extern
  • PX4软件在环仿真注意点

    注 xff1a 最新内容参考PX4 user guide 点击此处 PX4下载指定版本代码和刷固件的三种方式 点击此处 PX4sitl固件编译方法 点击此处 PX4开发指南 点击此处 PX4无人机仿真 Gazebo 点击此处 px4仿真 知
  • PX4飞控的PPM接收机

    xff08 一 xff09 原理图 xff1a PX4飞控的PPM输入捕获由协处理器完成 xff0c 接在A8引脚 xff0c 对应Timer1的通道1 xff08 二 xff09 PPM协议 xff1a PPM的每一帧数据间隔为20ms
  • PX4项目学习::(五)模块代码启动流程

    54条消息 PX4 模块代码启动流程 zhao23333的博客 CSDN博客
  • 大神浅谈无人机飞控软件设计 系统性总结

    写在前面 深感自己对飞控软件 算法的知识点过于杂乱 很久没有进行系统的总结了 因此决定写几篇文章记录一些飞控开发过程的知识点 主要是针对一些软件 算法部分进行讨论 如内容有错误 欢迎指出 1 飞控软件的基本模块 无人机能够飞行主要是依靠传感

随机推荐

  • Ubuntu18.04——基于X86和Arm安装并配置Realsense-ros环境

    文章目录 基础安装1 安装ROS2 安装Realsense驱动以及依赖库 xff08 1 xff09 X86安装librealsense更新 xff08 2 xff09 Arm编译安装librealsense xff08 或者Apt无法下载
  • 【Rt-Thread】STM32输出PWM

    1 实验目标 STM32输出不同频率的占空比为50 的PWM信号 xff0c 控制蜂鸣器音调 2 硬件部分 2 1 模块介绍 xff08 1 xff09 主控芯片 F405RGT6 xff08 2 xff09 蜂鸣器 低电平触发 2 2 接
  • 考研复试实用指南

    Preface 考研初试已经结束 xff0c 但是考研这场仗还没打完 xff0c 接下来 xff0c 我们将走入复试的战场 考研复试并不是走过场 xff0c 是有严格的淘汰比例的 xff1b 考研复试并不是关系网 xff0c 是有公开而透明
  • 2020oop第一次练习 6-3 字符串 - 6. 查找子串(BF算法) (10分)

    C语言标准函数库中包括 strstr 函数 xff0c 在主串中查找子串 作为练习 xff0c 我们自己编写一个功能与之相同的函数 函数原型 char StrStr const char txt const char pat 说明 xff1
  • 信号量——二值信号量

    信号量 二值信号量 信号量简介 信号量是操作系统的重要部分 xff0c 信号量一般用来进行资源管理和任务同步 FreeRTOS中信号量分为二值信号量 互斥信号量 计数信号量和递归互斥信号量 xff0c 应用场景各不同 二值信号量 二值信号量
  • switch case语句的用法

    switch case语句的用法 我们首先来看一下switch case 语句的一般形式是怎样的 span class token keyword switch span xff08 表达式 xff09 xff5b span class t
  • C++容器作为函数形参进行使用

    C 43 43 容器作为函数形参进行使用 如这个编程题 xff1a 该题是对容器的简单应用 xff0c 由于数组在定义的时候要么用列表初始化间接告诉编译器数组的大小 xff0c 要么在定义的时候直接定义它的大小如 xff1a int arr
  • 任正非被遗漏的讲话:怎么做一个谦虚的领导者?(转)

    任正非曾在市场大会做过一个叫 做谦虚的领导者 的讲话 xff0c 少有媒体和社会层面的关注 xff0c 甚至内部也未有什么波澜 但细看起来 xff0c 这个讲话基本上是华为的管理纲要 xff0c 如 xff1a 以利润为中心 xff1b 建
  • stm32f4 mpu6050与姿态解算(仅供自己学习使用,学习笔记)

    IMU原理及姿态融合算法详解 一 陀螺仪的组成原理1 xff09 加速度计2 xff09 陀螺仪3 xff09 磁力计 二 椭球拟合三 姿态的描述1 坐标系载体坐标系当地导航坐标系载体坐标系 2 四元数3 欧拉角4 xff09 旋转矩阵 四
  • 【计算机视觉】:(3)全景图像拼接

    图像映射与全景拼接 1 全景拼接基本流程2 图像映射流程2 1 提取特征点 xff0c 构建关键点描述符 xff08 SIFT特征提取 xff09 2 2 特征匹配 xff08 KNN或kd树匹配 xff09 2 3 根据图像变换特点 xf
  • 驱动开发了解下

    目录 前提环境说明网络环境网络环境1网络环境2 启动开发板 xff0c tftp下载内核和驱动 xff0c nfs挂载文件系统开发流程1编写驱动程序修改Makefile编译创建拷贝加载驱动modprobe加载驱动depmod查看当前系统中存
  • Linux系统的启动流程---常见面试题

    系统启动流程 xff1a centos6 01 加电自检 检查服务器硬件是否正常 02 MBR引导 读取磁盘的MBR存储记录信息 xff0c 引导系统启动 03 grup菜单 选择启动的内核 进行单用户模式重置密码 04 加载系统内核信息
  • C语言——进阶冒泡&&回调函数

    C语言 进阶冒泡 amp amp 回调函数 1 模仿qsort的功能实现一个通用的冒泡排序 span class token macro property span class token directive keyword include
  • 五.树莓派4B-安装常用软件

    安装vim xff1a vi和vim与nano gedit都是Linux系统的文档编辑器 xff0c 类似于windows系统的文本文档编辑器一样 xff0c 其中vi编辑器是最常用的 xff0c 同时在Linux系统中编写各类型语言的代码
  • JS节点操作

    节点概述 1 在JS中节点可分为父节点 子节点 兄弟节点 又可分为元素节点 属性节点 文本节点 2 节点至少拥有三个基本属性 xff0c nodeType 节点类型 xff09 nodeName 节点名称 xff09 nodeValue 节
  • C++ 之运算符重载规则

    运算符重载的规则 1 C 43 43 中大部分运算符允许重载 xff0c 不能重载的运算符只有少数几个 2 C 43 43 语言中只能对已有的运算符进行重载 xff0c 不允许用户自己定义新的运算符 3 运算符重载是针对新类型数据的实践需要
  • dispatch for POST “/error“, parameters={masked}

    dispatch for POST 34 error 34 parameters 61 masked dispatch for POST error parameters 61 masked 这个问题有好几个可能 xff0c 第一你的Req
  • Putty连接虚拟机提示: Network error: Connection refused

    服务器版本 Ubuntu 20 04 Putty连接服务端时提示Network error Connection refused时 如下图 客户端使用 telnet 命令连接服务端 也提示连接拒绝 如下图 这个时候需要登录服务端 执行以下命
  • 震惊!物联网应用2018在中国爆发 产业、技术、渠道三剑齐发

    物联网时代 xff0c 给了中国赶超美国的机会 原因在于 xff0c 物联网的发展应用 xff0c 需要技术 生态 渠道 市场等多重环节的支撑 在这几个环节中 xff0c 美国主要占据技术优势 xff0c 而中国在技术方案 生态建设 渠道开
  • PX4无人机调试技术文档

    PX4无人机调试技术文档 一 硬件部分 1 调整电机序号 转向以及螺旋桨姿态 xff0c 螺旋桨较高一侧为迎风侧 xff0c 并使四个桨处于同一平面 xff08 下图为X型四旋翼无人机DEMO xff09 2 正确接线 二 QGroundC