当前位置: 首页 > news >正文

自动驾驶感知系统-全球卫星定位系统

卫星定位系统

车辆定位是让无人驾驶汽车获取自身确切位置的技术,在自动驾驶技术中定位担负着相当重要的职责。车辆自身定位信息获取的方式多样,涉及多种传感器类型与相关技术。自动驾驶汽车能够持续安全可靠运行的一个关键前提是车辆的定位系统必须实时稳定地输出足够高精度的位置和与位置相关的信息,这些信息包括车辆的经度、纬度、航向角、速度、加速度、俯视角、更新频率等。一旦这些信息无法及时精确地获取,车辆就无法确定自身位置,必须立即退出自动驾驶模式由驾驶员接管车辆。
自动驾驶汽车对定位系统性能的要求与车辆的行驶速度密切相关。相关标准和法规规定,乘用车行驶最高车速不得超过120km/h,客车最高涉及车速不应大于100km/h。基于目前得自动驾驶汽车整体技术水平和车辆限速要求,自动驾驶客车得最高车速不宜超过70km/h。一般情况下,人工驾驶控制车辆距道路一侧路牙石得安全距离约为25cm,自动驾驶汽车必须在行驶25cm的时间内更新一次定位信息且定位精度≤25cm,否则就有可能导致车辆超出道路边界发生事故。按照最高车速90km/h计算,根据公式t=s/v,车辆行驶25cm的时间是0.01s,根据公式f=1/t,则定位信息更新频率为100Hz。因此,定位信息更新频率需≥100Hz,定位精度须≤25cm才能保证车辆行驶安全。
目前常规的定位导航系统(包括无线电定位导航,惯性定位导航、卫星定位导航、移动基站定位导航等)都不能同时满足上述指标。例如,惯性定位导航系统存在定位误差随时间积累、长时间不能保证足够的导航精度的问题;卫星定位导航系统存在多路径、卫星信号遮挡和更新频率低(一般为10Hz)等问题。因此,要实现汽车上自动驾驶功能,必须采用高精定位导航技术。目前的高精定位技术路线主要有3种:基于卫星定位系统和捷联惯导系统的组合定位技术,基于激光雷达点云和高精顶图的匹配定位技术,以及基于计算机视觉里程算法的定位技术。

卫星定位技术

在任何驾驶条件下,自动驾驶车辆均依赖于2种信息:汽车位置和汽车行驶的速度,收集这些信息需要整合多种复杂技术,其中GNSS(Globla Navigation Satellite System,全球导航卫星系统)起到主要作用。当自动驾驶汽车拥有高精度位置信息之后,可以跟高精地图进行匹配,从而提供良好的导航功能。GNSS系统也能为车载传感器的时间同步或者导航提供最基础的时空信息。

卫星导航定位系统是星基无线电导航系统,以人造地球卫星作为导航台,为全球海陆空的各类军民载体提供全天候的、高精度的位置、速度和时间信息,因而又被称为天基定位、导航和授时系统。

1) 全球卫星导航系统

目前世界上著名的卫星导航系统又美国的全球定位系统(Global Positioning System, GPS)、俄罗斯的全球导航卫星系统(Global Navigation Satellite System, GLONASS)、中国的北斗卫星导航系统(Beidou Navigation Satellite System,BDS)以及欧盟伽利略(Galileo)系统。下面分别简要介绍

GPS
GPS是为了满足军事部门对高精度导航和定位的要求由美国国防部建立的,能向陆海空3大领域提供实时,全天候和全球性的导航服务,并且能够满足情报收集、核爆监测和应急通信等军事要求。
GPS提供具有全球覆盖、全天时、全天候、连续性等优点的三维导航和定位能力,作为先进的测量、定位、导航和授时手段、除了在军事上起着举足轻重的作用外,在国家安全、经济建设和民生发展的各个方面都扮演着重要的角色。
GPS由3部分构成,即空间卫星部分、地面监控部分和用户接收部分。空间卫星部分又称为空间段,21颗GPS工作卫星和3颗在轨备用卫星构成完整的21+3形式的GPS卫星工作星座。这种星座构型能满足在地球上任何地点任何时刻均能观测至少4颗几何关系较好的卫星来用于定位。地面控制部分又称为地面段,由分布在全球的一个主控站、3个注入站和若干个监测站组成。用户接收部分又称为用户段,接收来自作为基础设施的空间段和地面段提供的导航、定位和授时服务,这些服务已广泛应用于各个领域。
GLONASS
GLONASS是苏联建设的导航系统,同样能够为海陆空的民用和军用提供全球范围内的实时、全天候三维连续导航、定位和授时服务。GLONASS也由空间段、地面段、用户段3大部分组成,但与GPS相比,各部分的具体技术有较大的差异。空间段由24颗GLONASS卫星组成,其中21颗为正常工作卫星,3颗为备份卫星。如果GLONASS星座完整,则可以满足地球上任何时刻都能收到来自4颗卫星的信号,从而获取可靠的导航定位信息。地面监控部分包括系统控制中心和跟踪控制站网,这些跟踪控制站网分散在俄罗斯所有领土上。用户端能接收卫星发射的导航信号,进而获取需要的位置、速度和时间信息。
BDS
BDS北斗卫星导航系统是中国正在实施的自主研发、独立运行的全球卫星导航系统,于2012年12月27日启动区域性导航定位与授时正式服务。由16颗导航卫星组成的北斗2号系统已向我国乃至大部分亚太地区提供服务。截至2018年底,北斗3号基本系统星座部署完成。2018年12月27日开始,北斗开始提供全球范围的定位与授时服务。
除了与上述导航系统提供的导航、定位、授时功能等相投的服务外,北斗卫星导航系统还具有一项特殊的功能,那就是短报文通信。从北斗系统的组成结构来看,同样分为空间段、地面段和用户段。空间星座部分由5颗地球静止轨道(Geostationary Orbit,GEO)卫星和30颗非地球静止轨道(Nongeostationary Orbit,NON-GEO)卫星组成,后者包括中圆地球轨道(MEO)卫星和倾斜地球同步轨道(IGSO)卫星。GEO+NON-GEO+MEO+IGSO的星座构型是北斗卫星导航系统的完整布局,最大的优点是同样保证了在地球上任意地点时刻均能接收到来自4颗以上导航卫星发射的信号,观测条件良好的地区甚至可以接收到10余颗卫星的信号。地面段包括监测站、上行注入站、主控站。用户段组成及功能同前2者基本相同。
Galileo
Galileo卫星系统也是一个正在建设中的全球卫星导航系统,欧洲人的目的是摆脱对美国全球定位系统的依赖,打破其垄断。该系统的基本服务免费,但使用高精度定位服务需要付费。Galileo系统分为空间段、地面段、用户段3大部分。空间段时由分布在3个轨道上的30颗MEO卫星构成,其中27颗为工作星,3颗为备份星。地面段由两个地面操控站、29个伽利略传感器达到站以及5个S波段上行站和10个C波段上行站组成,传感器达到站及上行站均分布于全球。用户段则提供独立于其他卫星导航系统的5种基本服务。

卫星导航定位系统工作原理

GNSS定位主要解决2个问题:一是观测瞬间卫星的空间位置,二是测量站点卫星之间的距离。空间位置即GNSS卫星在某坐标系的坐标,为此首先要建立适当的坐标系来表征卫星的参考位置,而坐标又往往与时间联系在一起,因此,定位是基于坐标系统和时间系统来进行的。
1) 坐标系统和时间系统
卫星导航系统种,坐标系描述与研究卫星在其轨道上的运动、表达地面观测站的位置和处理GPS观测数据。根据应用场合的不同,选用的坐标系也不相同。坐标系大概分为以下几类:地理坐标系、惯性坐标系、地心坐标系和参心坐标系。常用的坐标系统有:WGS-84坐标系、Parametry Zemli 1990坐标系(PZ-90)、1954年北京坐标系(P54)、1980年国家大地坐标系(C80)、2000国家大地坐标系(CGS2000)。
时间系统在卫星导航种是最重要、最基本的物理量之一。首先,卫星发送的所有信号都是由高精度的原子钟控制的。其次,大多数卫星导航系统实际上都是通过精确测定信号传播时间来实现距离测量的。时间系统可分为世界时、力学时、原子时,儒略日、卫星导航时间系统等。其中GPS系统采用了一个独立的时间系统作为导航定位计算的依据,称为GPS时间系统(GPST)。GPS时间属于原子时系统,其秒长与原子时秒长相同。
2) 定位原理
GNSS定位系统利用基本三角定位原理,GNSS接收装置通过测量无线电信号的传输时间来测量距离。由每颗卫星的所在位置,和测量得到的每颗卫星与接收装置的距离,便可算出接收器所在位置的三维坐标值。使用者至少需收到3颗卫星的信号才可确定自身的位置。实际使用中GNSS接收装置都时利用4个以上的卫星信号来确定使用者所在位置及高度。
分别以3个卫星的位置为圆心,3个卫星距地面某点距离为半径作球面、则球面交点即为地面用户位置,如图所示:
在这里插入图片描述
从上面GNSS进行定位的基本原理,可以看出GNSS定位方法的实质,即测量学中的空间后方交会。由于GNSS采用单程测距,且难以保证卫星时钟与用户接收机时钟的严格同步,观测站和卫星之间的距离均受2种不同步的影响。卫星钟差可用导航电文中所给的有关钟差参数进行修正,与观测站的坐标一并求解,即在1个观测站上一般需求解4个未知数(3个点位坐标分量和1个钟差参数),因此至少需要4个同步伪距观测值,即需要同时观测4颗卫星。
基于定位原理的理论基础,可将定位方法进行分类。例如在GPS定位中,依据用户站的运动状态,可以分为静态定位和动态定位。静态定位是指待定点的位置固定步动,将GPS接收机安置于其上进行大量的重复观测。动态定位是指待定点处于运动状态,测定待定点在各观测时刻(或称为“观测历元”)运动中的点位坐标,以及运动载体的状态参数,如速度、时间和方位等。而按照定位的模式划分,则可分为绝对定位和相对定位。绝对定位又称为单点定位,即只采用一台GPS接收机进行定位,它所确定的是接收机天线在WGS84坐标系统中的绝对位置。相对定位是指2台GPS接收机安置于2个固定不变的待定点上,或1个点固定于已知点上,另一个为流动待定点。同步观测一定时间后,可以确定2点之间的相对位置,获得高精度的点位坐标。
3) 误差分析
卫星导航系统的误差从来源上可以分为4类:与信号传播有关的误差,与卫星有关的误差,与接收机有关的误差以及地球潮汐、负荷潮等造成的其他误差。误差分类如表所示。
在这里插入图片描述
在这里插入图片描述

相关文章:

自动驾驶感知系统-全球卫星定位系统

卫星定位系统 车辆定位是让无人驾驶汽车获取自身确切位置的技术,在自动驾驶技术中定位担负着相当重要的职责。车辆自身定位信息获取的方式多样,涉及多种传感器类型与相关技术。自动驾驶汽车能够持续安全可靠运行的一个关键前提是车辆的定位系统必须实时…...

数据结构 | 基本数据结构——队列

目录 一、何谓队列 二、队列抽象数据类型 三、用Python实现队列 四、模拟:传土豆 五、模拟:打印任务 5.1 主要模拟步骤 5.2 Python实现 一、何谓队列 队列是有序集合,添加操作发生在“尾部”,移除操作则发生在“头部”。新…...

QT在label上透明绘图(二)

前面步骤参考前一篇文章 QT在label上透明绘图 一、给TransparentLabel类添加double transparency;变量, 二、ui添加doublespinbox,调整透明参数 void MainWindow::on_doubleSpinBox_valueChanged(double arg1) {transparentLabel->transparencyarg1;…...

微信小程序使用editor富文本编辑器 以及回显 全屏弹窗的模式

<!--富文本接收的位置--><view class"white-box"><view class"title"><view class"yellow-fence"></view><view class"v1">教研记录</view></view><view class"add-btn"…...

在CSDN学Golang场景化解决方案(基于gin框架的web开发脚手架)

一&#xff0c;中间件统一实现Oauth2身份验证 在Golang基于Gin框架开发Web应用程序时&#xff0c;可以使用gin-oauth2来实现Oauth2身份验证。下面是简单的步骤&#xff1a; 安装gin-oauth2包&#xff1a;go get github.com/appleboy/gin-oauth2导入依赖&#xff1a;import &q…...

关于Express 5

目录 1、概述 2、Express 5的变化 2.1 弃用或删除内容的列表&#xff1a; app.param&#xff08;name&#xff0c;fn&#xff09;名称中的前导冒号&#xff08;&#xff1a;&#xff09; app.del() app.param&#xff08;fn&#xff09; 复数方法名 res.json&#xff0…...

ftrace 原理详细分析

》内核新视界文章汇总《 文章目录 ftrace 原理分析1 简介2 ftrace 的编译器支持2.1 HAVE_FUNCTION_TRACER 选项对 ftrace 的支持2.2 HAVE_DYNAMIC_FTRACE 选项对动态 ftrace 的支持 3 ftrace 的初始化4 function trace 流程5 总结 ftrace 原理分析 1 简介 ftrace 是一个内核…...

UWB定位技术和蓝牙AOA有哪些不同?-高精度室内定位技术对比

UWB超宽带定位 UWB&#xff08;Ultra Wide Band &#xff09;即超宽带技术&#xff0c;它是一种无载波通信技术&#xff0c;利用纳秒级的非正弦波窄脉冲传输数据&#xff0c;因此其所占的频谱范围很宽。传统的定位技术是根据信号强弱来判别物体位置&#xff0c;信号强弱受外界…...

【RabbitMQ】golang客户端教程2——工作队列

任务队列/工作队列 在上一个教程中&#xff0c;我们编写程序从命名的队列发送和接收消息。在这一节中&#xff0c;我们将创建一个工作队列&#xff0c;该队列将用于在多个工人之间分配耗时的任务。 工作队列&#xff08;又称任务队列&#xff09;的主要思想是避免立即执行某些…...

芯旺微冲刺IPO,车规级MCU竞争白热化下的“隐忧”凸显

在汽车智能化和电动化发展带来的巨大蓝海市场下&#xff0c;产业链企业迎来了一波IPO小高潮。 日前&#xff0c;上海芯旺微电子技术股份有限公司&#xff08;以下简称“芯旺微”&#xff09;在科创板的上市申请已经被上交所受理&#xff0c;拟募资17亿元&#xff0c;用于投建车…...

HTML <s> 标签

例子 可以像这样标记删除线文本&#xff1a; 在 HTML 5 中&#xff0c;<s>仍然支持</s>已经不支持这个标签了。 浏览器支持 元素ChromeIEFirefoxSafariOpera<s>YesYesYesYesYes 所有浏览器都支持 <s> 标签。 定义和用法 <s> 标签可定义加…...

微信小程序 - scroll-view组件之上拉加载下拉刷新(解决上拉加载不触发)

前言 最近在做微信小程序项目中&#xff0c;有一个功能就是做一个商品列表分页限流然后实现上拉加载下拉刷新功能&#xff0c;遇到了一个使用scroll-viwe组件下拉刷新事件始终不触发问题&#xff0c;网上很多说给scroll-view设置一个高度啥的就可以解决&#xff0c;有些人设置了…...

rust usize与i64怎么比较大小?

在Rust中&#xff0c; usize 和 i64 是不同的整数类型&#xff0c;它们的位数和表示范围可能不同。因此&#xff0c;直接比较 usize 和 i64 是不允许的。如果需要比较它们的大小&#xff0c;可以将它们转换为相同的类型&#xff0c;然后进行比较。 要将 usize 转换为 i64 &…...

电脑更新win10黑屏解决方法

电脑更新win10黑屏解决方法 电脑黑屏出现原因解决步骤 彻底解决 电脑黑屏 出现原因 系统未更新成功就关机&#xff0c;导致系统出故障无法关机 解决步骤 首先长安电源键10s关机 按电源键开机&#xff0c;出现logo时按F8进入安全模式。 进入自动修复环境后&#xff0c;单击…...

STM32入门——外部中断

中断系统概述 中断&#xff1a;在主程序运行过程中&#xff0c;出现了特定的中断触发条件&#xff08;中断源&#xff09;&#xff0c;使得CPU暂停当前正在运行的程序&#xff0c;转而去处理中断程序&#xff0c;处理完成后又返回原来被暂停的位置继续运行中断优先级&#xff…...

【计算机网络】NAT及Bridge介绍

OSI七层模型 七层模型介绍及举例 为通过网络将人类可读信息通过网络从一台设备传输到另一台设备&#xff0c;必须在发送设备沿 OSI 模型的七层结构向下传输数据&#xff0c;然后在接收端沿七层结构向上传输数据。 数据在 OSI 模型中如何流动 库珀先生想给帕尔梅女士发一封电…...

封装动态SQL的插件

最近根据公司的业务需要封装了一个简单的动态SQL的插件&#xff0c;要求是允许用户在页面添加SQL的where条件&#xff0c;然后开发者只需要给某个接口写查询对应的表&#xff0c;参数全部由插件进行拼接完成。下面是最终实现&#xff1a; 开发人员只需要在接口写上下面的查询SQ…...

C# Microsoft消息队列服务器的使用 MSMQ

先安装消息队列服务器 private static readonly string path ".\\Private$\\myQueue";private void Create(){if (!MessageQueue.Exists(path)){MessageQueue.Create(path);}}private void Send(){Stopwatch stopwatch new Stopwatch();stopwatch.Start();Message…...

Kafka3.0.0版本——生产者如何提高吞吐量

目录 一、生产者提高吞吐量参数设置二、产者提高吞吐量代码示例 一、生产者提高吞吐量参数设置 batch.size&#xff1a;设置批次大小&#xff0c;默认16klinger.ms&#xff1a;设置等待时间&#xff0c;修改为5-100msbuffer.memory&#xff1a;设置缓冲区大小&#xff0c; 默认…...

js精度丢失的问题

1.js精度丢失的常见问题,从常见的浮点型进行计算&#xff0c;到位数很长的munber类型进行计算都会造成精度丢失的问题&#xff0c; 首先我们看一个问题&#xff1a; 0.1 0.2 ! 0.3 // truelet a 9007199254740992 a 1 a // true那么js为什么会出现精度丢失的问题&…...

C++ 编译预处理

在编译器对源程序进行编译时&#xff0c;首先要由处理器对程序文本进行预处理。预处理器提供了一组编译预处理指令和预处理操作符。预处理指令实际上不是C语言的一部分&#xff0c;它只是用来扩充C程序设计环境。所有的预处理指令在程序中都以“#”来引导&#xff0c;每一条预处…...

备战秋招 | 笔试强化22

目录 一、选择题 二、编程题 三、选择题题解 四、编程题题解 一、选择题 1、在有序双向链表中定位删除一个元素的平均时间复杂度为 A. O(1) B. O(N) C. O(logN) D. O(N*logN) 2、在一个以 h 为头指针的单循环链表中&#xff0c;p 指针指向链尾结点的条件是( ) A. p->ne…...

LeetCode ACM模式——哈希表篇(二)

刷题顺序及思路来源于代码随想录&#xff0c;网站地址&#xff1a;https://programmercarl.com 202. 快乐数 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为&#xff1a; 对于一个正整数&#xff0c;每一次将该数替换为它每个位置上的数字的平方和。然后重复…...

hadoop 3.1.3集群搭建 ubuntu20

相关 hyper-v安装ubuntu-20-server hyper-v建立快照 hyper-v快速创建虚拟机-导入导出虚拟机 准备 虚拟机设置 采用hyper-v方式安装ubuntu-20虚拟机和koolshare hostnameiph01192.168.66.20h02192.168.66.21h03192.168.66.22 静态IP 所有机器都需要按需设置 sudo vim /e…...

备忘录模式——撤销功能的实现

1、简介 1.1、概述 备忘录模式提供了一种状态恢复的实现机制&#xff0c;使得用户可以方便地回到一个特定的历史步骤。当新的状态无效或者存在问题时&#xff0c;可以使用暂时存储起来的备忘录将状态复原。当前很多软件都提供了撤销&#xff08;Undo&#xff09;操作&#xf…...

Golang 函数参数的传递方式 值传递,引用传递

基本介绍 我们在讲解函数注意事项和使用细节时&#xff0c;已经讲过值类型和引用类型了&#xff0c;这里我们再系统总结一下&#xff0c;因为这是重难点&#xff0c;值类型参数默认就是值传递&#xff0c;而引用类型参数默认就是引用传递。 两种传递方式&#xff08;函数默认都…...

K8s影响Pod调度和Deployment

5.应用升级回滚和弹性伸缩...

透明代理和不透明代理

透明代理和不透明代理 1、透明代理(Transparent Proxy)2、不透明代理(Non-Transparent Proxy)3、工作原理4、透明代理为啥比不透明代理多一部先连接到路由再到代理服务器?5、这里路由器做了什么工作6、代理自动配置文件(Proxy Auto-Configuration file,PAC file)7、代理…...

1424. 对角线遍历 II;2369. 检查数组是否存在有效划分;1129. 颜色交替的最短路径

1424. 对角线遍历 II 核心思想&#xff1a;我感觉是一个技巧题&#xff0c;如果想到很容易做出了&#xff0c;想不到就很难了。首先对于一条对角线的数&#xff0c;其坐标ij是一样的&#xff0c;然后同一条对角线斜向上的j是从小到大的&#xff0c;知道这个就很容易做出来了。…...

【漏洞复现】Metabase 远程命令执行漏洞(CVE-2023-38646)

文章目录 前言声明一、漏洞介绍二、影响版本三、漏洞原理四、漏洞复现五、修复建议 前言 Metabase 0.46.6.1之前版本和Metabase Enterprise 1.46.6.1之前版本存在安全漏洞&#xff0c;未经身份认证的远程攻击者利用该漏洞可以在服务器上以运行 Metabase 服务器的权限执行任意命…...