(2)(2.14) SPL Satellite Telemetry

文章目录

前言

1 本地 Wi-Fi(费用:30 美元以上,范围:室内)

2 蜂窝电话(费用:100 美元以上,范围:蜂窝电话覆盖区域)

3 手机+卫星(费用:400 美元以上,范围:全球)


前言

直接无线电遥测通信链路只能在可视视线范围内使用。如果你的 UV 需要在视线范围之外保持连接,则需要使用某种转发器,如手机信号塔或通信卫星。除非你能负担得起专用通道的费用,否则蜂窝或卫星通信服务需要与称为互联网的公共计算机网络打交道。


将无人驾驶车辆与互联网或私人计算机网络连接起来,即使在室内或可视范围内也能发挥作用。

SPL 299 是一个全球卫星遥测系统,用于由 ArduPilot 自动驾驶仪控制的自主飞行器。通过 SPL,你可以使用 Mission PlannerQGroundControl GCS 从地球的另一端跟踪、指挥和控制你的太阳能动力船、飞机、飞艇和其他自主飞行器。SPL 支持 TCP/IP 互联网连接和 Rock Seven Mobile 提供的铱星短脉冲数据(ISBD)卫星通信技术。

SPL 的主要软件组件是 UV Radio RoomUV HubUV 无线电室是一个嵌入式应用程序,在与自动驾驶仪连接的配套计算机上运行。UV Hub 是在服务器计算机上运行的代理应用程序。

这篇文章介绍了如何仅用几美元就开始使用 SPL。前提是你已经拥有一台装有 ArduPilot 自动驾驶仪UV 和一台装有 Mission PlannerQGroundControl GCS 的计算机。

1 本地 Wi-Fi(费用:30 美元以上,范围:室内)

这是 SPL 的基本配置。

你将需要:

  • 连接到自动驾驶仪Raspberry Pi 配套计算机,以及;
  • 采用 x86_64 CPU 架构、至少 2GB 内存并安装了 Docker 的计算机。

两台电脑必须连接到同一个网络。

Docker 25 提供了在一个称为容器的松散隔离环境中打包和运行应用程序的能力。Docker 可以安装在 WindowsLinuxMac 计算机上。如果你还没有尝试过 Docker,你应该尝试一下(你会后悔没有早点尝试)。

按照以下说明(these instructions) 57Docker 中运行 UV Hub。使用 Wi-Fi 将树莓派连接到本地网络,然后按照以下说明(these instructions) 187 在树莓派上安装 UV 广播室。在 radioroom.conf 中仅启用 TCP 通道。

一切安装完毕后,通过 TCP 端口 5760GCS 连接到 UV Hub 服务器,并尝试控制飞行器。

2 蜂窝电话(费用:100 美元以上,范围:蜂窝电话覆盖区域)

这种 SPL 配置增加了一个蜂窝调制解调器,并在亚马逊网络服务 57 公共云中运行服务器软件(Amazon Web Services)。

你将需要:

  • 连接到自动驾驶仪 Raspberry Pi 配套计算机;
  • 连接到 Raspberry Pi 的蜂窝调制解调器和数据计划;
  • 亚马逊网络服务账户。

由于蜂窝数据服务与互联网协同工作,UV Hub 必须在一台可从互联网访问的计算机上运行。如今,获得这种计算机的最简单方法是从亚马逊 AWS、微软 Azure 或谷歌云平台等公共云提供商处租用。对于亚马逊 AWS 云,SPL 提供了从头到尾完全自动化部署的工具。

按照以下说明(these instructions) 283 将 UV Hub 部署到亚马逊 AWS。按照以下说明(these instructions) 187 在 Raspberry PI 上安装 UV Radio Room。在 /etc/radioroom.conf 中仅启用 TCP 通道。

AWS 部署使用 t3a.small EC2 实例,每小时成本约为 0.0188 美元。

如果你对蜂窝调制解调器和数据计划没有偏好,请查看 HologramNova 调制解调器和全球物联网 SIM 卡。

3 手机+卫星(费用:400 美元以上,范围:全球)

这种配置增加了一个 RockBLOCK 卫星收发器。

你将需要:

  • 连接到自动驾驶仪Raspberry Pi 配套计算机;
  • 手机调制解调器和数据计划;
  • 亚马逊网络服务账户;
  • 已激活的 RockBLOCK Mk2RockBLOCK 9603 铱星卫星通信模块通过 FTDI USBUART 电缆与 Raspberry Pi 相连。

按照以下说明(these instructions) 283 将 UV Hub 部署到亚马逊网络服务。按照以下说明(these instructions) 187 在 Raspberry PI 上安装 UV Radio Room。在 /etc/radioroom.conf 中启用 TCPISBD 通道。

当两个信道都启用时,报告周期最小的信道称为主信道,另一个信道称为次信道。UV 无线电室会首先尝试使用主信道发送移动发起的信息。当信息无法在次要信道的报告期内通过主要信道发送时,则使用次要信道。

请分享你使用 SPL 的经验。将您的问题和建议发布到支持页面(support page) 47 的讨论区。

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

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

相关文章

ChatGPT学习第一周

📖 学习目标 掌握ChatGPT基础知识 理解ChatGPT的基本功能和工作原理。认识到ChatGPT在日常生活和业务中的潜在应用。 了解AI和机器学习的基本概念 获取人工智能(AI)和机器学习(ML)的初步了解。理解这些技术是如何支撑…

介绍一个关于 JSON 可视化的网站

最近在看到一个比较好玩的网站,可以将 JSON以可视化的方式展现出现,比如存在一下JSON数据: {"id": "f3bbc3bc-9f34-4bf7-8a0f-7e6f6e6fbb9a","isActive": false,"age": 25,"name": "…

阿里云服务器Windows系统无法远程连接到服务器桌面怎么办,选择通过Workbench远程连接进入不是桌面,而是命令行界面

最近发现阿里云的Windows系统服务器,点击“远程连接”后,如果直接点击默认的“通过Workbench远程连接”。 并不能直接进入服务器桌面,而是进入了命令行界面(我记得以前是可以的) 那么如何进入Windows系统服务器桌面呢 …

C语言第二十弹---指针(四)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 指针 1、字符指针变量 2、数组指针变量 2.1、数组指针变量是什么? 2.2、数组指针变量怎么初始化 3、⼆维数组传参的本质 4、函数指针变量 4.1…

蓝桥杯Web应用开发-CSS3 新特性

CSS3 新特性 专栏持续更新中 在前面我们已经学习了元素选择器、id 选择器和类选择器,我们可以通过标签名、id 名、类名给指定元素设置样式。 现在我们继续选择器之旅,学习 CSS3 中新增的三类选择器,分别是: • 属性选择器 • 子…

Mysql进阶(锁)

一、锁概述 两个事务的写操作之间的互相影响。隔离性要求同一时刻只能有一个事务对数据进行写操作,InnoDB通过锁机制来保证这一点。 锁机制基本原理: 事务在修改数据之前,需要先获得相应的锁;获得锁之后,事务便可以…

day03.C++函数与指针(含new与delete关键字,函数指针,指针函数,指针数组)

一.指针 #include<iostream> using namespace std; #define pi 3.14159//定义常量int main(){cout<<pi<<endl;int a10;int *pNULL;//定义指针p&a;cout<<"a的地址为&#xff1a;"<<p<<endl;cout<<"a"<&l…

python函数入参、类成员引用支持灵活参数可配

一、背景 python编码时&#xff0c;有可能在不同场景下输入修改的参数&#xff0c;不方便直接写死&#xff0c;因此需要灵活配置这些函数入参&#xff0c;类成员 二、函数入参支持灵活可配 场景&#xff1a;如下场景&#xff0c;对于hello函数&#xff0c;不同场景下想要对不…

如何修改远程端服务器密钥

前言 一段时间没改密码后&#xff0c;远程就会自动提示CtrlAltEnd键修改密码。但我电脑是笔记本&#xff0c;没有end键。打开屏幕键盘按这三个键也没用。 解决方法 打开远程 1、远程端WINC 输入osk 可以发现打开了屏幕键盘 2、电脑键盘同时按住CtrlAlt&#xff08;若自身电…

学习Spring的第十六天

AOP底层两种生成Proxy的方式 我来解释这两种方式 1 目标类有接口 , 调用JDK的动态代理实现 2 目标类没有接口 , 用Cglib实现 , 即生成目标类的子类 , 来实现动态代理 , 所以要求目标类不能时final修饰的 . (若有接口 , 也可用Cglib方式实现 , 需要手动配置<aop: config pr…

java设计模式- 建造者模式

一 需求以及实现方式 1.1 需求描述 我们要创建一个表示汽车的复杂对象&#xff0c;汽车包含发动机、轮胎和座椅等部分。用传统方式创建&#xff0c;代码如下 1.2 传统实现方式 1.抽象类 public abstract class BuildCarAbstaract {//引擎public abstract void buildEng…

Swift Combine 管道 从入门到精通三

Combine 系列 Swift Combine 从入门到精通一Swift Combine 发布者订阅者操作者 从入门到精通二 1. 用弹珠图描述管道 函数响应式编程的管道可能难以理解。 发布者生成和发送数据&#xff0c;操作符对该数据做出响应并有可能更改它&#xff0c;订阅者请求并接收这些数据。 这…

Python程序员面试题精选(1)

本文精心挑选了10道Python程序员面试题&#xff0c;覆盖了Python的多个核心领域&#xff0c;包括装饰器、lambda函数、列表推导式、生成器、全局解释器锁(GIL)、单例模式以及上下文管理器等。每道题都附有简洁的代码示例&#xff0c;帮助读者更好地理解和应用相关知识点。 题目…

Python模拟点赞助手

背景 之前公司一直会安排各种学习任务&#xff0c;视频章节很多的视频&#xff0c;有些是技术的有些是政策相关的&#xff0c;如果没有按时完成学习任务会被通报。但是&#xff0c;这些学习内容不一定有帮助&#xff0c;所以大家就养成了刷课的习惯&#xff0c;也就是点开视频…

服务器运存使用率多少正常?

服务器运存使用率多少正常&#xff0c;这是一个相对主观的问题&#xff0c;因为服务器的正常运行不仅取决于运存使用率&#xff0c;还与服务器的工作负载、应用程序的特性和需求、服务器的配置和用途等多种因素有关。然而&#xff0c;一般来说&#xff0c;大多数服务器在运存使…

###C语言程序设计-----C语言学习(10)#函数再探

前言&#xff1a;感谢您的关注哦&#xff0c;我会持续更新编程相关知识&#xff0c;愿您在这里有所收获。如果有任何问题&#xff0c;欢迎沟通交流&#xff01;期待与您在学习编程的道路上共同进步。 目录 一. 基础知识的学习 1.不返回结果函数 2.局部变量 3.全局变量 4.…

AIGC ChatGPT4 实战案例教你VLOOKUP用法

实际需求&#xff1a; 像这样的案例可以通过VLOOKUP来完成&#xff0c;如果不会使用VLOOKUP也没有关系&#xff0c;我们可以先让ChatGPT来帮我们介绍一下VLOOKUP函数的具体用法。 VLOOKUP是Excel中的一个非常有用的函数&#xff0c;用于查找和检索数据。"V"在VLOOKUP…

Java面向对象 this

this 在Java中&#xff0c;this 是一个特殊的引用变量&#xff0c;它引用了当前对象实例。当在类的非静态方法或构造方法中使用时&#xff0c;this 关键字指代当前的对象实例。它经常用于区分对象的成员变量和局部变量&#xff0c;或者调用其他重载的方法。 以下是一些使用 t…

锁(二)队列同步器AQS

一、队列同步器AQS 1、定义 用来构建锁或者其他同步组件的基础框架&#xff0c;它使用了一个int成员变量表示同步状态&#xff0c;通过内置的FIFO队列来完成资源获取线程的排队工作。是实现锁的关键。 2、实现 同步器的设计是基于模板方法模式的&#xff0c;也就是说&#…

Ubuntu22.04切换系统cuda版本

由于最近项目要求的cuda版本有差异&#xff0c;而在Ubuntu中可以通过切换cuda来满足需求&#xff0c;现记录如下。 1、按照 Ubuntu22.04与深度学习配置 中的cuda安装章节&#xff0c;将需要的cuda版本下载到本地并进行安装。 2、cuda安装完成后修改bashrc文件内容 sudo gedit …
最新文章