• 飞控常见问题汇总


    1. mavros不能正常通信

    失败原因如下:

    • 用万用表检查Tx,Rx,GND的线是否断了,杜邦线很容易线芯断掉。
    • USB转TTL的小板子是否工作正常,使用ls -l /dev/ | grep ttyUSB来检查设备是否插入以及硬件绑定是否正确。
    • 打开地面站GQC,检查飞控参数,搜索mav,一般mav0设置为飞控硬件接口Telem1,mav1设置为飞控硬件接口Telem2。我们通常将Telem1用作飞机和地面站通信(接Xbee设备)。所以一般用Telem2上接USB转TTL的板子和机载电脑通信,这里forward参数设置1,Mode改为onboard,波特率设置921600或者115200(两个波特率都试试,因为是线直接连接的,波特率可以设置高一点)若mavros采用空中无线传输,波特率请设置为57600。
    • 使用roscd mavros & cd launch查看mavros px4.launch文件端口号/dev/ttyUSB0:921600或者/dev/:921600,或者波特率改为115200

    成功现象

    终端出现 High IMU detected等等字样说明检测到飞控的IMU了。已经可以正常通信了。

    2. 飞控不能从T265获得xy位置

    正常步骤

    • 下载mavros_vision_pose_cius
    • roslaunch vision_to_mavros t265_all_node.launch,此时应该可以获取到/mavros/vision_pose/pose中消息。
    • 确保安装mavros-extras这个包,方法有两种,最简单的是sudo apt-get install ros-noetic-mavros-extras,复杂点的是源码安装的。有了这个包才能将视觉位姿信息传输给飞控(这个问题在kun飞机中很重要)。上述问题根源在于vision_pose_estimation这个包在mavros_extras。因为源码安装的包一定会包含这个 mavros_extras package,所以可以顺利开启这个plugin。无论哪种方法,在开启mavros时候,产生如下输出,说明vision_pose_estimation这个plugin加载成功了。
      [ INFO] [1682320781.289735374]: Plugin vision_pose_estimate loaded
      [ INFO] [1682320781.347487110]: Plugin vision_pose_estimate initialized
      [ INFO] [1682320781.349274770]: Plugin vision_speed_estimate loaded
      [ INFO] [1682320781.375493995]: Plugin vision_speed_estimate initialize
      
      • 1
      • 2
      • 3
      • 4
    • 配置飞控参数中ekf2_aid_mask中使用vision,hgt_mode使用vision
    • 查看/mavros/local_position/pose是否有消息。
  • 相关阅读:
    贪心算法练习day.4
    PyQt 定义控件SwitchButton 指南
    src与href的区别?
    浏览器发送请求的方法
    chrome 浏览器个别字体模糊不清
    406. 根据身高重建队列
    关于Ajax
    绘制核密度估计图
    蓝牙学习四(广播)
    机器学习第11天:降维
  • 原文地址:https://blog.csdn.net/boyhoodme/article/details/126578362