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

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

3天内不再提示

CANoe中ADAS功能集介绍

北汇信息POLELINK 2025-07-10 14:55 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

高级驾驶辅助系统(ADAS)在汽车中的应用日益增长,为了满足工程师对于ADAS的分析、仿真和测试等功能的需求,CANoe从15.0版本开始提供ADAS Feature Set(ADAS功能集,简称AFS)。AFS作为CANoe基础功能的一部分,不需要购买额外的Option即可使用。同时,CANoe本身的强大功能和开放接口使得结合总线通信,集成第三方工具,实现SIL/HIL等都变得更轻松。


功能概述

>

集成基于ASAM OSI规范的ADAS数据模型,可以通过CAPL/C#代码轻松地访问ADAS对象的信息,并实现与总线数据的交互;

>

能与第三方仿真环境通过MATLAB、C-API或FMU实现ASAM OSI数据流交互;

>

可通过Trace、Scene等分析窗口对ADAS对象进行可视化分析。

>

配合CANoe自带的场景编辑器Scenario Editor可进行简单场景仿真,也可以集成DYNA4或其他第三方工具用于更细致的场景仿真和车辆动力学仿真。

>

结合Communication Setup中的应用模型(基于CAPL/C#)以及测试API可实现闭环HIL系统验证。

>

可根据被测应用的接口生成SIL Adapter,实现对纯软件级别的被测系统的访问和数据交换,以便直接在开发环境中测试ADAS算法


窗口介绍

1.

Communication Setup窗口

CANoe中ADAS对象是在Simulation -> Communication Setup窗口中通过vCDL(Vector Communication Description Language)文件添加的。在vCDL中使用语句导入ADAS模块后,即可按需定义ADAS对象。之后可在Application Models或是测试模块中通过CAPL、C#等编程语言访问这些对象,以便进行分析、仿真或测试。

eb000de4-5d5a-11f0-9cf1-92fbcf53809c.png

2.

Scene窗口

Scene窗口是一个可以显示传感器、检测对象、真实目标等ADAS对象的可视化窗口。CANoe运行过程中,ADAS对象的位置、大小等信息会以三维图像的形式被绘制在窗口中,并与左侧列表中的对象通过颜色进行对应,以便更直观地观测ADAS对象。

eb0f54b6-5d5a-11f0-9cf1-92fbcf53809c.png

3.

Trace窗口

Trace窗口是CANoe用户较为熟悉的一个分析窗口。针对ADAS应用,Trace窗口也扩展了数据分析功能。选择Layout为ADAS后,即可通过DO(Distributed Object)的方式显示和解析传感器和检测对象的相关参数。

eb1d567e-5d5a-11f0-9cf1-92fbcf53809c.png


应用举例

1.

CAPL访问ADAS对象

通过vCDL定义ADAS对象后,可以通过CAPL编程的方式来对其进行操作。

最常用的传感器对象的成员通过接口ISensor描述,ISensor接口中包含Data和Methods,如图所示:

eb2cba4c-5d5a-11f0-9cf1-92fbcf53809c.png

Data中主要包含sensor_info,其中sensor_view_configuration和sensor_data主要是传感器本身的一些信息(例如id、检测范围、安装位置等),detected_objects则是传感器检测到的对象的列表;Methods中包含Create/Get/Set/Update/Remove等方法,可用于对检测对象进行创建/获取/设置/更新/移除等操作。

在使用CAPL设置ADAS对象时,通常情况下首先需要设置传感器自身参数,例如range表示检测的距离,field_of_view_horizontal表示水平方向上检测的角度,这些都可以在Scene窗口中直观显示出来。

eb358104-5d5a-11f0-9cf1-92fbcf53809c.png

然后,可使用GetOrCreateDetectedObject方法来添加指定trackingId的检测对象或是获取已有trackingId的检测对象的信息,例如:

eb45a3c2-5d5a-11f0-9cf1-92fbcf53809c.png

检测对象根据定义可以是如下之一:

eb4e7ba0-5d5a-11f0-9cf1-92fbcf53809c.png

GetOrCreateDetectedObject方法的返回值为检测对象对应的名称,为该名称添加前缀后,可通过lookupDistObj在指定的检测对象类型中查找,并最终返回具体的某个对象,例如:

eb5aa484-5d5a-11f0-9cf1-92fbcf53809c.png

之后,即可用类似访问总线信号的方式,直接通过$符号来访问对象中的数据,例如:

eb64deb8-5d5a-11f0-9cf1-92fbcf53809c.png

2.

总线数据转换

CANoe本身具有强大的总线数据处理的功能,可以非常便捷地获取CAN/Ethernet等总线报文中包含的传感器数据,然后通过CAPL编程的方式将报文中的数据映射到ADAS对象上,以便更直观地分析,或是进行进一步的测试等。

对于CAN总线上的数据,可以通过事件捕获目标报文,在事件中使用读取当前报文中的信号,并将值赋给目标ADAS对象,即可实现传感器或检测对象的数据从CAN报文到ADAS对象的转换。这里需要注意的是,由于单个CAN报文的数据长度较小,同一对象的数据可能分散在多个报文中,无法在一个事件中完成赋值。这种情况可以通过ISensor接口的BeginUpdate()、SetDetectedObjectCompleted()以及Update()方法实现等待所有数据都赋值完成后才更新并发送ADAS对象信息。

eb70699a-5d5a-11f0-9cf1-92fbcf53809c.png

对于Ethernet中的数据,同样可以通过或是对于SOME/IP数据的OnSomeipProcessRxMessage()等事件/函数获取所需的目标数据,以便赋值给ADAS对象用于后续分析、测试等。

eb7c14e8-5d5a-11f0-9cf1-92fbcf53809c.png

3.

基于Scenario Editor的场景仿真

CANoe中自带一个简单的场景仿真工具Scenario Editor,可以通过图形界面创建场景,实现加载地图、定义车辆及行驶轨迹、定义传感器等功能。场景中的车辆、传感器可与vCDL中定义的ADAS对象直接对应,配合编程语言便于仿真一些简单的测试场景。

场景中的车辆与vCDL中的IGeoObject接口对象直接通过名称关联,如下图黄色高亮所示,车辆上的传感器则通过SensorID与ISensor接口对象关联,如下图中红框所示。完成映射后,ADAS对象会按照场景中设定的路径、时间轴执行相应动作。

eb8b6f2e-5d5a-11f0-9cf1-92fbcf53809c.png

对于场景中的传感器在场景中检测到的对象,可以通过ISensor接口的GetDetectedObjects()方法直接获取,与案例1类似,通过lookupDistObj()找到对应的检测对象后,即可通过<$>访问检测对象的属性例如尺寸、速度等,用于后续的测试。

ebe1f0ce-5d5a-11f0-9cf1-92fbcf53809c.png


总结

CANoe中的AFS为用户提供了ADAS分析、仿真、测试所需要的窗口、对象、接口等。除文中介绍的内容外,还提供与其他工具交互、在虚拟环境中使用等功能,并且随着CANoe版本的不断更新还会添加新的功能并完善已有功能。

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

    关注

    311

    文章

    2299

    浏览量

    211501
  • CANoe
    +关注

    关注

    4

    文章

    80

    浏览量

    9533
  • 驾驶辅助系统

    关注

    0

    文章

    118

    浏览量

    17191
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ADAS功能安全HiL仿真测试系统介绍#ADAS #VTHiL

    adas
    北汇信息POLELINK
    发布于 :2024年08月03日 20:07:34

    CANoe:网络和ECU开发、测试和分析的专业工具

    解决问题。评估窗口的表格和文字说明可用来评价结果。CANoe具有测试功能,用来简化或自动进行测试。运用该功能,可以进行一系列的连续测试,并自动生成测试报告。另外,
    发表于 10-09 17:42

    评估板EVAL-ADAS1000SDZ用于演示用于医疗仪器的ADAS1000成ECG设备

    评估板EVAL-ADAS1000SDZ用于演示用于医疗仪器的ADAS1000成ECG设备。有关ADAS1000的完整说明,请参见数据手册,使用本用户指南时应参考。该评估板用于评估
    发表于 07-30 09:01

    ADAS技术介绍

    高级驾驶辅助系统(ADAS功能已被证明可以减少事故、挽救生命。根据消费者报告的美国公路安全保险协会表明,与2017年没有配备前方碰撞预警和自动紧急制动系统的汽车相比,配备了这些系统的汽车的前后
    发表于 11-08 06:07

    ADAS最全功能介绍

    功能上分类,可以分为:1.主动控制类ADAS:ACC/AEB/LKS等 2.预警类ADAS:FCW/LDW/PCW等 3.其他辅助性ADAS:BSD/ADB/全景泊车等
    发表于 05-25 11:45 3.7w次阅读
    <b class='flag-5'>ADAS</b>最全<b class='flag-5'>功能</b><b class='flag-5'>介绍</b>

    ADAS有什么功能ADAS的核心技术详细介绍。你是否需要一个ADAS

    大家对于这个名词应该不会很陌生。我们在许多品牌的高端车型、行车记录仪或者智能云镜的配置中听到关于“ADAS”的介绍。都知道ADAS有着预测和规避风险的强大技能。而ADAS具体运用到行驶
    的头像 发表于 08-26 10:40 10.3w次阅读

    CANoe软件的介绍

    CANoe是德国Vector公司的针对汽车电子行业的总线分析工具,现在我用CANoe7.6版本进行介绍,其他版本功能基本差不多。
    的头像 发表于 02-17 13:53 1.2w次阅读
    <b class='flag-5'>CANoe</b>软件的<b class='flag-5'>介绍</b>

    使用Python访问CANoe COM接口实践

    本文介绍CANoe COM基本构成、常用COM对象以及Python脚本调用CANoe COM的方法。
    的头像 发表于 07-27 16:16 4410次阅读
    使用Python访问<b class='flag-5'>CANoe</b> COM接口实践

    浅谈CANoe实现SOA仿真测试

    本文介绍怎么通过我们CANoe工具去实现SOA的相关功能CANoe Communication Setup功能为实现SOA模型的交互和模型
    的头像 发表于 08-01 14:17 2683次阅读
    浅谈<b class='flag-5'>CANoe</b>实现SOA仿真测试

    期待已久的ADAS终于能在CANoe15.0实现了,看看15.0还有哪些新变化

    本文介绍CANoe15新特性,包括在CANoe 实现ADAS测试,SiL测试等。
    的头像 发表于 08-01 14:20 1579次阅读
    期待已久的<b class='flag-5'>ADAS</b>终于能在<b class='flag-5'>CANoe</b>15.0<b class='flag-5'>中</b>实现了,看看15.0还有哪些新变化

    CANoe进阶功能:Multi CANoe

    本文介绍CANoe的进阶功能:Multi CANoe,适用于ECU联合仿真,简化多设备联调。
    的头像 发表于 08-04 14:41 3085次阅读
    <b class='flag-5'>CANoe</b>进阶<b class='flag-5'>功能</b>:Multi <b class='flag-5'>CANoe</b>

    CANoe集成解决方案

    本文介绍CANoe集成解决方案,搭配测试管理平台,实现测试项目的集中管理。用于监控管理CANoe工程,采集、仿真CANoe报文数据等。
    的头像 发表于 08-04 14:49 1804次阅读
    <b class='flag-5'>CANoe</b>集成解决方案

    功能发布 | TSMaster新增CANoe自动化控制模块,欢迎下载体验!

    前言今天介绍TSMaster的新功能CANoe自动化模块。该模块的功能是通过激励CANoe内部的系统变量,配合运行在
    的头像 发表于 12-05 15:18 2403次阅读
    新<b class='flag-5'>功能</b>发布 | TSMaster新增<b class='flag-5'>CANoe</b>自动化控制模块,欢迎下载体验!

    Python与CANoe/CANoe4SW

    Python作为功能强大的编程语言,在智能汽车研发和测试应用广泛,如数据处理、测试自动化、测试脚本开发,甚至直接将Python应用运行在车辆上。CANoe产品体系为汽车行业XiL测试提供丰富
    的头像 发表于 11-16 08:25 4034次阅读
    Python与<b class='flag-5'>CANoe</b>/<b class='flag-5'>CANoe</b>4SW

    CANoe仿真HTTP节点的实战秘籍大公开

    使用需求,依托于CANoe的连接功能(ConnectivityFeatureSet),以及DistributedObject(DO)功能,可以仿真HTTP节点,
    的头像 发表于 03-05 10:04 898次阅读
    <b class='flag-5'>CANoe</b>仿真HTTP节点的实战秘籍大公开