QGC局域网内连接PX4模拟器JMAVSim

news2024/10/6 18:23:50

环境

  • QGroundControl 开源地面站系统; 代码地址: https://github.com/mavlink/qgroundcontrol
  • PX4 开源飞控系统; 代码地址: https://github.com/PX4/PX4-Autopilot
    QGC可以直接下载运行包.
    PX4 请根据代码中的说明,进行环境的配置和运行.
    通过代码去build地面站和PX4的步骤见官网说明.

下面重点介绍,在局域网内,一台电脑运行QGC, 另一台电脑运行 PX4 模拟器. 如何通过端口进行连接.

我的本地环境

QGC 运行在 windows11 系统上;
模拟器JMAVSim 运行在优麒麟22.04上.

1. 启动模拟器

执行命令: make px4_sitl_default jmavsim
在这里插入图片描述
在这里插入图片描述
出现以上界面的话,表示模拟器已经成功启动,而且是待起飞状态.在界面上回车,我们会得到下面界面:
在这里插入图片描述
我们需要注意一下,上面那条信息, MAVLink only on localhost.
说是要设置参数能够使能网络. 我测试下了,设置了参数也还不能直接在局域网中连接,那位大牛知道这个怎么配置的话,可以告诉下,提前谢过.

上面这条的意思就是 mavlink模式是只能在本地使用,也就是你的QGC和模拟器在同一台电脑的话,会直接连接上. 但如果是我这样的环境,是无法连接的,mavlink是不会把数据通过端口发出去的. 地面站也就连接不上了.

2. 启动地面站

如图,地面站一直是处于断开连接状态.(界面我做了稍微的改动,大家不用太关注).
在这里插入图片描述

3. 如何启动模拟器,才能在局域网和QGC通信?

  • 我们首先去px4的官网看下文档,然后会看到要通过mavlink命令进行转发.
    在这里插入图片描述
    在这里插入图片描述
    重点是下看这段话
    在这里插入图片描述
    既然这样,那我们就按照文档中说的这个来.在模拟器界面我们输入mavlink看会出来什么?

pxh> mavlink

Description

This module implements the MAVLink protocol, which can be used on a Serial link or UDP network connect
Usage: mavlink [arguments…]
Commands:

start Start a new instance
[-d ] Select Serial Device
values: <file:dev>, default: /dev/ttyS1
[-b ] Baudrate (can also be p:<param_name>)
default: 57600
[-r ] Maximum sending data rate in B/s (if 0, use baudrate / 20)
default: 0
[-p] Enable Broadcast
[-u ] Select UDP Network Port (local)
default: 14556
[-o ] Select UDP Network Port (remote)
default: 14550
[-t ] Partner IP (broadcasting can be enabled via -p flag)
default: 127.0.0.1
[-m ] Mode: sets default streams and rates
values: custom|camera|onboard|osd|magic|config|iridium|minimal|extvision|extvisionmin|gimbal|uavionix,
[-n ] wifi/ethernet interface name
values: <interface_name>
[-f] Enable message forwarding to other Mavlink instances
[-w] Wait to send, until first message received
[-x] Enable FTP
[-z] Force hardware flow control always on
[-Z] Force hardware flow control always off

stop-all Stop all instances

stop Stop a running instance
[-u ] Select Mavlink instance via local Network Port
[-d ] Select Mavlink instance via Serial Device
values: <file:dev>

status Print status for all instances
[streams ] Print all enabled streams

stream Configure the sending rate of a stream for a running instance
[-u ] Select Mavlink instance via local Network Port
[-d ] Select Mavlink instance via Serial Device
values: <file:dev>
-s Mavlink stream to configure
-r Rate in Hz (0 = turn off, -1 = set to default)

boot_complete Enable sending of messages. (Must be) called as last step in startup script.
Command ‘mavlink’ failed, returned 1.

命令很多,我们按照刚才文档中说的 + 一个-p 试试.
输入: mavlink start -p 后,我们得到下面这个信息. 看结果,显然是不对的,怎么会去找ttyS1, 这应该是默认的串口.
[-d ] Select Serial Device
values: <file:dev>, default: /dev/ttyS1
也就是说,默认是选择串口设备的.
在这里插入图片描述
再看下mavlink的参数.
[-o ] Select UDP Network Port (remote)
default: 14550
发现 -o是UDP,用这个试试.
输入: mavlink start -p -o 14550

成功了.

在这里插入图片描述
再看下地面站,如下图,已经和远端的模拟器连接上了.
在这里插入图片描述

连接上,就可以通过地面站来操作模拟器了.
在这里插入图片描述

在这里插入图片描述

除了使用mavlink start -p -o 14550命令
还可以使用-t命令,和特定的IP通信.
mavlink start -p -t 192.168.x.x -o 14550

要停止所有飞机实例的话,可以通过 mavlink stop-all
在这里插入图片描述
地面站状态:

以上就可以在局域网内进行地面站和px4模拟器在不同电脑上进行通信.

当然,手机端安装QGC也可以进行对模拟器的操作,如下图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux 之五】 Linux中使用fdisk命令实现磁盘分区

最近由于工作的需要&#xff0c;初步研究了uboot中的fastboot实现方式。研究fastboot不可避免的需要了解磁盘分区的相关知识点&#xff0c;在linux下可以使用fdisk命令实现磁盘的分区。好了&#xff0c;下面步入正题。 1. 查看帮助信息&#xff08;fdisk --help&#xff09; …

计算机网络 - 传输层

Transport-Layer Services Transport layer, 传输层主要是完成进程(proces)到进程(process)之间的通讯的. 在传输层之下的IP协议, 提供的是best-effort的传输, 也就是对信息的正确性没有保证, 也就是IP的协议是unreliable的, TCP的协议是在IP协议至少提供可靠的数据传输. UDP…

Word批量更改图片环绕方式与=尺寸大小

前提&#xff1a;一份Word文档里面有100张图片&#xff0c;有大有小&#xff0c;需要将100张图片更改为统一大小&#xff0c;宽度与高度均为5厘米&#xff0c;同时环绕方式也需要改成四周型。 默认Word图片的默认环绕方式为嵌入型&#xff0c;需要统一更改为四周型&#xff0c;…

多元时间序列 | RBF径向基神经网络多变量时间序列预测(Matlab完整程序)

多元时间序列 | RBF径向基神经网络多变量时间序列预测(Matlab完整程序) 目录 多元时间序列 | RBF径向基神经网络多变量时间序列预测(Matlab完整程序)预测结果评价指标基本介绍程序设计参考资料预测结果 评价指标 训练集数据的R2为:0.99805 测试集数据的R2为:0.98351 训练…

二叉树最大宽度_深度优先方式_20230520

二叉树最大宽度_深度优先方式_20230520 前言 给定一颗二叉树&#xff0c;求解其最大宽度。定义每层宽度为该层最左和最右之间的长度&#xff0c;也即左右两个端点之间的所跨越的长度&#xff0c;两个端点直接可能会包含一些延伸到本层的空节点&#xff0c;这些空节点的长度由…

【小沐学NLP】Python实现聊天机器人(OpenAI,模型概述笔记)

&#x1f37a;NLP开发系列相关文章编写如下&#x1f37a;&#xff1a;1&#x1f388;【小沐学NLP】Python实现词云图&#x1f388;2&#x1f388;【小沐学NLP】Python实现图片文字识别&#x1f388;3&#x1f388;【小沐学NLP】Python实现中文、英文分词&#x1f388;4&#x1…

Springcloud1----->Hystrix

目录 雪崩问题服务降级原理实践order降级处理user降级处理 服务熔断原理实践 hystrix&#xff0c;英文意思是豪猪&#xff0c;全是是刺&#xff0c;一种保护机制&#xff0c;即熔断器。 主页&#xff1a;https://github.com/Netflix/Hystrix/ 雪崩问题 在微服务中&#xff0c;…

selenium自动化测试报告_selenium自动化测试断言

一、元素操作方法 方法&#xff1a; 1、.send_keys() # 输入方法 2、.click() # 点击方法 3、.clear() # 清空方法 复制 注意&#xff1a;在输入方法之前一定要清空操作!! # 导包 from time import sleep from selenium import webdriver# 实例化浏览器 driver webdriver…

这才是自动化测试,资深测试构建持续交付体系(高质量)持续集成...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 软件测试-自动化测…

OptimizePI仿真流程

OptimizePI软件介绍 OptimizePI是用于针对PI设计进行优化的一个设计流程&#xff0c;可以针对PDN的设计进行仿真计算&#xff0c;主要功能包括以下几个&#xff1a; PDN前仿真分析PDN后仿真分析PDN阻抗检查去耦电容的回路电感分析芯片的电源管脚的电感分析去耦电容最佳位置评…

一文参透AB斗篷的前世今生

做FP独立站的应该都对cloak斗篷不陌生&#xff0c;cloak已经成为出海营销行业的必备工具之一。尽管使用cloak并不能保证一定有效&#xff0c;但不使用cloak却也是不可行的。今天本文将详细讲解cloak系统的“前世今生”&#xff0c;以便让大家更好地了解cloak系统并能挑选到最适…

【中间件】通过 docker-compose 快速部署 Zookeeper 保姆级教程

文章目录 一、概述二、前期准备1&#xff09;部署 docker2&#xff09;部署 docker-compose 三、创建网络四、Zookeeper 编排部署1&#xff09;下载 Zookeeper2&#xff09;配置3&#xff09;启动脚本 bootstrap.sh4&#xff09;构建镜像 Dockerfile5&#xff09;编排 docker-c…

如何使用ChatGpt来学习和提问【对话ChatGPT】?

ChatGPT的不断发展和进步&#xff0c;我们需要工作中很多时候会用到ChatGPT&#xff0c;那么如何使用ChatGPT来解决我们工作中的问题呢&#xff1f; Q1如何向ChatGPT提问&#xff0c;从而更快解决我们的问题&#xff1f; ChatGPT&#xff1a;以下是向ChatGPT提问的一些提示&a…

CISSP和Security+的区别和学习建议

当谈到网络安全认证时&#xff0c;经常有朋友问我CISSP 与 Security认证。两者都是业内比较认可&#xff0c;对实际工作有所帮助的认证&#xff0c;但是哪一个适合自己呢&#xff0c;区别又是什么呢&#xff1f; 在深入研究细节之前&#xff0c;让我们先简要了解一下 CISSP 与 …

深度学习之自编码器实现——实现图像去噪

大家好&#xff0c;我是带我去滑雪&#xff01; 自编码器是一种无监督学习的神经网络&#xff0c;是一种数据压缩算法&#xff0c;主要用于数据降维和特征提取。它的基本思想是将输入数据经过一个编码器映射到隐藏层&#xff0c;再通过一个解码器映射到输出层&#xff0c;使得输…

数字宁夏“1244+N”行动进行时,实在智能以AI为宁夏全区县数字化转型加“数”度

建设数字中国是数字时代推进中国式现代化的重要引擎&#xff0c;是构筑国家竞争新优势的有力支撑。现如今&#xff0c;政府部门发展数字经济已然成为新科技浪潮下的战略选择。可以预见&#xff0c;在数字化浪潮的推动下&#xff0c;中国经济将迎来新的高峰。 近日&#xff0c;宁…

English Learning - L3 作业打卡 Lesson2 Day13 2023.5.17 周三

English Learning - L3 作业打卡 Lesson2 Day13 2023.5.17 周三 引言&#x1f349;句1: A blacklist is illegal now.成分划分弱读爆破语调 &#x1f349;句2: But at one time, some businesses refused to employ people who were on a blacklist for belonging to unpopular…

【正点原子STM32连载】 第十一章 STM32时钟配置 摘自【正点原子】STM32F103 战舰开发指南V1.2

1&#xff09;实验平台&#xff1a;正点原子stm32f103战舰开发板V4 2&#xff09;平台购买地址&#xff1a;https://detail.tmall.com/item.htm?id609294757420 3&#xff09;全套实验源码手册视频下载地址&#xff1a; http://www.openedv.com/thread-340252-1-1.html 第十一…

log4net在Asp.net MVC4中的使用

1、安装log4net插件 新建Asp.net MVC4项目&#xff0c;并在Nuget控制台输入命令&#xff0c;或者直接搜索log4net在线安装&#xff0c;安装log4net >Install-Package log4net -Version 2.0.15 2、配置web.config文件 <?xml version"1.0" encoding"ut…

小试牛刀:应用深度强化学习优化文本摘要思路及在裁判文书摘要上的实践效果

一、引言 近期&#xff0c;随着大模型的出现&#xff0c;强化学习再一次的引起了本人的兴趣&#xff0c;本文将应用深度强化学习来优化文本摘要模型&#xff0c;使生成的摘要更加的流畅。在此之前&#xff0c;大家都采用了很多种方式训练摘要系统&#xff0c;例如&#xff1a;…