【无人机学习篇】构建mavros机载电脑连接,从机载电脑获取pixhawk数据

(本文基于的pixhawk版本:6X minibase V2.2 ,固件:apm)
整个的步骤(baseline):
具体的每一步都可以在网上查到教程,这里只是梳理出一个流程。并且ubantu与ros的版本也不是必须和我的一致,也可以是ubantu18.04与ros melodic

  1. 在机载电脑上安装ubantu20.04(ros必备运行环境)

  2. 安装ros noetic(mavros必备运行环境)

  3. 安装mavros功能包(上位机与下位机的mavlink通信的渠道)

  4. 安装QGroundControL地面站(调试pixhawk参数必备软件)

  5. 用typec数据线,一端连接pixhawk,一端连接机载电脑,打开QGroundControL地面站,在参数设置中搜索“serial”,将serial0_protocol改为mavlink1;serial0_baud改为921600.
    如图:
    在这里插入图片描述

  6. 不要拔掉数据线,关闭QGroundControL地面站,之后在终端窗口运行:

ls /dev/

找到飞控串口对应在机载电脑中的名称。
可能是;ttyACM0,或者是ttyACM1,或者是ttyUSB0,ttyUSB1。总之,要确认是哪一个。
在我实际找的过程中,找不同会发现一下子多出来两个,那就说明两个都可以用。
8. 之后运行:

roscd mavros
cd launch
sudo gedit apm.launch

打开文件之后要做的事情:
检查其中的串口是否为你刚才找不同找到的串口名称,如果不是,则修改过来,其次要修改波特率为921600。如图:
在这里插入图片描述
9. 准备好这一切之后可以运行mavros命令:

sudo chmod 777 /dev/ttyACM0     //先给串口赋予使用权限,后面运行节点才有权限使用该串口
roslaunch mavros apm.launch fcu_url:="/dev/ttyACM0:921600"

注意你的串口不一定是ttyACM0,这里要根据你的实际情况改。

会看到mavros已经运行起来了:(一个很重要的点是:运行上面的代码的时候一定要先关闭QGroundControL地面站,不然会显示busy,无法访问串口,从而停止运行)

在这里插入图片描述

之后可以另外打开一个终端,使用rostopic list命令来查看pixhawk已经发布的话题:
在这里插入图片描述
在其中找到了我需要的imu信息。
然后使用rostopic echo 命令加上话题名称即可打印输出这个信息:

rostopic echo /mavros/imu/data

即可出现imu数据:

在这里插入图片描述
ps:如果出现了各个程序都没问题,但是最后rostopic /mavros/imu/data的时候结果为空,可以检查如下几个问题:

  • 有没有运行sudo chmod 777 赋予串口权限?
  • 有没有正确修改apm.launch文件?
  • 如果都没有问题,那就按照上面的顺序重新来一遍,就基本上OK了。
    再插一句话:如果你用的是px4插件,则把上面命令终端apm.launch改为px4.launch然后运行即可。道理是一样的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/260119.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python - 深夜数据结构与算法之 Map Set

目录 一.引言 二.Map 与 Set 1.Hash Table 2.Hash Function 3.Hash Collisions 4.Java/Python Code 三.经典算法实战 1.Two-Sum [1] 2.Group-Anagrams [49] 3.Valid-Anagram [242] 四.总结 一.引言 前面介绍了列表 List 及其衍生的栈 Stack 与队列 Queue&#xff0…

VR全景技术在政务服务中有哪些应用,为政务服务带来什么便利

引言: 随着科技的不断发展,虚拟现实(VR)全景技术正逐渐成为政务服务领域的一项重要工具。其独特的沉浸式体验为政务服务带来了全新的便利,提升了公众参与的积极性。 一、VR全景技术在政务服务中的应用 1.虚拟实景政务…

多表插入、删除操作(批量)——后端

多表插入 场景:当添加一个菜品时,还需要记录菜品的口味信息,因此需要对菜品表(dish)和口味表(dish_flavor)同时进行插入操作。 两个表的字段: 代码思路:由DishControll…

市场全局复盘 20231220

短线核心:不参与任何级别的调整 昨日回顾: SELECT CODE,成交额排名,净流入排名,代码,名称,DDE大单金额,涨幅,主力净额,DDE大单净量,CONVERT(DATETIME, 最后封板, 120) AS 最后封板,涨停分析,_3日涨幅百分比,连板天,封单额,封单额排名,DDE散户数量,总金额…

Android Studio使用Genymotion

1. Genymotion介绍 GenyMotion速度之快令人发指,模拟效果堪比真机调试,支持绝大部分的模拟器功能,甚至包括语音,Google Now,支持eclipse, android studio。非常适合用来开发和演示效果。 2. Genymotion下载 Genymotio…

CentOS操作学习(二)

上一篇学习了CentOS的常用指令CentOS指令学习-CSDN博客 现在我们接着学习 一、Vi编辑器 这是CentOS中自带的编辑器 三种模式 进入编辑模式后 i:在光标所在字符前开始插入a:在光标所在字符串后开始插入o:在光标所在行的下面另起一新行插入…

Java操作Word修订功能:启用、接受、拒绝、获取修订

Word的修订功能是一种在文档中进行编辑和审阅的功能。它允许多个用户对同一文档进行修改并跟踪这些修改,以便进行审查和接受或拒绝修改。修订功能通常用于团队合作、专业编辑和文件审查等场景。 本文将从以下几个方面介绍如何使用免费工具Free Spire.Doc for Java在…

使用包、Crate 和模块管理项目(下)

1、使用 use 关键字将路径引入作用域 在之前的示例中我们引用模块中的函数或者结构体之类的,都是需要用到相对路径或者绝对路径去引用,然尔在这里,有一种方法可以简化这个过程。我们可以使用 use 关键字创建一个短路径,然后就可以…

创建Maven Web工程

目录下也会有对应的生命周期。其中常用的是:clean、compile、package、install。 比如这里install ,如果其他项目需要将这里的模块作为依赖使用,那就可以 install 。安装到本地仓库的位置: Java的Web工程,所以我们要选…

Ubuntu上安装MySQL以及hive

Ubuntu上安装MySQL以及hive 一、安装MySQL1、更新软件源2、安装 MySQL3、启动 MySQL,并登录 MySQL4、关闭 MySQL 指令:5、修改登录密码6、关闭 mysql,然后重新进入 二、安装hive1、创建 hive 的数据库2、下载压缩包3、修改环境配置文件并激活…

【ECharts】折线图

文章目录 折线图1折线图2折线图3示例 参考: Echarts官网 Echarts 配置项 折线图1 带X轴、Y轴标记线,其中X轴是’category’ 类目轴,适用于离散的类目数据。 let myChart echarts.init(this.$refs.line_chart2); let yList [400, 500, 6…

使用postman时,报错SSL Error: Unable to verify the first certificate

开发中使用postman调用接口,出现以下问题,在确认路径、参数、请求方式均为正确的情况下 解决方法 File - Settings -> SSL certification verification 关闭 找到图中配置,这里默认是打开状态,把它关闭即可:ON …

智能化制造与工业自动化:发展历程、问题与解决、未来趋势及全球应用

导言 智能化制造与工业自动化正成为全球制造业的主要趋势。本文将深入研究其发展历程、遇到的问题及解决过程、未来的可用范围,以及在各国的应用和未来的研究趋势。同时,将讨论在哪些方面能够取得胜利,并在哪些方面发力,实现自身价…

JavaWeb笔记之前端开发HTML

一、引言 1.1HTML概念 网页,是网站中的一个页面,通常是网页是构成网站的基本元素,是承载各种网站应用的平台。通俗的说,网站就是由网页组成的。通常我们看到的网页都是以htm或html后缀结尾的文件,俗称 HTML文件。 …

Docker 网络模式 -day05

docker 启动时候还会有&#xff0c;名为docker0的虚拟网桥&#xff0c;注意网址为 127.0.0.1 [rootiZuf6hxabqikytnrumsi4gZ ~]# ifconfig docker0: flags4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.2…

ChatGPT如何计算token数?

GPT 不是适用于某一门语言的大型语言模型&#xff0c;它适用于几乎所有流行的自然语言。所以 GPT 的 token 需要 兼容 几乎人类的所有自然语言&#xff0c;那意味着 GPT 有一个非常全的 token 词汇表&#xff0c;它能表达出所有人类的自然语言。如何实现这个目的呢&#xff1f;…

RK3568平台开发系列讲解(Linux系统篇)GPIO接口介绍

🚀返回专栏总目录 文章目录 一、GPIO 子系统接口二、GPIO描述符相关结构体沉淀、分享、成长,让自己和他人都能有所收获!😄 📢在目前的 Linux 内核主线中,GPIO(通用输入/输出)子系统存在两个版本,这里将两个版本区分为新版本和旧版本。新版本 GPIO 子系统接口是基于…

【项目管理】redmine

Redmine是用Ruby开发的基于web的项目管理软件&#xff0c;是用ROR框架开发的一套跨平台项目管理系统&#xff0c;据说是源于Basecamp的ror版而来&#xff0c;支持多种数据库&#xff0c;有不少自己独特的功能&#xff0c;例如提供wiki、新闻台等&#xff0c;还可以集成其他版本…

nodejs微信小程序+python+PHP购物商城网站-计算机毕业设计推荐

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…

防反接电路与MOS管防反接深入解析

一、经典防反接电路 1、二极管防反接 这种电路使用一个二极管将电源的正极与负极相连&#xff0c;当电源的极性正确时&#xff0c;二极管处于正向导通状态&#xff0c;电流可以正常流过&#xff1b;而当电源的极性反接时&#xff0c;二极管处于反向截止状态&#xff0c;电流无…