魔城烟雨
乘风破浪,学习无止境!总想做点有意义的事情,奈何时间不饶人!期待可以创办属于自己的星球!
展开
-
ardupilot 计算悬停油门的方法
本节主要记录ardupilot计算悬停油门值的方法,欢迎批评指正。ardupilot计算悬停油门对于进行稳定的高度控制至关重要。原创 2024-09-06 11:08:01 · 227 阅读 · 0 评论 -
ardupilot安装python
本节主要记录如何安装ardupilot 的python开发环境,主要参考b站视频B站视频ubuntu 安装python-3.10.0。原创 2024-04-07 14:46:14 · 307 阅读 · 0 评论 -
ardupilot 欧拉角微分方程推导过程
本节主要记录如何推导欧拉角的微分方程的过程,欢迎批评指正!!!一个直角坐标系相对于另一个直角坐标系的方位关系,可通过三个依次转动来描述,每次旋转所绕的坐标轴与前后旋转轴正交。欧拉证明任意两个正交坐标系之间的相对朝向关系可以通过一组不少于3 的角度来描述,这三次旋转的转角称为一组欧拉角,最早由欧拉(Leonhard Euler )提出而得名。欧拉角是一种用于描述两个坐标系之间相对姿态的经典方法,物理含义直观,易于理解,尤其是用于描述载体坐标系相对于当地导航坐标系的运动。原创 2024-01-25 16:50:53 · 228 阅读 · 0 评论 -
ardupilot 方向余弦矩阵/旋转矩阵的理解
本节主要记录自己对ardupilot中用到的方向余弦矩阵/旋转矩阵的理解,欢迎批评指正,有些资料参考网上写的比较好的资料,免得查找资料麻烦。旋转矩阵的坐标理解:表示从旋转矩阵的下标的坐标系的坐标变换到上标表示的坐标系坐标下。旋转矩阵的坐标系理解:表示从旋转矩阵的上标的坐标系变换到下标表示的坐标系下。从旋转矩阵的投影更好理解,比如下面旋转矩阵的第一行是左边坐标系的第一维分量在右边坐标系的投影。原创 2024-01-24 17:31:46 · 312 阅读 · 0 评论 -
ardupilot 罗德里格公式的两种推导
本节主要记录推导罗德里格公式的过程,可以参看视频不错的视频讲解。原创 2024-01-24 14:27:45 · 121 阅读 · 0 评论 -
ardupilot 飞机的关键参数设置(电池+电机+滤波器)
本节主要记录自己学习ardupilot官网给的飞控关键参数的选择,欢迎批评指正!!!,主要参考。原创 2024-01-23 11:00:18 · 447 阅读 · 0 评论 -
ardupilot 从官网克隆代码
本节主要记录如何从ardupilot官网克隆代码过程。官网连接。原创 2023-10-24 16:42:31 · 310 阅读 · 0 评论 -
ardupilot罗盘数据计算航向
本节主要记录ardupilot 根据罗盘数据计算航向的过程。如果知道了一组罗盘数据,我们可以粗略估计航向:主要后面我们所说的X和Y都是表示的飞机里面的坐标系,也就是X前Y右边,如果按照罗盘坐标系Y实际在左边。我们用的都是下面的表示的数据都是用上面这个图,主要注意一点就是 实际的飞机Y在右边就可以,而罗盘Y在左边。原创 2023-10-11 19:53:25 · 330 阅读 · 0 评论 -
ardupilot 安装gcc-arm-none-eabi编译工具
本节主要记录ardupilot使用的编译器安装过程。gcc-arm-none-eabi是GNU项目下的软件,是一个面向裸机arm的编译器。那么说了这么多介绍,它都包含什么具体功能又怎么安装与使用呢,我们继续。原创 2023-09-06 22:41:00 · 750 阅读 · 0 评论 -
ardupilot 为什么要采样四元数姿态控制
本节主要说明清楚ardupilot姿态控制为什么要用到四元数,欢迎批评指正!!!原创 2023-08-10 16:11:31 · 649 阅读 · 0 评论 -
ardupilot 三维向量如何进行旋转
本节主要记录ardupilot中如何实现一个三维向量从一个坐标系转换到另外一个坐标系的过程,欢迎批评指正!!!原创 2023-08-10 13:02:59 · 290 阅读 · 0 评论 -
ardupilot 中坐标变换矩阵和坐标系变换矩阵区别
本节主要记录ardupilot 中坐标变换矩阵和坐标系变换矩阵的区别,这里非常重要,特别是进行姿态误差计算时,如果理解错误,很难搞明白后面算法。原创 2023-08-04 14:47:18 · 1302 阅读 · 0 评论 -
ardupilot四元数与三维向量
本节主要记录ardupilot四元数和三维向量旋转相关知识,欢迎批评指正。本文主要参考四元数相关知识。2.纯四元数3.四元数的差。原创 2023-08-04 10:54:12 · 215 阅读 · 0 评论 -
ardupilot 如何安装intelhex模块
本节主要记录ardupilot如何安装intelhex模块,实现编译ardupilot的bootloader文件并生成bootloader文件和固件合并的.hex文件。原创 2023-07-31 15:18:58 · 168 阅读 · 0 评论 -
ardupilot获取飞行员目标倾斜角度
本节主要记录ardupilot获取目标倾斜角度的两种实现方法,主要针对4.0.7和4.3.7进行对比。原创 2023-07-27 11:28:57 · 466 阅读 · 0 评论 -
ardupilot PID源程序学习
本节主要分析Copter-4.0.7和Copter-4.3.7的PID源码解读,欢迎批评指正!!!可以看出两个版本差异不是很大,基本完全一样,这个PID的关键就是:1.数据滤波处理2.积分在电机运转逻辑不一样情况下,采取的措施不一样,防止在怠速,停转阶段有异常,上升、下降、全速运行的情况下只有积分限幅有作用。3.电机输出逻辑中的三个变量的作用主要在控制这边的积分限制有很大作用。//横滚限制 limit . pitch = true;//俯仰限制 limit . yaw = true;原创 2023-07-26 11:49:56 · 357 阅读 · 0 评论 -
ardupilot 悬停油门学习
本节主要记录ardupilot的悬停油门相关知识,正常悬停油门更新:没有解锁和着地不更新,手动模式或者漂移模式不更新,垂直方向有期望速度不更新,只有油门大于最低值,垂直运动速度小于60cm/s,并且横滚和俯仰都小于5度才会更新悬停油门值,欢迎批评指正!!!原创 2023-07-26 10:58:25 · 325 阅读 · 0 评论 -
chatgpt助力解决ardupilot 疑难公式推导
通过chatgpt推导困扰我多年的ardupilot 疑难公式推导,非常强!!!记录下来!!!原创 2023-07-25 16:23:30 · 321 阅读 · 0 评论 -
ardupilot 遥控的输入控制模式
和别的系统(MultiWii 等)的“无忧(carefree)”模式差不多,这个模式可以让你操作飞行器的时候,就像它一直是它解锁时的方向一样,不用管它现在转到了什么方向。超简单模式和简单模式是基本相同的,除了它用的是模型的位置与家的位置相关联,不是用的模型最初解锁时的头的方向。(假设rollin为遥控器输入的横滚值,pitchin为遥控器输入的俯仰值,rollb为机体坐标系的横滚值,pitchb为机体坐标系的俯仰值, rolle为惯性坐标系统的横滚值, pitche为惯性坐标系的俯仰值。原创 2023-07-25 15:56:40 · 615 阅读 · 0 评论 -
ardupilot 电机运行状态机
本节主要记录ardupilot中电机运行的状态机,ardupilot的电机运行状态机目前主要包含5种:停转、怠速、全速运行、上升、下降。原创 2023-07-25 13:38:42 · 367 阅读 · 0 评论 -
ardupilot DCM知识学习
本节主要记录ardupilot的DCM算法学习的过程,欢迎批评指正!!!参考网址DCM英文网址这是基于惯性测量单元(IMU)的方向余弦矩阵(DCM)的理论与实现的系列文章的第一篇,DCM能够应用在模型飞机以及直升机上。事实上,这篇文章到目前还只是一个草案,依然还有很多工作要做。许多评论者对于本篇文章的增改提出了很棒的建议,尤其是Louis LeGrand 和一些匿名来信的人,我们应该制作并准备一些文章中还没有包含的图表。我们后面会采纳他们的建议来进行改善,但是这可能还需要花上很长一段时间。原创 2023-07-21 18:33:27 · 346 阅读 · 0 评论 -
ardupilot IMU陀螺仪方向的重要性
本节主要记录IMU陀螺仪方向的重要性,欢迎批评指正!!!注意这个BMI088 的IMU方向,特别是是那个左上角的黑色点点,他的坐标系满足右手坐标系,但是我们无人机坐标系是北东地坐标系,因此需要把IMU方向进行旋转到和我们无人机同样坐标系下。如果我们把无人机机体对应的方向是正北,那么BMI088的X轴方向正好是正北,Y轴方向正好是正东,垂直方向取反即可。这样我们的X轴的变化就是对应横滚角度,Y轴对应俯仰角,Z对应偏航角。这对我们进行控制时非常重要。原创 2023-07-13 15:40:56 · 679 阅读 · 0 评论 -
ardupilot 位置控制(POSHOLD)分析
本节主要分析ardupilot中的位置控制POSHOLD模式的整体实现过程,欢迎批评指正!!!POSHOLD思路:1.首先获取飞行控制输入量2.根据当前高度的信息,进行识别当前位置控制是处于什么状态机。原创 2023-04-10 22:07:34 · 1218 阅读 · 1 评论 -
ardupilot 最优化算法
本节主要记录学习的最优化方法:最小二乘法、梯度下降法、牛顿法、高斯牛顿法、LM算法的过程,以及ardupilot中加速度和地磁进行校准用到的算法分享,欢迎批评指正!!!定义:最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合,其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。非常好的视频。原创 2023-03-24 22:49:52 · 581 阅读 · 1 评论 -
ardupilot 姿态误差计算分析
本节主要记录ardupilot 之前代码和最新代码姿态误差计算的核心代码分析,欢迎批评指正!原创 2023-03-08 15:27:20 · 294 阅读 · 0 评论 -
ardupilot 如何快速下载代码
本节主要记录如何使用ubuntu进行看xx,下载ardupilot代码。原创 2022-12-01 15:57:20 · 491 阅读 · 0 评论 -
ardupilot 卡尔曼滤波器学习
本节主要记录自己跟着DR_CAN学习的卡尔曼滤波器的过程,会和ardupilot中的EKF结合一起分析学习,欢迎批评指正。DR_CAN视频。原创 2022-11-07 09:09:16 · 535 阅读 · 2 评论 -
ardupilot ekf故障检测代码学习
EKF故障检测在ardupilot中非常重要,可以检测EKF的异常,减少炸鸡的可能性。因此这部分代码十分重要,由于后面要用到坐标系的知识,这里增加一点坐标系的定义。通过本节的学习,可以知道,ekf故障检测重点检测:速度,位置,罗盘等方差信息,防止传感器因误差比较大造成严重的炸鸡事件,减少EKF滤波器的故障,降低损失。原创 2022-11-04 18:12:00 · 820 阅读 · 0 评论 -
ardupilot BMI088加速度陀螺仪学习
本节主要记录ardupilot 中BMI088传感器的学习过程,欢迎批评指正。BMI088是一款高性能6轴惯性传感器,由16位数字三轴±24g加速度计和16位数字三轴±2000°/ s陀螺仪组成。 BMI088允许高精度测量方向和沿三个正交轴的运动检测。BMI088具有高振动鲁棒性和3 x 4.5 x0.95mm³的小尺寸,是用于无人机和机器人应用等恶劣环境的高性能IMU中的独特产品。 BMI088专门设计用于有效抑制由于PCB上的共振或整个系统的结构而可能发生的振动。 除了高振动稳定性外,BMI088的出原创 2022-11-02 10:26:34 · 1080 阅读 · 0 评论 -
ardupilot避障代码分析
避障传感器驱动;近年来,随着无人机市场的飞速增长, 避障技术已成为中高端消费级无人机的标配系统, 避障能力是实现自动化乃至智能化的关键环节,完善的自主避障系统将能够在很大程度上,减少因操作失误造成的无人机损坏和伤及人身和建筑物的事故发生率,可见无人机实现避障的重要性。原创 2022-10-31 14:20:33 · 1076 阅读 · 1 评论 -
ardupilot pwm输出占空比
本节主要记录ardupilot的电机默认占空比设置,欢迎批评指正!!!脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽度的控制,原创 2022-10-18 14:20:16 · 1017 阅读 · 0 评论 -
ardupilot GPS ublox协议学习
本节主要记录自己学习ardupilot 中GPS ublox协议的过程,欢迎批评指正。飞控中常用的协议包含:NMEA ,UBLOX,NOVAX协议说明:本资料大部分来自UBLOX官网数据手册:M8N协议手册u-blox芯片是瑞士U- blox公司研发的一款芯片,输出数据可配置为以下三种协议,其中u-blox接收器支持u-blox专有协议与主机通信。本协议具有以下主要功能:基本UBX框架的结构如下图所示。结构类型框架到此结束。1.值的排列顺序使结构打包不成问题。这意味着2字节值应从偏移量开始,偏移量为2的倍数原创 2022-10-14 17:04:35 · 2016 阅读 · 0 评论 -
ardupilot更新油门组合值
本节主要记录ardupilot中ardupilot更新油门组合值的函数:void Copter::update_throttle_mix(),欢迎批评指正!原创 2022-10-09 14:05:39 · 549 阅读 · 0 评论 -
ardupilot 日志分析《xKF1信息》
ardupilot 日志分析系列将会把ardupilot所有的日志文档进行分析,为我们分析无人机的运行状态,炸鸡原因,传感器状态,电机状态,控制信息,滤波信息做准备。本节主要分析xKF1日志信息,欢迎批评指正。学习好ardupilot必须会分析飞行日志,从飞行日志中我们可以学到很多无人机的知识。无人机是综合知识的体现,涵盖:导航、控制、滤波、算法、协议等各种知识,只有更全面的学习,才能在无人机的道路上越走越远。原创 2022-09-21 18:26:21 · 760 阅读 · 0 评论 -
ardupilot相机拍照控制
本节主要记录ardupilot的相机控制逻辑,欢迎批评指正!!!关于ardupilot的相机控制及挂载的控制网上资料很少,本节主要学习下ardupilot的相机快门拍照的控制。添加链接描述相机代码主要用的的库如下所示:SoloGimbal是solo万向节云台的意思通过本节学习可以看出如何进行对相机快门拍照的控制,但是对于多个航点进行自动航拍拍照这个功能需要自己去实现,基本思路就是:当每次到达航点时触发相机快门拍照即可,完成后关闭拍照功能。原创 2022-09-16 20:06:48 · 464 阅读 · 0 评论 -
ardupilot 抛飞模式实现
本节主要记录ardupilot的抛飞模式实现,欢迎批评指正!!!1.抛飞模式设置,设置对应的抛飞模式实现后续功能,这里跟切换定高、定点一样,需要设置这个模式。//自动飞行模式枚举------- Auto Pilot Modes enumeration enum class Number : uint8_t {原创 2022-09-15 16:32:02 · 665 阅读 · 0 评论 -
ardupilot 偏航旋转反扭力
本节主要记录无人机实现偏航顺时针和逆时针需要的电机PWM波形是什么样的,为分析飞控异常做准备。原创 2022-09-15 10:56:44 · 495 阅读 · 0 评论 -
ardupilot 中常用的框架类及结构
本节主要记录ardupilot 中常用的机架类型及结构,划出常用的电机接线顺序图。原创 2022-09-07 18:57:39 · 634 阅读 · 0 评论 -
ardupilot 中电机输出逻辑及电机转轴状态分析
本节主要分析ardupilot中电机输出逻辑及电机转轴状态,欢迎批评指正。原创 2022-09-07 17:15:54 · 565 阅读 · 0 评论 -
ardupilot电机类直接的继承关系《2》
本节接着ardupilot电机类直接的继承关系的继续讨论,欢迎批评指正!!!原创 2022-09-02 07:46:22 · 280 阅读 · 0 评论