(一)、机器人时间同步方案分析

1、是否有必要进行时间同步

        目前的自动驾驶系统包括 感知、定位、决策规划、控制 等模块,这些模块的正常运行需要依靠各种不同类型的传感器数据的准确 融合。尤其是激光雷达与相机这两种传感器在感、知定位模块中起着至关重要的作用。机械式旋转扫描激光雷达本身较低的扫描频率(常用10Hz,而车辆经常运行在高速、高机动的运动状态下,造成激光雷达测量的点云会产生 运动畸变。而在激光雷达与相机图片的融合过程中,也会由于数据采集的不同步造成的一定测量偏差,这个偏差会随着车辆的运动速度增加而被放大。在车辆高速行驶时,即使是微小的时间偏差会对最终的激光点云和图像的时空对准造成影响,进而对融合定位、融合感知等的结果造成很大的偏差,从而影响自动驾驶的安全运行。为了满足自动驾驶系统对安全性和稳定性的高要求,需要保证不同传感器数据融合的准确性和可靠性。

        假设车速在低速情况下10Km/H = 2.78m/s的情况下,如果同时存在3D激光的数据+摄像头情况下;3D激光的数据为10Hz,摄像头数据能够达到30Hz,当时间未同步下的,3D激光的权重大于摄像头的权重时,0.1s * 2.78m/s = 0.278m的盲区,速度越高盲区越大对于导航决策越危险。当前推算仅对于车体本身,当车体前面或者对面有高速移动目标的时候情况还会变得更复杂。

激光雷达扫描与相机视角同步,保证空间上同步

 2、时间同步的原理

 其中包含时钟同步和硬件两个方面来保证 时空同步:

         这一切的目的是为了算法在后期做感知算法的时候,做 插值算法 的时候有据可依,没有准确的时钟同步,各传感器在哪一帧进行融合,在哪进行插值都没有办法进行判断。

        时间同步: 就是通过统一的主机给各个传感器提供基准时间,各传感器根据已经校准后的各自时间为各自独立采集的数据加上时间戳信息,确保所有传感器时间戳同步。

        空间同步 :就是不同传感器坐标系下的测量值转换到同一坐标系下(也可以理解为传感器在整车坐标系下的标定参数)。

这里仅对时间同步进行展开说明,先讲述两个重要概念。

        GPS不仅是一个定位装置,还是一个 授时装置,这就是 PPS+NMEA ,GPRMC报文提供年月日时分秒信息(一般通过波特率9600串口发送接收,处理时间为毫秒级别)、PPS则通常使用1PPS即频率为1次每秒的秒脉冲。

         PS:这个时间是绝对时间,由GPS上的原子钟校准得来的

         另一种方式就基于IEEE 802.1 时间敏感组网(gPTP协议)与IEEE1588v2 精确时间协议(PTP协议

         此种方式能够通过网络获得 nS级别 的精度,但此协议需要硬件支持,后续有空研究下这个硬件的操作

3、时间同步方案

        GPS作为主时钟来统一时钟看起来没有任何问题,但在某些时候GPS信号丢失的时候会造成整个系统没有主时钟的参考,这时候需要一个边界时钟在主时钟丢失的时候保证此时的时间相对一致。

        另外GPS时钟输出一般为一个PPS IO信号和串口,通常只有一路信号,这个信号无法复用给多路传感器使用。某些传感器既不支持PPS也不支持网络PTP,例如相机支持硬件触发为IO电平触发。

        此时需要一个时钟同步模块来进行分频触发,常用框架如图所示。

在多个系统框架中,可以采用如下方案:

        其中两个ORIN之前采用PCIE通信,其中也可以添加FPGA来进行同步触发处理,通过添加PCIE交换机来实现。 

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

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

相关文章

(二)移植FreeRTOS到STM32中

一、概念 (1)任务(线程):根据功能的不同,将一个系统分割成一个个独立且无法返回的函数,这个函数就被称为任务 (2)任务栈:静态创建的任务保存在栈中 &#xf…

LeetCode2. 两数相加(Java)

题目: 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这…

USB打印机改网络打印机

解决传统SMB缺陷可跨平台设备使用。 1、安装deepin 如何安装 – 深度科技社区 2、配置IP地址 vi /etc/network/interfaces && systemctl restart networking 3、安装程序上传到服务器并解压。运行0Dinstalld目录下文件 sh 0Dinstalld/0installdd.sh http://XX.XX.XX…

肝了三天,完成了AIGC工具网站大全,建议收藏再看

说是肝了三天,其实远远不止,前前后后,从资料搜集到最后整理成文,有近一个月了,大家看在整理不易的份上,给点个赞吧,不要光顾着收藏呀! 国内网站 AIGC 导航 https://www.aigc.cn 网…

visual studio2019项目中引入头文件失效问题的解决

这几天把项目整理一下,但在引入头文件过程中非常曲折。 项目本身写好了可以运行,但是项目结构是这样的: 所以想把功能模块化,同一类协议功能放在一起。 于是建包,创建文件,导入头文件: 在新…

HTML基础:了解CSS的3种创建方法

你好,我是云桃桃。 CSS,即层叠样式表(Cascading Style Sheets),是一种用于描述网页样式和布局的标记语言。它通过定义样式规则来控制网页元素的外观和排版,包括文字大小、颜色、边距、背景等,从…

3D Occupancy 预测冠军方案:FB-OCC

文章结尾有视频和连接 背景知识 Occupancy 更像是一个语义分割任务,但是它是 3D 空间的语义分割它的我们对 Occupancy 分自己的期望是它能够具有通用的这种目标建模的能力,才能够不是不受制于这种目标框这种几何的矩形的这种约束而能够建模任意形状的这…

欧科云链:ETH Dencun升级倒计时,哪些数据需要重点关注?

2024年3月13日 21:55(epoch 269,568),以太坊将完成坎昆-德内布升级 (Dencun 升级),OKLink 专题数据页传送门 👉 oklink.com/eth/dencun-upgrade 此次升级的主要目标是提升 Layer 2 网络的可扩展…

特殊文本文件、日志技术

特殊文件 为什么要用这些特殊文件? 存储多个用户的:用户名、密码 特殊文件:Properties属性文件 特点: 都只能是键值对键不能重复文件后缀一般是.properties结尾的 作用:存储一些有关系的键值对数据 Properties 是一个Map集合(键…

基础-笔试题2

1、int a[10]{1,2,3,4,5,6,7,8,9,0}; int *p&a[1]; 则p[6]等于_ 答:8 ,考察数组和指针的基本用法; 2、整数数组清零的方法? bzero(),memset()。 memset() 是C语言标准库中的一部分,用于将内存区域设置…

leetcode刷题日记之串联所有单词

题目描述 解题思路 一开始考虑的就是暴力破解,每次切片切words中字母的个数,然后根据每个词语的长度进行进一步的切片,将切出来的单词放入列表,然后每次对比一次,如果存在,就从原来的列表中,删…

LeetCode Python - 58. 最后一个单词的长度

目录 题目描述解法运行结果 题目描述 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 示例 1: 输入:s “Hel…

Leet code 34 在排序数组中查找元素的第一个和最后一个位置

解题思路 二分查找 核心就是 先找到左端点的位置 再找到右端点的位置 二分查找整体不难 但难在细节处理 一旦处理不好就是死循环 定义rightnums.size()-1 left0 if(nums[mid] < target) 更新 left leftmid1 if(nums[mid] > target) 这里为什么要大于等于我们不…

idea error java:compilation failed:internal java compiler error

idea中编译运行maven项目报错如下 idea error java:compilation failed:internal java compiler error 尝试如下操作 注意&#xff1a;jdk8 需要设置4个地方 1.首先打开File->Project Structure中的Project&#xff0c;将SDK和language level都设置一致&#xff0c;如下…

【LeetCode热题100】148. 排序链表(链表)

一.题目要求 给你链表的头结点 head &#xff0c;请将其按 升序 排列并返回 排序后的链表 。 二.题目难度 中等 三.输入样例 示例 1&#xff1a; 输入&#xff1a;head [4,2,1,3] 输出&#xff1a;[1,2,3,4] 示例 2&#xff1a; 输入&#xff1a;head [-1,5,3,4,0] 输…

日期与时间(Java)

文章目录 日期与时间&#xff08;Java&#xff09;一、JDK8之前的1.1 Date1.2 SimpleDateFormat1.3 Calendar 二、 JDK8之后的2.1 LocalDate、LocalTime和LocalDateTime2.2 ZoneId和ZonedDateTime2.3 Instant2.4 DateTimeFormatter2.4 Period和 Duration &#x1f389;写在最后…

数据结构:详解【链表】的实现(单向链表+双向链表)

目录 一&#xff0c;前言二 &#xff0c;有关链表的概念&#xff0c;结构和分类三&#xff0c;无头单向非循环链表&#xff08;单链表&#xff09;1.单链表的功能2.单链表功能的实现3.完整代码 四&#xff0c;带头双向循环链表&#xff08;双链表&#xff09;1.单链表与双链表的…

YOLOv9改进策略:注意力机制 | 归一化的注意力模块(NAM)

&#x1f4a1;&#x1f4a1;&#x1f4a1;本文改进内容&#xff1a; NAM作为一种高效且轻量级的注意力机制。采用了CBAM的模块集成并重新设计了通道和空间注意子模块。 yolov9-c-NAMAttention summary: 965 layers, 51000614 parameters, 51000582 gradients, 238.9 GFLOPs 改…

Java基础 - 9 - 集合进阶(二)

一. Collection的其他相关知识 1.1 可变参数 可变参数就是一种特殊形参&#xff0c;定义在方法、构造器的形参列表里&#xff0c;格式是&#xff1a;数据类型…参数名称; 可变参数的特点和好处 特点&#xff1a;可以不传数据给它&#xff1b;可以传一个或者同时传多个数据给…

html中如何让网页禁用右键禁止查看源代码

在网页中&#xff0c;辛辛苦苦写的文章&#xff0c;被别人复制粘贴给盗用去另很多站长感到非常无奈&#xff0c;通常大家复制都会使用选取右键复制&#xff0c;或CTRLC等方式&#xff0c;下面介绍几种禁止鼠标右键代码&#xff0c;可减少网页上文章被抄袭的几率&#xff0c;当然…