(2)(2.10) LTM telemetry

news/2024/2/27 21:56:23

文章目录

前言

1 协议概述

2 配置

3 带FPV视频发射器的使用示例

4 使用TCM3105的FSK调制解调器示例


前言

轻量级 TeleMetry 协议 (LTM) 是一种单向通信协议(从飞行器下行的数据链路),可让你以低带宽/低波特率(通常为 2400 波特)发送最重要的飞行器数据。


1 协议概述

轻量级 TeleMetry 协议 (LTM) 是一种单向通信协议(从飞行器下行的数据链路),可让你以低带宽/低波特率(通常为 2400 波特)发送最重要的飞行器数据。

协议由 KipK 引入,在他的贫民窟站中使用。

典型的使用案例是天线跟踪,当来自飞行控制器(FC)的串行遥测数据被频移键控调制(FSK)调制解调器转换为某种音频信号,通过视频发射器的音频通道传输到地面视频接收器时。然后由其他 FSK 调制解调器将其转换回数字信号,并在天线跟踪器 (AT) 中进行处理,也可能在地面控制站 (GCS) 中进行处理。

ardupilot 端执行的协议帧类型。

1. G-Frame (GPS)

  • 包含经度、纬度、GPS 地面速度、可见卫星数量、GPS 定位类型;
  • 大小为 18 字节,发送频率为 2Hz

2. A-Frame (Attitude)

  • 包含飞行器姿态、航向;
  • 10B / 5 Hz

3. S-Frame (Status)

  • 包含电池电压、电流、接收器 RSSIAHRS 提供的空速;
  • 11B / 2 Hz

协议限制:

GPS 定位数据类型仅使用 2 位 - 可能的值列表为 0(无 GPS 定位)、12D 定位)、23D 定位)。超过 2GPS 定位值将映射到值 2

LTM 遥测有关的链接:

  • GhettoStation 天线跟踪器:https://github.com/KipK/Ghettostation;
  • LTM 协议的 iNAV 文档:https://github.com/iNavFlight/inav/wiki/Lightweight-Telemetry-(LTM);
  • 协议概述请访问 quadmeup.com:LTM - Light Telemetry Protocol | QuadMeUp;
  • 用于 Arduino ProMiniESP8266LTMMAVLink 转换器:https://github.com/vierfuffzig/LTM2MAVLink。

2 配置

必须将参数 SERIALX_PROTOCOL 设为 25,才能在给定串行端口上启用 FCLTM 输出。请注意,只支持一个 LTM 输出端口。如果将多个串行端口设置为 LTM 输出端口,则只有在串行驱动程序初始化过程中找到的第一个串行端口才会被分配为 LTM 遥测输出端口。

Note

不要忘记将 LTM 遥测端口的波特率设置为适当的值。如果使用 FSK 调制解调器,波特率值取决于调制解调器的性能。

此外,并非所有自动驾驶仪的串行端口都支持 1(= 1200 波特)的最低波特率设置。在基于 STM32F4xx F7xx自动驾驶仪上,这些串行端口通常是 USART 16,在整个系统时钟上运行。如果设置为 1200 波特,这些端口将默认为 19200 波特。如果在 1200 波特下无法获得正确的 LTM 遥测输出,请尝试使用 USART 16 以外的串行端口,或者选择 2400 波特。在基于 STM32H7 的电路板上,2400 波特是支持的最低 UART 波特率。有关 UARTSERIALn 映射的更多信息,请查看飞行控制器的硬件页面。

3 带FPV视频发射器的使用示例

4 使用TCM3105的FSK调制解调器示例

使用 TCM3105 芯片是 FSK 调制解调器的可能性之一。调制解调器原理图和电路板的 Eagle 文件可在 https://github.com/kh4/FSK_modem 上找到。

该调制解调器可在 12002400 波特率下工作,波特率取决于所使用的振荡器。

使用 TCM3105FSK 调制解调器示意图示例

使用 TCM3105FSK 调制解调器照片

Tip

使用 8 MHz 振荡器使调制解调器以 2400 波特工作。


http://www.ppmy.cn/news/1338240.html

相关文章

【ArcGIS微课1000例】0099:土地利用变化分析

本实验讲述在ArcGIS软件中基于两期土地利用数据,做土地利用变化分析。 文章目录 一、实验描述二、实验过程三、注意事项一、实验描述 对城市土地利用情况进行分析时,需要考虑不同时期土地利用图层在空间上的差异性,如农用地转建筑用地的空间变化。而该变化过程表现为各时期…

CUDA 笔记

CUDA笔记 cuda 内存管理 cuda通过内存分配、数据传递、内存初始化、内存释放进行内存管理; Standard C FunctionCUDA C FunctionmalloccudaMallocmemcpycudaMemcpymemsetcudaMemsetfreecudaFree 内存分配 主机内存分配:extern void malloc(unsigned…

【Algorithms 4】算法(第4版)学习笔记 02 - 1.4 算法分析

文章目录 前言参考目录学习笔记1:科学方法2:观察举例:三数之和3:近似4:增长数量级4.1:二分查找 demo4.2:二分查找代码实现4.3:二分查找比较次数的证明(比较次数最多为lgN…

242. 有效的字母异位词(力扣LeetCode)

文章目录 242. 有效的字母异位词题目描述c代码 242. 有效的字母异位词 题目描述 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。 示例 …

EasyExcel使用,实体导入导出

简介 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中…

Linux中线程池及gdb调试多线程

线程池的概念 概念: 通俗的讲就是一个线程的池子,可以循环的完成任务的一组线程集合必要性: 我们平时创建一个线程,完成某一个任务,等待线程的退出。但当需要创建大量的线程时,假设T1为创建线程时间&#…

【思科】 GRE VPN 的实验配置

【思科】GRE VPN 的实验配置 前言报文格式 实验需求配置拓扑GRE配置步骤R1基础配置GRE 配置 ISP_R2基础配置 R3基础配置GRE 配置 PCPC1PC2 抓包检查OSPF建立GRE隧道建立 配置文档 前言 VPN :(Virtual Private Network),即“虚拟专…

DevSecOps 参考模型介绍

目录 一、参考模型概述 1.1 概述 二、参考模型分类 2.1 DevOps 组织型模型 2.1.1 DevOps 关键特性 2.1.1.1 模型特性图 2.1.1.2 特性讲解 2.1.1.2.1 自动化 2.1.1.2.2 多边协作 2.1.1.2.3 持续集成 2.1.1.2.4 配置管理 2.1.2 DevOps 生命周期 2.1.2.1 研发过程划分…

一次Rust重写基础软件的实践(三)

前言 受到2022年“谷歌使用Rust重写Android系统且所有Rust代码的内存安全漏洞为零” [1] 的启发,最近笔者怀着浓厚的兴趣也顺应Rust 的潮流,尝试着将一款C语言开发的基础软件转化为 Rust 语言。本文的主要目的是通过记录此次转化过程中遇到的比较常见且有…

TOP100 矩阵

1.73. 矩阵置零 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 提示&#xff1a; m matrix.lengthn matrix[0].length1 < m, n < 200-2^31 < matrix[i][j] < 2^31 - 1 思路&#xf…

山体滑坡在线安全监测预警系统(解决方案)

在近年来&#xff0c;随着全球气候变化的影响&#xff0c;山体滑坡等自然灾害频发&#xff0c;给人们的生命财产安全带来了严重威胁。为了有效预防和减少山体滑坡带来的危害&#xff0c;许多地方开始在山上安装山体滑坡在线安全监测预警系统&#xff08;解决方案&#xff09;。…

【极数系列】Flink集成DataSource读取Socket请求数据(09)

文章目录 01 引言02 简介概述03 基于socket套接字读取数据3.1 从套接字读取。元素可以由分隔符分隔。3.2 windows安装netcat工具&#xff08;1&#xff09;下载netcat工具&#xff08;2&#xff09;安装部署&#xff08;3&#xff09;启动socket端口监听 04 源码实战demo4.1 po…

【C++入门到精通】特殊类的设计 | 单例模式 [ C++入门 ]

阅读导航 引言一、设计模式概念&#xff08;了解&#xff09;二、单例模式1. 饿汉模式&#xff08;1&#xff09;概念&#xff08;2&#xff09;模拟实现&#xff08;3&#xff09;优缺点&#xff08;4&#xff09;适用场景 2. 懒汉模式&#xff08;1&#xff09;概念&#xff…

支付宝支付功能解析,从零到掌握,轻松享受便捷支付

目录 一、支付宝支付功能简介 1.1 支付宝支付的概念 1.2 支付宝支付的优势 1.3 支付宝支付的适用场景 二、支付宝支付的准备工作 三、支付宝支付的接入流程 四、支付宝支付的安全性 5.1 支付宝支付的安全机制 5.2 防范支付风险的措施 5.3 支付宝支付的安全技术保障 …

【LLM多模态】Cogview3、DALL-E3、CogVLM、CogVideo模型

note 文章目录 noteVisualGLM-6B模型图生文&#xff1a;CogVLM-17B模型1. 模型架构2. 模型效果 文生图&#xff1a;CogView3模型DALL-E3模型CogVideo模型网易伏羲-丹青模型Reference VisualGLM-6B模型 VisualGLM 是一个依赖于具体语言模型的多模态模型&#xff0c;而CogVLM则是…

前端模块化-AMD、CMD、CommonJS和UMD、ESM

前端模块化-AMD、CMD、CommonJS和UMD、ESM 背景CommonJSAMD和require.jsCMD和sea.jsUMD&#xff08;Universal Module Definition - 通用模块定义&#xff09;ES6 ModuleES6 模块与 CommonJS 模块的差异总结 背景 在NodeJS之前&#xff0c;由于没有过于复杂的开发场景&#xf…

二叉树-堆实现

目录 Test.c测试代码 test1 test2 test3 &#x1f387;Test.c总代码 Heap.h头文件&函数声明 头文件 函数声明 &#x1f387;Heap.h总代码 Heap.c函数实现 ☁HeapInit初始化 ☁HeapDestroy销毁 ☁HeapPush插入数据 【1】插入数据 【2】向上调整Adjustup❗ …

【Java-JDK】JDK 的安装与环境变量的配置:Windows Linux

【Java-JDK】JDK的安装与环境变量的配置&#xff1a;Windows & Linux 1&#xff09;Windows安装JDK1.1.下载JDK1.1.安装JDK1.2.JDK环境配置1.3.验证环境变量是否配置成功 2&#xff09;Linux安装JDK2.1.下载JDK2.2.安装JDK2.3.JDK环境配置2.4.验证环境变量配置是否成功 1&a…

数据库(二)

DDL语句对数据库的操作&#xff1a; 创建&#xff1a;create database 数据库名 &#xff1b; 修改&#xff1a;alter database 数据库名 charset 字符集 &#xff1b; 删除: drop database 数据库名&#xff1b; 查询&#xff1a;show databases; DDL语句对表的操作 …

【Ubuntu 22.04.3 LTS】apt-get下载安装有关问题可能原因及解决方法

ubuntu 22.04.3 LTS unaccountably error 装啥啥没依赖 可能是用了不合适的源&#xff0c;换个就好了 Now, let’s take a look at the lsb_release output, with a special focus on the Codename, which could be a crucial piece of information. The lsb_release comm…
最新文章