轻松上手CANoe Scenario Editor———智能网联工程师入门篇

news/2024/10/30 12:32:52/文章来源:https://www.cnblogs.com/polelink/p/18515618

(小编先带大家扫盲一下)

V2X(Vehicle-to-Everything,车与万物通信)是一种先进的通信技术,使车辆能够与周围环境进行信息交换。这不仅包括与其他车辆(V2V)的互动,还涵盖与基础设施(V2I)和行人(V2P)的通信。通过V2X,车辆能够实时获取周围信息,从而提升行驶安全性和交通效率,真正实现智能交通的愿景。而智能汽车的世界中,CANoe的Car2X功能就像是一位灵动的翻译官,轻松打破了车与车之间的“语言障碍”。通过无线信号交换着密切的消息。这不是偶像剧,而是CANoe的舞台演出!它帮助汽车在复杂的交通环境中交流得如鱼得水,无论是彼此提醒即将到来的交通信号,还是共享行驶速度的“小道消息”,都能轻松搞定。在这个充满活力的舞场上,CANoe的Car2X功能不仅仅是调试工具,它更是一个搭建虚拟交通世界的乐高平台,让开发者在各种场景中尽情畅玩:模拟繁忙的都市交叉口、测试紧急刹车时的通信等,读者可以使用CANoe测试DUT的V2X功能。

 

在进行V2X的仿真测试过程中,仿真场景的搭建是极为重要的,需要确认仿真场景下的Route和仿真使用的Station以及仿真过程中涉及到的事件属性,请跟随本文,深入学习了解场景搭建的方法。

 

软件工具上选择使用CANoe DE 18 SP2(截至目前最新的版本呦~)进行场景搭建,需要准备好CANoe、Option.Car2X的License。(没有的小伙伴可以使用Demo版本的License进行学习哦!)

 

1.打开Scenario Editor

 

CANoe提供多个实用的工具,在Tools页签下打开本文的主角“Scenario Editor”

 

 

2、认识Scenario Editor

 

 

Scenario Editor 窗口可通过图形界面创建交通场景,在进入到编辑界面后,可以先确认地图参数配置,该窗口使用与 Map 窗口(想了解Map 窗口的使用,请后台私信哦~)相同的地图组件,也允许进行类似 Map 窗口的瓦片服务器(Tile Server)配置以及离线地图配置。Scenario Editor 中的地图配置独立于Map 窗口,可通过点击窗口中“Settings”功能按钮打开地图配置页面配置地图供应商等选项。Vector (OSM)是 Map 窗口默认使用的地图供应商。为了避免在使用 CANoe 时受到第三方供应商的限制,自CANoe 14.0版本开始,Vector引入了自己的瓦片服务器,地图数据可以直接从Vector(OSM)获取。该服务器提供的地图数据都基于开源地图项目OpenStreetMap®。

 

在 Scenario Editor 中可以独立设置地图中心点的地理坐标和地图的缩放等级,点击窗口中的“Zoom to Filt”按钮,地图会自动进行定位和缩放。

 

 

3、Scenario的编辑

 

选择使用“Open”按钮选择打开未编辑完毕的场景,或者选择“New Scenario”重新搭建新的场景,当出现误删除编辑界面的时候,可以使用“View”页签下的“Reset Layout”按钮快速恢复到原始的图形操作界面。

 

 

3.1、编辑Route

 

读者可以选择新建一个场景,导入预先编辑的kml文件或者第一次使用选择新建Route

 

 

在编辑Route时,需要激活上图的“Edit”选项,使用鼠标拖动即可编辑“waypoint”,或者找到想要更改的点,直接赋值已知经纬度。这样的优点是Route更为精确。Route也可以使用上图的“Export”选项导出复用。运动方向从Route1到Finish,在“waypoint”的前后可以鼠标右键添加新的“waypoint”(当有转弯等弧形场景时,足够多的“waypoint”一定会用到哦!)在编辑Route时,根据实际的场景可能需要创建多个Route,可以在原Route的基础上进行位置偏移:

 

5、编辑Station

 

在创建完毕完整的Routes后,就可以创建仿真过程中的Station:

 

 

一般的,Station命名规则为:主车命名为Hv,远车命名为Rv1、Rv2等,按照数量依次类推,路侧单元命名为RSU,如果需要点位则命名为Point1、Point2等。每个Station都会在右下角生成一条时间轴,在时间轴上添加速度节点来规划运动状态;航向角随着路径自动计算。下图表示Hv速度在第0秒从0km/h开始,在5秒的时候达到30km/h,然后以30km/h运动到场景开始后第13秒,然后加速到第17秒的45km/h,选中点位之后可以手动输入其在时间轴的位置,输入速度参数,也可以直接在时间轴上拖动点位

 

 

车辆加速度是根据两个点位的时间差和速度差自动计算的,设置固定加速度需要手动计算后调整节点在时间轴上的位置,对于Station还可以鼠标右键添加赋予其特殊的属性:

 

 

最后,保存编辑后的Scenario文件,文件后缀为.scn

 

6、使用Scenario文件

 

对于Scenario文件的使用,方法较多,可以使用CANoe提供的“Scenario Manager”窗口,在此窗口下可以直接打开对应的.scn文件进行加载使用。

 

 

或使用CAPL的方式进行加载文件,对应CAPL函数:long C2xLoadScenario(char* scenarioFilePath),通过脚本的方式,可以配置其给到自定义系统变量从而使用Panel进行加载场景使用。

 

 

7、管理Station

 

 

为了在需要测量的窗口中显示应用消息的数据内容(信号),必须始终保证接收到的包与数据库(ITS (Intelligent Transportation System)站点)中创建的节点之间的关联。Station Manger窗口提供相应的映射关系编辑,以确保观察到的信号(例如在Data窗口中显示的信号)确实来自要进行测量的 ITS 站点。

 

至此,你已经学会了仿真场景的搭建和使用啦~完结撒花*★,°*:.☆( ̄▽ ̄)/$:*.°★*

 

再来谈谈仿真可视化,CANoe的场景仿真可视化功能非常强大,除了大家所熟知的Panel可视化,一般可以使用包括 Map 窗口的二维仿真显示和 Scene 窗口的三维仿真显示。二维仿真侧重于快速展示拓扑和组件之间的关系。通过直观的二维图形界面,用户可以轻松理解仿真组件的连接和通信,便于进行初步设计和验证。相比之下,三维仿真则提供了更为复杂和真实的环境,能够模拟实际的物理空间和动态交互,适合于深入分析和测试复杂系统。三维窗口允许用户观察组件在三维空间中的运动,适用于需要考虑真实道路环境的应用场景,如ADAS仿真方面的毫米波雷达测试。当使用Scenario Editor工具编辑场景后也可适用于Scene窗口(关于此窗口的使用也可以后台私信哦),编辑的场景以及Scene窗口和Map窗口对比如下:

 

 
 
 
 

总的来说,二维仿真在于简化和快速验证,而三维仿真则强调真实感和复杂性。选择合适的仿真方式可以帮助工程师更有效地进行系统设计和测试。一般的,考虑到V2X方面的仿真和地图的强关联性,推荐使用Map窗口进行二维可视化。

 

场景搭建是V2X仿真过程中重要的一环,熟练使用其应用到V2X仿真工程是一个智能网联工程师必备的技能。想了解更多关于V2X的信息可以参考北汇信息一线工程师编写的文章(满满的都是干货、( •̀ ω •́ )y)。

 

文章链接:https://mp.weixin.qq.com/s/kIc6OitRKn5VItJWhJOqmA

 

关于我们:北汇信息是一家技术驱动的创新型服务企业,始终专注于汽车电子领域的新技术和新产品,为整车厂和零部件企业提供完整的研发、测试解决方案。致力于成为汽车领域国内技术领先、客户信赖的技术服务供应商。

 

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

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

相关文章

Windows Server 2016 中文版、英文版下载 (updated Oct 2024)

Windows Server 2016 中文版、英文版下载 (updated Oct 2024)Windows Server 2016 中文版、英文版下载 (updated Oct 2024) Windows Server 2016 Version 1607 请访问原文链接:https://sysin.org/blog/windows-server-2016/ 查看最新版。原创作品,转载请保留出处。 作者主页:…

Windows 7 Windows Server 2008 R2 简体中文版下载 (updated Oct 2024)

Windows 7 & Windows Server 2008 R2 简体中文版下载 (updated Oct 2024)Windows 7 & Windows Server 2008 R2 简体中文版下载 (updated Oct 2024) Windows 7 & Windows Server 2008 R2 (2024 年 10 月更新) 请访问原文链接:https://sysin.org/blog/windows-7/ 查…

SA:从入门到入土

基本应用 读入一个长度为 $ n $ 的由大小写英文字母或数字组成的字符串,请把这个字符串的所有非空后缀按字典序(用 ASCII 数值比较)从小到大排序。 解法 1.将每个后缀取出来,直接排序 \(O(n^2 \log n)\) 2.用hash二分LCP比较下一位,\(O(n \log^2 n)\) 3.倍增求后缀数组,\…

06.动态代理设计模式

06.动态代理设计模式 目录介绍01.为何要动态代理1.1 为何要动态代理 1.2 动态代理思考02.动态代理的概念2.1 动态代理定义 2.2 动态代理类比理解 2.3 动态代理参与者 2.4 动态代理步骤03.动态代理的实现3.1 罗列一个场景 3.2 用一个例子理解代理 3.3 基于接口动态代理 3.4 基于…

.NET 8.0 开源在线考试系统(支持移动端)

https://www.cnblogs.com/1312mn/p/18510576阅读目录前言 系统介绍 系统功能 支持环境 系统源码 项目部署 项目效果 项目总结 项目地址 最后前言 推荐一款基于.NET 8.0 免费开源跨平台在线考试系统,系统不仅支持桌面端,还特别优化了移动端的用户体验。 通过本系统可以轻松搭建…

GaussDB数据计算路由层(Coordinator)关键技术方案

GaussDB Kernel V5版本的Catalog还是本地存储, 所以还需要考虑catalog的持久化问题.未来演进元数据解耦,Coordinator 无状态, 就不需要考虑Catalog持久化问题了。但是跨节点场景下的事务提交在Coordinator上还是要持久化的。图14 Coordinator模块图 路由信息:每个表数据共分1…

GaussDB全局事务管理层(GTM)关键技术方案

GTM 仅处理全局时间戳请求, 64位CSN递增,几乎都是CPU ++和消息收发操作。不是每次都写ETCD, 而是采用定期持久化到ETCD 里, 每次写ETCD的CSN要加上一个backup_step (100w), 一旦GTM故障,CSN从ETCD读取出来的值保证单调递增。当前GTM 只完成CSN++, 预估可以支持200M/s 请求…

GaussDB集群管理层(CM)关键技术方案

GaussDB Kernel V5 集群管理层关键模块如下。图4 集群管理层组件设计图 CM 组件提供了四种服务 CM Agent, CM Server, OM Monitor, cm_ctl,与各类实例服务组件(CN, DN, GTM 等)一起构成了整个数据库集群系统。cm_ctl通过命令行执行集群的启动、停止、状态查询、主备倒换、备…

2024年10月中国数据库排行榜:TiDB续探花,GaussDB升四强

10月墨天轮排行榜解读已发布!OceanBase、PolarDB、TiDB三甲格局稳定,GaussDB排名攀升至第四,此外亦有部分产品表现亮眼,一起来看更多排名情况与解读。10月中国数据库流行度排行榜如期发布,再次印证了市场分层的加速形成。国家数据库测评结果已然揭晓,本批次通过的产品数量…

GaussDB技术解读——查询优化器

查询优化阶段主要是SQL执行过程中在优化器SQL Optimizer中执行的部分,优化器作为数据库的大脑是SQL执行路径决策者,从全局视角出发提升查询的性能,降低用户使用数据库调优的门槛。查询优化总体上分为逻辑优化、物理优化。查询优化从总体上可以分成两类: 1、基于规则的逻辑优…

markdown矩阵分块和latex中矩阵分块记录

1. markdown中常见的符号附件 \hat{X} \widehat{X} \check{X} \breve{X} \tilde{X} \dot{X} \ddot{X} \overline{X} \underline{X}2. markdown中矩阵 由\left[ right], \begin{array}{ccc} \end{array}包围,分行由\\实现,分列通过ccc固定列数,列与列间用&分割 代码:\…

二、DEBUG模式及常用指令

debug概述 debug是DOS、Windows都提供的实模式(8086方式)程序的调试工具。使用他可以查看CPU各种寄存器中的内容、内存的情况和在机器码级跟踪程序的运行 debug的功能 调试(Debug)的命令比较多,共有20多个,但这6个命令是和汇编学习密切相关的。 在以后的实验中,我们还会用…