0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详谈自动驾驶汽车GPS系统数字孪生建模(一)

上海控安 来源:上海控安 作者:上海控安 2021-04-28 17:43 次阅读

标注:本文来自本实验室胡宗盛的研究成果。

定位的技术发展

第一为 GNSS 定位,该定位依托于卫星定位技术,定位精度在 10 米以下;

第二为惯导定位;

第三为高精度定位,该种定位已经实现了对传感器的建模和对获取到的传感器数据的信息的处理等,定位精度已经达到了厘米级的程度。

因此,精确的定位是自动驾驶的基础,也是核心,缺少精确的定位,自动驾驶可能会出现失误。

自动驾驶定位系统的基本要求

高精度: 要求达到厘米级;

高可用性:为了保持其稳定性和实用性,自动驾驶测试的阶段已经从封闭阶段转换为开放阶段,这其实是为了要求我们的定位系统能够处理日益复杂的情况,应对不可预知的情况发生的能力大大提升;

高可靠性:这个自动驾驶定位系统的输出是判断感知的方法,应对措施,提供解决方案反映了应对的能力,这个时候即便有一丁点的小误差也会给我们带来极其严重的后果;

自主完好性检测:鉴于当前系统建模的准确性还没有到达 100%,即便已经比较靠近。所以当我们提供的输出不够准确的情况下,我们能做的就是告诉并劝戒驾驶用户采取相应的措施,以此防止交通事故的发生,我们对它的要求就是在预测发生事故时可以准确的提醒以及降低错误提醒的发生概率。

自动驾驶定位的方法与流程

1.在感应到基站的情况下,采用卫星定位和惯导组合的定位技术;

2.根据需求分别自动切换三种自动驾驶的定位技术;

3.在隧道或夜间外界环境光线稳定的情况下,采用视觉里程算法的定位技术;

4.在未感知到基站的情况下,采用激光雷达点云和高精度地图匹配的定位技术。

Carla.GeoLocation:类包含地理坐标模拟数据,该 carla.Map 可以通过使用模拟转换位置 OpenDrive文件中的标签,包括(纬度,经度,高度)。

Carla.GnssMeasurement:定义由 sensor.other.gnss 注册的 Gnss 数据的类,实际上是通过传感器的位置和 Open­ Drive 地理参考来报告其位置,包括(高度,纬度,经度)。

Carla.IMUMeasurement:继承自carla.SensorData,定义由secsor.other.imu 注册的数据的类,根据当前carla.world进行传感器转换,实际上起着加速度计,陀螺仪和指南针的作用。

Carla.Image:被用作相机传感器检索的初始数据,有不同的相机传感器(当前为 3 个,分别是RGB,深度和语义分割),并且每个传感器对图像的使用方式都不同,包括(图像水平,图像高度,图像宽度)。

自动驾驶 GPS 建模

创建客户

创建客户需要标识它的 IP 地址和两个与服务器通信的 TCP 端口,第三个参数可以设置工作线程的数量。默认情况下为 all(0)。

client = carla.Client(’localhost’,2000)

默认情况下,carla 使用本地主机 IP 和端口 2000 进行连接,但是可以随意更改,在这种情况下,第二个端口始终为 2001。

创建客户端后,要设置超时时间。这限制了所有网络的操作,使得这些操作永远不会阻止客户端,如果连接失败,将会返回错误。在实际操作的过程中,发现预定的

10.0 不足以满足,通常情况下我需要设置的超时时间更长一些。client.set_timeout(100.0)

可能会连接到许多客户端,因为通常情况下,一次性运行多个脚本是很常见的。在具有高级 carla 功能的多客户端方案中进行工作将会使得通信变得更加复杂。

需要注意的是客户端和服务器具有不同的 libcarla 模块。版本不同的话可能会出现问题,可以使用 get_client_version() 和 get_server_version() 方法进行检查。

与世界联系

world=client.get_world()

客户端可以很容易的连接和检索当前世界。除此之外,客户端还可以获取可用地图列表以更改当前地图,这会摧毁当前世界并创造一个新的世界。每个世界都有一个自己的 id,每次客户要求 load_world() 或者 reload_world() 的时候,前一个世界都会被销毁, 从头开始创建新的世界,在此过程中虚幻引擎不会重新启动。

print(client.get_available_maps())

world=client.load_world(’Town02’)

client.load_world()

地图示例:

Actor和Blueprint

在 carla 中,参与者不仅仅只包括车辆和步行者,还包括传感器,交通标志,交通信号灯和行人观众,全面了解如何对其进行操作至关重要。蓝图可以使得用户将新的参与者平稳地合并到模拟中,它们是已经制作的具有动画和一系列属性的模型,其中一些是可以修改的,而其他的则不是。这些属性包括车辆颜色,激光雷达传感器中的通道数量,行人的速度等。

blueprint_library=world.get_blueprint_library()

每一个蓝图 (blueprint) 有一个 ID 来标志它们,并随其生成演员。可以在蓝图库找到某个 ID,随机选择这个 ID 对应的蓝图,或者使用通配符模式过滤结果。

世界对象负责生成角色并对其进行跟踪,生成角色有两种不同的方法:spawn_actor()如果生成失败,则会引发异常;try_spawn_actor() 如果生成失败,则返回 None。

transform=Transform(Location(x=210,y=180,z=50),Rotation(yaw=180)) actor=world.spawn_actor(blueprint,transform)

如果在选定的位置发送碰撞的话,不会生成角色,使用map.get_spawn_points()这个函数返回推荐的生成点列表;同理,world.get_random_location() 可以返回人行道上的随机点,为行人设置目标位置。

camera=world.spawn_actor(camera_bp,relative_transform,attach_to=my_vehicle,carla.AttachmentType.Ri

这一句将 camera 摄像机固定在创造的汽车上,使得二者的位置保持相对固定。产生角色之后,世界会将它添加到参与者列表之中。

o4YBAGCGI0uAawfsAACLIAZpwhE067.png

定义角色列表并清理

actor 主要由get() 和 set() 方法组成,这里需要主要的是请求会被异步的发送到模拟器,但是 carla 每次解析它们的时间都是有限的,用 set() 方法会累积滞后。

地图和导航

创建及改变地图和世界的方法在上面已经提到过了,与航路点相关的所有事情都发生在客户端,不需要与服务器进行通信,每个航路点都包含 carla.Transform,说明了它在地图上的位置以及包含它的车道的方向,carla 的导航是通过 Waypoint API 进行管理的,由 carla.Waypoint 和 carla.Map 的方法摘要组成。

将模拟点转换为地理坐标,使用纬度和经度值将某个位置转换为 carla.GeoLocation, 将道路信息转换为 OpenDrive 格式保存。

my_geolocation=map.transform_to_getlocation(vehicle.transform) info_map=map.to_opendrive()

利用carla.get_transform().location 获取数据,下图是运行 50 秒的初始位置和结束位置:

o4YBAGCGI0uAeNZXAAB9u4dvMJ0392.png

识别位置坐标

可以看出,Carla 中小车的位置最开始在 (0,0,0),经过 50 秒的运行之后位置变化为(196.215607,241.279999,0.271780)。

fqj

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动驾驶
    +关注

    关注

    773

    文章

    13068

    浏览量

    163262
  • 数字孪生
    +关注

    关注

    4

    文章

    994

    浏览量

    11810
收藏 人收藏

    评论

    相关推荐

    未来已来,多传感器融合感知是自动驾驶破局的关键

    驾驶的关键的是具备人类的感知能力,多传感器融合感知正是自动驾驶破局的关键。昱感微的雷视体多传感器融合方案就好像双比人眼更敏锐的眼睛,可以为自动驾
    发表于 04-11 10:26

    自动驾驶汽车技术 | 车载雷达系统

    自动驾驶汽车技术 | 车载雷达系统
    的头像 发表于 03-20 08:09 616次阅读
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>技术 | 车载雷达<b class='flag-5'>系统</b>

    LabVIEW开发自动驾驶的双目测距系统

    精确的距离信息,从而提高车辆的主动安全性能。这一系统的开发和应用有望在自动驾驶领域取得更多突破性进展。 ​ 这是LabVIEW的个功能介绍,更多的使用方法与开发案例,欢迎登录官网,了解更多信息。有需要LabVIEW项目合作开发
    发表于 12-19 18:02

    农机自动驾驶显示系统组成部分以及配置

    随着科技的发展,传统的农机行业正趋于饱和,新生事物层出不穷,无论是传统农机还是从业者都面临如何转型升级的问题。农机自动驾驶系统就是当下最热的概念之。身为新时代农机人,作业的提质增效是无论如何也绕
    发表于 10-17 17:52

    汽车自动驾驶现状及挑战

    可以授权部分控制权给系统管理,某些功能可以自动进行。L2:半自动驾驶。人类驾驶员和汽车来分享控制权,驾驶
    的头像 发表于 08-19 08:30 525次阅读
    <b class='flag-5'>汽车</b><b class='flag-5'>自动驾驶</b>现状及挑战

    高级别智能驾驶业务系列:自动驾驶系统

    水平运输场景中,经纬恒润提供了端到端的车、路、网、云、图全栈式自研解决方案,包含自动驾驶系统、路侧车路协同、基于5G网络的远程遥控驾驶、车队调度管理平台、数字
    的头像 发表于 07-31 16:50 601次阅读
    高级别智能<b class='flag-5'>驾驶</b>业务系列:<b class='flag-5'>自动驾驶</b><b class='flag-5'>系统</b>

    新能源汽车自动驾驶的六个级别

    新能源汽车自动驾驶是指搭载自动驾驶技术的电动汽车。随着人工智能和传感器技术的进步,越来越多的新能源汽车制造商积极开发和推出
    的头像 发表于 06-28 17:04 1580次阅读

    自动驾驶中的线控系统综述

    自动驾驶感知识别、决策规划、控制执行三个核心系统中,和传统汽车零部件行业贴合最近的就是控制执行端,说的再明确一 些就是驱动控制、转向控制、制动控制等。自动驾驶的路径规划等
    发表于 06-07 14:12 0次下载
    <b class='flag-5'>自动驾驶</b>中的线控<b class='flag-5'>系统</b>综述

    自动驾驶汽车如何工作 有什么好处

    如今,自动驾驶汽车已成为一个热门话题,理由很充分:无人驾驶汽车可能会带来自工业革命以来最大的社会革命,而且似乎 每个人都在参与其中。 从有关 Apple
    发表于 06-06 14:18 0次下载
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>如何工作 有什么好处

    自动驾驶技术体系及相关术语

    一、自动驾驶技术体系 目前可预见的一种自动驾驶解决方案就是:通过GPS等地图定位技术,自动驾驶汽车进行全局路径规划,首先找到一条从出发地到目
    发表于 06-02 15:55 0次下载
    <b class='flag-5'>自动驾驶</b>技术体系及相关术语

    自动驾驶系统涉及哪些技术

    自动驾驶作为一个庞杂的系统工程,其所涉及的技术点比较多,本文主要从硬件和软件两方面简要谈谈自动驾驶汽车所涉及的 相关。对于自动驾驶
    发表于 06-01 15:04 0次下载
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>系统</b>涉及哪些技术

    自动驾驶技术概述

    自动驾驶汽车,通过技术实现车辆自动驾驶,目的是减少驾驶疲劳、增强驾驶安全。 自动驾驶
    发表于 06-01 14:50 1次下载
    <b class='flag-5'>自动驾驶</b>技术概述

    汽车自动驾驶等级

    汽车工程师协会)制定的划分方法,按照分级标准,自动驾驶从L0至L5总共被分为 6个级别,L0代表没有自动驾驶的传统人类驾驶,L1至L5则随自动驾驶
    发表于 06-01 14:32 0次下载
    <b class='flag-5'>汽车</b><b class='flag-5'>自动驾驶</b>等级

    汽车生产线数字孪生系统有什么价值?

    数字孪生是指将实物物体通过数字化技术建模,以虚拟形式模拟实际场景,汽车生产线数字
    的头像 发表于 05-18 15:10 436次阅读

    探讨自动驾驶系统感知系统

    随着汽车行业不断发展,技术开发人员、科研人员等对自动驾驶的研究越来越火爆。自动驾驶并不是一项单一的技术,而是汽车电子、智能控制以及互联网等技术发展融合的产物,其原理为
    的头像 发表于 05-17 11:10 927次阅读
    探讨<b class='flag-5'>自动驾驶</b><b class='flag-5'>系统</b>感知<b class='flag-5'>系统</b>