(18)GPS/指南针(二)

文章目录

前言

3 GPS驱动程序选项

4 GPS自动切换

5 高级用途


前言

Copter/Plane/Rover 支持与 GPS、指南针和其他定位技术的整合:


3 GPS驱动程序选项

GPS_DRV_OPTIONS 参数提供了几个 GPS 操作选项。这个参数是一个位掩码,允许同时进行多个选项的选择:

  • bit 0:如果设置,将通过第二个 UART 端口将第一个 GPSRTK 校正数据直接发送到第二个GPS 的偏航(又称移动基线)(GPS for Yaw (aka Moving Baseline)),而不是通过自动导航仪;
  • bit 1:如果设置,启用 SBF 移动基线偏航,使用自定义的基线和 GPS_MB1 偏移;
  • bit 2:如果设置了,对于那些不能使用更高速率的 GPS,使用 115.2Kbaud 作为最大串行数据速率;
  • bit 3:如果设置,则在两个 CAN GPS 之间通过 CAN 而不是通过自动驾驶仪路由 RTK 数据;
  • bit 4:如果设置,GPS 报告的高度是椭圆体高度,而不是 AMSL 高度。

4 GPS自动切换

当使用两个 GPS 单元时,有许多切换选项可以用 GPS_AUTO_SWITCH 来选择。

0:使用主要的

  • 始终使用主要的 GPS,这可以是第一个或第二个,正如用 GPS_PRIMARY 设置的那样。

1:使用最好的

  • 自动选择最佳的 GPS,这是根据 GPS 的定位状态(2D/3D/rtk)进行的,如果两个 GPS 有相同的定位状态,则使用卫星数量多的那个。

2:混合型

  • 混合最适合与两个相同的 GPS 装置一起使用,见 GPS 混合(GPS blending)。

4:如果3D定位或更好的情况下,使用主要的

  • 使用 GPS_PRIMARY 设置的主 GPS,如果它有一个 3D 定位或更好的定位。这应该在使用两个不同的 GPS 装置时使用,一个是高质量的主装置,另一个是不太精确的副装置。在这种情况下,高质量的 GPS 通常会有更好的定位质量,即使它的卫星较少。在这种情况下,使用"使用最好的"会导致使用质量较差的 GPS,并导致在 GPS 装置之间更多的转换。与"使用主要"不同的是,这个选项仍然允许在主要 GPS 失去 3D 定位时返回到次要 GPS

GPS 切换有关的另一个变化是 EKF3 亲和力和车道切换(EKF3 affinity and lane switching)。一个 EKF 车道可以被设置为使用任一 GPS,然后根据其健康状况切换整个 EKF 车道。如果一个车道使用了GPS_PRIMARY,并且启用了GPS_AUTO_SWITCH,那么该车道将使用由GPS_AUTO_SWITCH设置决定的 GPS 信息。

5 高级用途

  • Fixed Baseline RTK GPS Correction
  • GPS Blending (aka Dual GPS)
  • GPS for Yaw (aka Moving Baseline)
  • GPS – How it Works
  • U-Blox F9P Firmware Update Procedure

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

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

相关文章

Oracle数据库的日志切换策略

Oracle数据库的日志切换策略是确保数据库稳定运行和事务连续性的关键机制之一。以下是对Oracle日志切换策略的详细解析 1、自动日志切换 1.1、重做日志切换: Oracle数据库使用重做日志文件(Redo Log Files)来保证实例恢复。当当前的重做日…

YOLOv8数据集可视化[目标检测实践篇]

先贴代码,后面再补充解析。 这个篇章主要是对标注好的标签进行可视化,虽然比较简单,但是可以从可视化代码中学习到YOLOv8是如何对标签进行解析的。 下面直接贴代码: import cv2 import numpy as np import osdef read_det_labels(label_file_path):with open(labe…

蓝桥杯开发板STM32G431RBT6高阶HAL库学习FreeRtos——完成第一个小项目点灯

一、配置LED引脚(注意引脚都配置为高电平) 二、新建两个任务,一个为动态创建,一个静态创建(以后大多数情况进行动态创建)//将两个优先级设置成一样 补充: 1.FreeRTOS创建静态任务和动态任务的各自优缺点 静态任务和动…

react框架,使用vite和nextjs构建react项目

react框架 React 是一个用于构建用户界面(UI)的 JavaScript 库,它的本质作用是使用js动态的构建html页面,react的设计初衷就是为了更方便快捷的构建页面,官方并没有规定如何进行路由和数据获取,要构建一个完整的react项目,我们需要…

微信小程序:图片转icon

svg方式 通过svg图片的方式也能实现自定义icon。但是相比第一种方式,svg图片可以修改颜色,并且缩放的失真率也比较低。不过小程序wxss并不支持加载本地的svg图片。我们可以通过在线(https://www.sojson.com/image2base64.html)svg转base64的方式在wxss中…

Java中的线程调度与性能优化技巧

Java中的线程调度与性能优化技巧 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 1. 引言 在Java应用程序中,线程调度和性能优化是提升系统响应速…

3D技术赋能电商行业:“人-货-场”视角下的新变革!

在当今数字化时代,3D技术正以前所未有的方式赋能电商行业,在提升用户体验,优化商品展示,以及打造沉浸式的购。物场景上,重塑了电商行业的面貌,深刻改变着消费者的购物体验和商家的营销策略。 51建模网作为专…

Eclipse 菜单:深入解析与高效使用技巧

Eclipse 菜单:深入解析与高效使用技巧 Eclipse 是一款广泛使用的集成开发环境(IDE),它为Java、C++、PHP等编程语言提供了一个强大的开发平台。Eclipse 的菜单是其用户界面的一部分,提供了丰富的功能和选项,以帮助开发者更高效地工作。本文将深入解析 Eclipse 的菜单系统…

视图库对接系列(GA-T 1400)九、视图库对接系列(本级)机动车数据推送

背景 在上几章中,我们已经可以将视图库的平台写到我们的数据库中了。 换句话说就已经接入我们的平台了,这几期的话,我们就对接设备, 将设备的数据接入到我们平台来。 机动车数据推送 接入机动车数据推送相对比较简单,我们只需要实现对应的接口就ok了。 具体如图: 有增…

RRStudio 下载及安装(详尽版)

R语言来自S语言,是S语言的一个变种。S语言、C语言、Unix系统都是贝尔实验室的研究成果。R 语言是一种解释型的面向数学理论研究工作者的语言,主要用于统计分析、绘图、数据挖掘。 R 语言自由软件,免费、开放源代码,支持各个主要计…

Emacs有什么优点,用Emacs写程序真的比IDE更方便吗?

Emacs 是一个功能强大的文本编辑器,它在开发者和程序员中非常受欢迎,主要优点包括: 可定制性:Emacs 允许用户通过 Lisp 编程语言来自定义编辑器的行为和界面,几乎可以修改任何方面。扩展性:拥有大量的扩展…

TypeScript 如何快速获取函数的返回类型

ReturnType 是 TypeScript 的一个内置工具类型&#xff0c;用于获取一个函数的返回类型。下面是一个使用 ReturnType 的示例: function add(a: number, b: number): number {return a b; }type AddReturnType ReturnType<typeof add>; // AddReturnType 是 number 类型…

C++:类型转换

目录 一、C语言中的类型转换 二、为什么C要新的转换格式 三、 C强制类型转换 1.static_cast 2.reinterpret_cast 3.const_cast 4.dynamic_cast 一、C语言中的类型转换 在C语言中&#xff0c;如果赋值运算符左右两侧类型不同&#xff0c;或者形参与实参类型不匹配&…

【高阶数据结构】B-数、B+树、B*树的原理

文章目录 B树的概念及其特点解析B树的基本操作插入数据插入数据模拟 分析分裂如何维护平衡性分析B树的性能 B树和B*树B树B树的分裂B树的优势 B*B*树的分裂 总结 B树的概念及其特点 B树是一颗多叉的平衡搜索树&#xff0c;广泛应用于数据库和 文件系统中&#xff0c;以保持数据…

等保2.0的具体技术要求有哪些重点?

在数字化浪潮汹涌澎湃的当下&#xff0c;网络安全犹如一座守护智慧之城的巍峨城墙&#xff0c;不可或缺。等级保护制度&#xff08;等保&#xff09;作为我国网络安全战略的基石&#xff0c;历经岁月沉淀&#xff0c;已演进至2.0时代&#xff0c;即《网络安全等级保护基本要求》…

算法思想总结:优先级队列

一、最后一块石头的重量 . - 力扣&#xff08;LeetCode&#xff09; 我们每次都要快速找到前两个最大的石头进行抵消&#xff0c;这个时候用优先级队列&#xff08;建大堆&#xff09;,不断取堆顶元素是最好的&#xff01;每次删除堆顶元素后&#xff0c;可以自动调整&#xf…

CentOS 7配置阿里云镜像源及其加速

备份原yum源的配置&#xff1a;mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 下载Centos-7.repo文件curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 清除及生成缓存 # 清除yum缓存 yum clean …

HarmonyOS - 通过.p7b文件获取fingerprint

1、查询工程所对应的 .p7b 文件 通常新工程运行按照需要通过 DevEco Studio 的 Project Structure 勾选 Automatically generate signature 自动生成签名文件&#xff0c;自动生成的 .p7b 文件通常默认在系统用户目录下. 如&#xff1a;C:/Users/zhangsan/.ohos/config/default…

【Thread】python Thread Timer使用示例

import threading import time# 定义一个函数&#xff0c;它接受可变数量的字符串参数 def print_message(*messages):for message in messages:print(message)# 定义一个函数&#xff0c;它作为定时器线程的回调函数 def timer_thread(wait_time, *args):print(f"等待 {w…

JavaSE面试题(二)

目录 一.为什么会有Java内存模型&#xff1f; 二.什么样的情况下finally不会执行 三.钩子是什么&#xff1f; 四.编译时期的多态性和运行时期的多态性 五.谈谈反射机制 六.Java管道 本专栏全是博主自己收集的面试题&#xff0c;仅可参考&#xff0c;不能相信面试官就出这…