px4调试bug--添加mavlink_log_info信息

2023-05-16

写在前面的话:有一阵子没有看px4的代码了,由于项目和论文的需要,又要接触这个。其中又遇到一些新的问题,找到了一些新的解决方法,故在此记录一下(总是在几种飞控代码之间跳来跳去,没有认真研究一个,有点遗憾)
PX4的代码调试还没有找到什么好的方法,官方很多地方也不建议修改,用来做导航是比较舒服的。
  1. 坑1,上电连上地面站QGC后,提示关键错误, " wp index out of bounds", 采用mavlink_log_info的方式打印地面站输出看到,其对应消息在mavlink_mission.cpp中,对应变量seq变量在上电后处置为7000+(一个固定值),大于count导致,字面意思是航点索引越界,但是并没有用到航点信息。最初,考虑屏蔽该warning ,或者在上电之后某处加上判断,if ( seq>1000) , seq = 0. 最后,更换SD卡之后,问题消失。
  2. 对应固件版本1.10.1,遥控器无法解锁,电调声音异常,经多次电调校准后仍然是一个效果。通过上古方法校准电调通过(确保电调没有问题,电机没有问题),无奈之下,通过示波器查看飞控的PWM输出波形,发现其输出频率在70多us,该问题可以通过在QGC中PWM对应的参数进行修改即可。
  3. 在gazebo仿真中如果出现preflight failed:compass #0 uncalibrated. 解决方法是,先对固件进行make clean , 然后删除~/.ros/eeprom/parameters,即可.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

px4调试bug--添加mavlink_log_info信息 的相关文章

随机推荐

  • C中表达式、语句、代码块

    表达式 Expression 表达式 61 运算符 43 操作数 表达式必须有一个执行结果 xff0c 这个结果必须是一个值 xff0c 例如 3 4 43 5 的结果 17 xff0c a 61 c 61 d 61 10 的结果是 10
  • #ifndef #define #endif 防止头文件被重复引用

    想必很多人都看过 头文件中的 ifndef define endif 防止该头文件被重复引用 但是是否能理解 被重复引用 是什么意思 是不能在不同的两个文件中使用include来包含这个头文件吗 xff1f 如果头文件被重复引用了 xff0
  • C/C++报错:全局变量重定义或是多次定义

    很多人可能直接把全局变量写进 h文件 xff0c 然后用多个文件包含这个头文件 xff0c 编译时就会报错 xff1a 变量重定义 头文件的作用就是要给外部提供接口使用的 xff0c 所以请记住 xff0c 只在 h中做声明 xff0c 在
  • 字符串查找函数:strchr、strrchr、strchrnul、strstr、strrstr

    strchr char strchr const char str int ch 功能 xff1a 寻找字符串中某字符第一次出现的位置 参数 str 要查找的字符串或字符串指针 ch 要查找的字符 返回值 成功返回一个指向在字符串str中第
  • PX4 代码中 position_estimator_inav(互补滤波)理解

    Local position estimator 为卡尔曼滤波估计 position estimator inav 需要解决三个问题 xff1a 如何由加速度进行速度和位置估计 xff1b 加速度偏差的计算 xff1b 如何使用融合过程 借
  • ArduPilot-sitl仿真-Mission Planner联合显示

    ArduPilot sitl仿真 Mission Planner联合显示 To start the simulator first change directory to the vehicle directory For example
  • Ros_PX4_Mavros从零入门--哪些坑

    写在前面的话 xff1a 一定要确保mavros安装成功 我在安装mavros的时候采用的是官网默认的安装方式 xff0c 期间一定有Error出现 xff0c 没有成功 xff0c 导致后面需要补充安装一些东西 验证是否安装成功 xff0
  • PX4-mavros之Roslaunch使用 及流程介绍

    首先在Ros工程目录src下 xff0c 创建新的功能包 使用命令 catkin create pkg px4 launch 注意此处不需要添加任何依赖了 然后建立一个launch文件夹 xff0c 如下图所示 2 改写launch文件即可
  • 聊一聊那些应该了解的大佬(飞控,人工智能方向)

    写在前面的话 xff1a 以下内容与图片大多来自于网络 xff0c 如有侵权 xff0c 请告知我进行修改 部分评论仅为个人观点 xff0c 无人机方面大牛很多 xff0c 无法一一评说 xff0c 在此随意发挥 也欢迎各位看官补充完善 R
  • ArduPilot+mavros+gazebo+QGC联合仿真初体验

    首先给出最终效果图 xff1a 实现内容与PX4官网代码功能类似 xff0c 四旋翼飞机自动起飞至2 5m高度 xff0c 悬停一定时间 xff0c 然后自主降落 记录如下几个需要注意的地方 xff1a 一共使用到三个文件夹 xff0c 其
  • ArduPilot姿态控制方法解析---(倾转分离)

    先给出一些预备知识 xff1a 欧拉角 xff1a 即所谓的Roll Pitch Yaw 而事实上 xff0c 根据其定义 xff0c 欧拉角的具有不同的表示 存在先绕哪个轴 xff0c 后绕哪个轴转的差别 xff08 将旋转分解成绕三个轴
  • C中main函数解析

    参考链接 main函数不同写法 以下为main函数的6种不同写法 xff1a span class token function main span span class token punctuation span span class
  • ArduPilot姿态环控制-----传感器初始化

    参考链接 xff1a https blog csdn net lixiaoweimashixiao article details 80540295 首先我们假定从void AP Vehicle setup 开始 xff0c 这里是飞控所有
  • ArduPilot飞行前检查——PreArm解析

    ArduPilot飞行前检查 主要包括两个部分 1 初始化中遥控器输入检查 xff1b 2 1Hz解锁前检查 附 xff1a 显示地面站信息 参考文章 xff1a Ardupilot Pre Arm安全检查程序分析 1 初始化中遥控器输入检
  • ROS_PX4_gazebo学习记录

    在官方程序上 xff08 PX4 wiki上为offboard起飞到2m高度 xff09 进行更改 xff0c 实现首先起飞到固定点 xff08 x 61 1 y 61 2 z 61 5 然后按照给定角度飞行 补充 xff1a 最终实现效果
  • Rospy初次使用记录-定点飞行

    由于接触到pytorch xff0c 所以用python完成与ROS的通信 xff0c 下面例子为从程序中摘出来的一部分 xff0c 用到了ROS消息的订阅与发布 xff0c 服务的通信 xff0c 可以作为参考使用 xff1a span
  • 四旋翼飞行器数学模型

    最近接触到四旋翼无人机的位置控制方法 xff0c 就又了解了一下四旋翼飞机的数学模型 xff0c 现总结如下 xff1a 位置环 xff08 均定义在惯性坐标系下 xff09 P
  • 基于ROS与optitrack的四旋翼飞机开发流程

    本文将一些注意点记录下来 xff0c 适合于开发调试 xff1a 目前只是分段调试通了 xff0c 带后续联合开发的时候在来补充还有没有什么注意点 xff08 过程也算麻烦 xff0c 也算不麻烦 xff09 xff1b xff32 xff
  • ROS_调试(三) 打印输出

    ROS INFO 采用类似C语言的形式 ROS DEBUG ROS DEBUG STREAM 采用类似C 43 43 语言的形式打印 ROS DEBUG STREAM NAMED ROS DEBUG STREAM THROTTLE NAME
  • px4调试bug--添加mavlink_log_info信息

    写在前面的话 有一阵子没有看px4的代码了 由于项目和论文的需要 又要接触这个 其中又遇到一些新的问题 找到了一些新的解决方法 故在此记录一下 总是在几种飞控代码之间跳来跳去 没有认真研究一个 有点遗憾 PX4的代码调试还没有找到什么好的方