使用者——初见Pixhawk

2023-05-16

    • 是什么 Pixhawk简单介绍
      • 直接使用
      • 二次开发
    • Pixhawk总体概述
    • 怎么用 Pixhawk初次使用
      • 搭建调试环境
      • 初始化配置
      • 测试试飞
      • 调整参数提高性能

(是什么) Pixhawk简单介绍

这里写图片描述
PixHawk是著名飞控厂商3DR推出的新一代独立、开源、高效的飞行控制器,前身为APM飞控,不仅提供了丰富的外设模块和可靠的飞行体验,有能力的爱好者还可在其基础上进行二次开发
3DR 推出的Pixhawk的系列的多种飞控

直接使用

Pixhawk作为一个非常稳定的自动驾驶仪,可以作为固定翼、多旋翼、直升机、船舶、汽车模型的主控,通过连接外部的电机驱动,和无线遥控的接收机,实现多种模型的无线遥控驾驶。

二次开发

同时Pixhawk作为非常优秀的开源飞控,又给我们留了很多接口,用于二次开发。Pixhawk提供开源代码,我们可以直接基于代码进行二次开发;或者仅把Pixhawk作为无人驾驶仪的控制器,通过MAVLink协议与Pixhawk通信,进行二次开发
(二次开发结合后面的二次开发来讲)

Pixhawk总体概述

硬件配置

  • 主处理器:32位STM32F427,主频168 MHz ,256 KB RAM,2 MB Flash
  • 备用处理器:独立供电32位STM32F103故障保护协处理器
  • 传感器:双 3轴加速度计(据说可确保绝大部分情况下可剔除单加速度计可能产生的混淆噪声,极大改善飞行稳定性)、磁力计(确认外部影响和罗盘指向)、双陀螺仪(测量旋转速度)、气压计(测高)、内置罗盘、支持外置双GPS
    集成的备份、超控、故障保险处理器
  • microSD 插槽用于日志等用途,
  • 5个 UARTs, CAN, I2C, SPI, ADC,等

接口描述
这里写图片描述

这里写图片描述

这里写图片描述

(怎么用) Pixhawk初次使用

搭建调试环境

组装飞机
烧写固件
初始化配置
PixHawk飞控和Mission Planner地面站安装调试

初始化配置

(初始化配置,应该单独另出一节,讲四轴搭建)

测试、试飞

飞鱼飞控地面站(Android & IOS)

调整参数,提高性能

PID参数整定

P(比例):【回复力】是一个增益因子,修正偏差力度的一个比例值
当多旋翼受风等其他外界因素影响向一边倾斜时,P值直接决定了多旋翼抵抗这种倾斜力的大小。较高的P值会产生较强的修正力去抵抗飞行器位置的偏移
增大P值,飞行器会逐渐变得稳定,但P值太高会造成振荡和失控
P越大,多轴飞行器抵抗意外倾斜的能力越强,
如果P值太高,在飞行器返回初始位置的过程中会过冲然后再次往反方向修正,接着再次进行回到初始位置的补偿。这会 导致飞行器出现持续振荡,严重的话会完全破坏平衡。
但P过于大时会引起多轴飞行器抖动甚至猛烈侧翻 高频抖动
P越小,多轴飞行器抵抗意外倾斜的能力越弱,
但P过小时会引起多轴飞行器自平衡能力不足甚至朝一边侧翻(如顺着风的方向) 荡秋千式的慢慢晃动
P的理想值 是推油门悬停比较稳定
特技飞行:需要的P值稍高。
普通飞行:需要的P值稍低。

I(积分):这个参数决定了飞行控制器对过往飞行状态的依赖程度。(反应速度)
增大I值: 减小漂移和提升稳定效果,但过大的I值会延长稳定过程的周期,同时也会降低P的效果。
减小I值: 增强反应速度,但会增加漂移和降低稳定效果,同时会提升P的效果。
如果I值太小,会使飞行器过度依赖当前的误差,不能抑制“过敏”现象,从而造成飞行颠簸;如果I值太大,则会过度削弱系统对误差的反应能力,造成反应迟缓。
特技飞行:需要的I值稍低。
普通飞行:需要的I值稍高。

D(微分):【打舵后刹车】 【阻尼器】
较高的D值(数值与效果相反,较高的D值参数上会更接近0)意味着飞行器会快速返到回初始位置
增大D值:(请记住,增大效果等于减小设定的参数值) 提升修正的速度,也会提升产生修正过量与振荡的几率,同时也会提升P的效果。
减小D值:(请记住,减小效果等于增大设定的参数值) 降低由偏差状态返回初始位置的振荡,恢复到稳定效果的时间变长,同时也会降低P的效果。
特技飞行:增大D值(请注意是减小参数值)。
普通飞行:减小的D值(请注意是增大参数值)。
一旦多轴飞行器发生倾斜,则认为多轴飞行器会继续向同一方向倾斜,合适的D参数的能有效抑制未来可能发生的倾斜。
如果D值太小,您会觉得多轴飞行器反应不够灵敏;(打完舵后,松手,慢慢才回中)
如果D值太大,也会引起“过敏”。相较于P而言,D反映 得更多的是灵敏度,而P反映的是纠正误差的力度。(打完舵后,松手,回中有点抖)
D的理想值 (打完舵后,松手,迅速回中)


当多轴飞行器在PITCH/ROLL/YAW轴上有任意角度变化时,
1 外界环境(如风)导致变化,但是期望值没有变
2 用遥控打舵来改变,遥控给的就是期望
陀螺仪输出的实时值会与期望值比较,求出偏差角度值。再使用“PID”程序算法驱动电机,不断地纠正这个误差,让多轴飞行器回到期望的姿态。

首先调节P
用手抓着飞行器(小心),或者记在杆上固定好一个轴向
调(roll_P)增大油门,直到接近起飞的位置,左右晃动飞行器,增大P值,直到出现抖动,再回小一点
同理调节(Pitch_P)增大油门,直到接近起飞的位置,前后晃动飞行器,增大P值,直到出现抖动,再回小一点

航向yaw先不要动

增大P值直到出现振荡,然后稍微减小一点。
改变I值直到偏差程度达到无法接受的程度,然后稍微增大一点。
减小D值(请注意是增大参数值)直到出现大动作控制时回中速度变慢,然后稍微增大一点D值(请注意是减小参数


使用Mission Play 在线调参,
把遥控的第六通道映射到一个旋钮,在扩展设置里进行单个参数在线调试
Rate Roll/Pitch

好的调试原则是在不产生震动的情况下P尽可能高。(这样会很跟手,飞机容易操控)P值越高力度越大,控制力越大,值越小控制力越小。I和D负责修正P值大了造成的错误

I修正P的累计错误(什么叫累计,就是长时错误,表现在飞机上就是漂移,你让飞机成一定角度飞出去,没打杆,但是飞机自己就栽头或者上扬,这就是累计错误。记住I只管这个事儿,除了漂移啥都不管)

D值关系到飞机的某个轴是不是太快的达到目标值。如果飞机在打杆时非常快速的响应,那么它有可能超过了需要响应的预定位置,然后自己再向回纠正,这就造成了抖动,增加D值可以修正这种抖动。(引用原文的话bounce back{跳回},D只管跳回,其他的啥都不管。我下面详细讲。)D值尽可能小,太高的D值会导致电动机噪声太大(啥是电动机噪声,我下面详细说)。

PID三个参数的直观作用:

教你手动调节APM/PIXHAWK的PID

官网PID 设置

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

使用者——初见Pixhawk 的相关文章

  • Pixhawk之姿态解算篇(4)_补充篇

    一 开篇 大家期待已久的第四篇来了 xff0c 但是本篇可能比较水啊 见谅 首先 xff0c 上一周没有什么收获 xff0c 虽然看了不少的论文 xff0c 但是却没有什么质的飞越 看的论文都是关于姿态解算的 xff0c 用的算法大部分也都
  • Pixhawk之学习杂谈

    一 开篇 距离上一篇博文已经很久了 xff0c 最近主要就是参加了几家公司的电话面试 xff0c 思考了一些问题 xff0c 本身就是半路杀进无人机领域的门外汉 对整个飞行控制部分理解的也是皮毛的皮毛 xff0c 经过几家面试之后 xff0
  • Pixhawk之姿态解算篇(5)_ECF/EKF/GD介绍

    一 开篇 很久没更新blog了 xff0c 最近研究的东西比较杂乱 xff0c 也整理了很多东西 xff0c 没有来的及更新 xff0c 最近发现很多小伙伴都开始写blog了 xff0c 在不更新就要 被落后了 兄弟们 xff0c 等等我啊
  • Pixhawk之姿态解算篇(6)_Gradient Descent

    一 开篇 在多旋翼进行姿态估计的过程中 xff0c 最简单的就是直接使用gyro测量角速度进行积分求取欧拉角 xff08 RPY xff09 xff0c 但是由于gyro自身存在的bias和drift xff0c 导致直接测量过程随着时间的
  • pixhawk配置垂直起降无人机

    我使用的版本里面没有找到 43 型尾座式垂直起降无人机 就先用x型无人机了 查看代码 发现在init d目录下id号为13003 待续
  • PX4/Pixhawk---uORB深入理解和应用(最新版)

    1 简介 ps 第1章简介是参考 uORB深入理解和应用 1 1 PX4 Pixhawk的软件体系结构 PX4 Pixhawk的软件体系结构主要被分为四个层次 xff0c 这可以让我们更好的理解PX4 Pixhawk的软件架构和运作 xff
  • Mavros读取PixHawk硬件的IMU数据

    Ubuntu18 04 读取PixHawk硬件的IMU数据 实现方式 使用mavros话题读取到Pixhawk飞控的IMU数据 实现步骤 安装ros 检查是否安装cmake xff08 未安装根据提示安装 xff09 cmake span
  • Pixhawk之姿态控制篇(1)_源码算法分析(超级有料)

    摘自 xff1a https blog csdn net qq 21842557 article details 51439171 Pixhawk之姿态控制篇 xff08 1 xff09 源码算法分析 xff08 超级有料 xff09 20
  • Pixhawk无人机教程-8.1 在Mission Planner中下载与分析日志(转载)

    摘自 xff1a https www ncnynl com archives 201608 491 html Pixhawk无人机教程 8 1 在Mission Planner中下载与分析日志 闪存日志 目录 闪存日志日志类型 闪存 VS
  • PIXHAWK添加自定义消息存储到SD卡

    四旋翼调试阶段总会出现很多难以预见的现象 xff0c 这时为了找到所出问题的原因 xff0c 就需要获得原始相关数据进行分析 xff0c pixhawk代码提供了记录飞行日志的功能 xff0c 能够将飞行中的重要数据存入SD卡中 xff0c
  • pixhawk调试过程中QGC报错显示问题及解决方案汇总

    1 室内环境下解锁无人机 xff0c 报错 xff1a Not arming geofence RTL requiers valid home 解决 xff1a 去掉安全设置里面的地理围栏 xff0c 否则只能在有GPS的环境下解锁
  • PIXHAWK位置控制整体框架及期望推力向量转化成目标姿态旋转矩阵算法的深度解析

    万事开头难 xff0c 这是我的第一篇博客 谨以此将所学所悟记录下来 xff0c 以防遗失 xff0c 同时欢迎与大家进行技术交流 xff0c 共同学习 xff0c 共同进步 xff0c 玩的开心 xff01 这里的位置控制主要看PX4的m
  • pixhawk ulg转csv

    ulg是目前最新版px4固件生成的log格式 xff0c 下载最新版的flightplot即可对内部数据进行预览分析 xff0c flightplot中支持部分函数和运算符操作 xff0c 但对带 数据的操作不支持 xff0c 如需要对某些
  • Pixhawk飞行模式的讨论

    手动模式 offboard 地面站 操控的区别 使用遥控操纵的模式 Simple and Super Simple 选项 加了这个选项之后 xff0c 它的磁力计会记录飞机解锁时 xff0c 朝向就是无人机的前方 每个飞行模式的旁边都有一个
  • Pixhawk代码分析-源码框架

    源码框架 pixhawk代码框架 xff1a pixhawk代码框架基础分析 xff1a 阅读下面内容时请结合源码阅读 xff0c 便于理解 The basic structure of ArduPilot is broken up int
  • Pixhawk之姿态控制篇

    一 开篇 姿态控制篇终于来了 来了 来了 心情爽不爽 xff1f 愉悦不愉悦 xff1f 开心不开心 xff1f 喜欢的话就请我吃顿饭吧 xff0c 哈哈 其实这篇blog一周前就应该写的 xff0c 可惜被上一篇blog霸占了 但是也不算
  • pixhawk make文件分析

    由于笔者没学过Linux等系统 xff0c 对make文件所知甚少 xff0c 本节分析可能有大量错误 xff0c 只提供参考 xff0c 随着技术积累 xff0c 以后会回过头改正错误的地方 xff0c 也非常欢迎提出指导意见 其中分析大
  • 步骤五:PIXHAWK遥控器的使用

    采用福斯i6s遥控 1 连接飞控 打开遥控器 xff0c 接收机插上飞控 xff0c 再插上送的短接线 xff0c 进行匹配对码RX 2 遥控器长按两秒锁 xff0c system output mode Output mode按照图片这样
  • 树莓派3B使用mavlink串口连接PIXHAWK_V5

    参考网址 xff1a http ardupilot org dev docs raspberry pi via mavlink html https dev px4 io en robotics dronekit html https do
  • pixhawk之NSH调试

    一 ardupilot固件 windows环境 前期准备 1 xff1a pix烧录程序 xff0c Arducopter或者library中的example都可以实现 2 xff1a 拔掉SD卡 xff08 脚本中提到的没有SD卡进入ns

随机推荐

  • 稀疏傅里叶变换(sparse FFT)

    作者 xff1a 桂 时间 xff1a 2018 01 06 14 00 25 链接 xff1a http www cnblogs com xingshansi p 8214122 html 前言 对于数字接收来讲 xff0c 射频域随着带
  • 根据select出来的数据进行update

    update t tbl desc set num 61 b num from t tbl desc a select distinct name as name count name num from t col desc group b
  • 细说Unicode(三) Unicode 番外之附加字符

    在各种论坛上 xff0c 经常会看到一些奇怪的字符 xff0c 它们的内容会超出显示范围 xff0c 举个例子 xff1a 39 Z A L G O 39 常见的还有一些有泰文字符组成的 这里就不举例子了 这些看似乱文的字符是怎么形成的呢
  • Linux 永久修改主机名(转载)

    Linux修改主机名 xff0c 永久生效 linux查看主机名 查看主机命令 xff1a root 64 linux epm2 hostname localhost localdomain localhost localdomain即为默
  • 安装centos7 报错[FAILED] Failed to start Switch Root. see 'systemctl status initrd-switch-root.service' ...

    背景 xff1a 在VMware上安装虚拟机 系统 xff1a CentOS 7 x86 64 Minimal 1804 目前最新的版本 报错截图 xff1a 在安装步骤就报错 xff0c 说明要么是硬件问题 xff0c 要么是系统文件有问
  • 微信聊天记录备份到电脑上还是不能看

    版权声明 xff1a 本文为 testcs dn 微wx笑 原创文章 xff0c 非商用自由转载 保持署名 注明出处 xff0c 谢谢 https blog csdn net testcs dn article details 801241
  • 四种滤波方式

    1 均值滤波 均值滤波 xff0c 是最简单的一种滤波操作 xff0c 输出图像的每一个像素是核窗口内输入图像对应像素的像素的平均值 所有像素加权系数相等 xff0c 其实说白了它就是归一化后的方框滤波 下面开始讲均值滤波的内容吧 均值滤波
  • python中文件处理--判断文件读取结束方法

    一 readline函数 按行遍历读取文件的方法 xff0c 通过这个方法 xff0c readline 每次只读取一行 xff0c 通常比 readlines 慢得多 仅当没有足够内存可以一次读取整个文件时 xff0c 才应该使用 rea
  • 4G模块网络通信

    硬件平台驱动安装AT指令调试 采用内部协议栈 ppp拨号上网 硬件平台 HUAWEI ME909s 821 Windows7操作系统 43 Ubuntu Kylin 14 04操作系统 嵌入式开发板 驱动安装 Windows系统下的模块驱动
  • 如何使用NSOperations和NSOperationQueues(二)

    34 每一个应用程序至少有一个主线程 线程的工作就是去执行一系列的指令 在Cocoa Touch中 xff0c 主线程包含应用程序的主运行回路 几乎所有你写的代码都会在主线程中执行 xff0c 除非你特别创建 34 线程 每一个应用程序至少
  • [转注自官网]Cocos2d-x Tutorial 5 - 碰撞检测(Glede Edition for 2.0.3)

    Chapter5 碰撞检测 主人公能够放子弹了 xff0c 虽然子弹看起来很美 xff0c 但是怎么样来打到妖怪 xff1f 在这一章我们介绍一下最简单的碰撞检测方法去实现它 首先第一个 xff0c 我们有必要保存每个妖怪和子弹的指针 xf
  • Access check table exist before drop it.

    If drop an un exist table will get error 34 Table 39 TempTable 39 does not exist 34 use the following function Here is a
  • 腾讯赵建春:AI浪潮下的高效运维思考及实践

    GOPS 全球运维大会暨首届金牌运维峰会于11月17日 18日在上海圆满举行 腾讯 SNG 助理总经理 GOPS 金牌讲师赵建春老师受邀出席大会 xff0c 并带来精彩演讲 AI 浪潮下的高效运维思考与实践 本文根据此演讲实录整理而成 AI
  • 虚拟机开机连接的时候显示novnc_Linux-KVM虚拟化+websockify(noVNC)

    kvm安装 环境 xff1a centos7 1 查看CPU是否支持inter或AMD的虚拟技术 cat proc cpuinfo grep E 34 vmx svm 34 支持显示 2 安装kvm yum install qemu kvm
  • 云计算部署与管理----Openstack(一)

    一 云计算介绍 基于互联网的相关服务的增加 使用和交付模式 xff1b 这种模式提供可用的 便捷的 按需的网络访问 进入可配置的计算资源共享池 资源包括网络 服务器 存储 应用软件 服务 xff1b 这些资源能够被快速提供 只需投入很少的管
  • 嵌入式软件工程师需要哪些知识

    最近想不到好的专题 xff0c 所以与大家一起聊聊 xff0c 在我眼中 xff0c 一名优秀的嵌入式软件工程师需要具备哪些能力 嵌入式软件工程师需要哪些知识 基本职业技能 编码能力 xff1a 至少精通C C 43 43 语言进行codi
  • Docker 更新镜像

    docker镜像如下 xff1a 今天在运行的容器内使用 apt get update 命令进行更新时 xff0c 发下很多404错误 1 Err http archive ubuntu com wily updates restricte
  • 普通用户crontab -e报错

    root crontab e 34 crontab u5u4Zm crontab 34 34L 1478C written crontab installing new crontab var spool cron mkstemp Perm
  • 读书笔记之《Windows内核原理与实现》

    最近学习 Windows内核原理与实现 发现其博大精深 xff0c 粗略过了一遍 xff0c 很多东西比较茫然 xff0c 看书之余把书中涉及的函数 xff0c 结构 xff0c 全局变量的所在页数总结出来 xff0c 便于以后查阅 由于半
  • 使用者——初见Pixhawk

    是什么 Pixhawk简单介绍 直接使用二次开发 Pixhawk总体概述怎么用 Pixhawk初次使用 搭建调试环境初始化配置测试试飞调整参数提高性能 xff08 是什么 Pixhawk简单介绍 PixHawk是著名飞控厂商3DR推出的新一