在AUTOSAR工作流程中,通常使用ARXML文件描述通信矩阵,支持多种汽车通信机制,如CAN、LIN、FlexRay和Ethernet。和传统网络相比,符合SOA架构的以太网通信机制(如SOME/IP)在通信模式、数据格式和协议层次上更为复杂,因此定义其通信矩阵的结构和规则也更复杂。专业的ARXML文件查看工具能够提高通信矩阵的可读性,帮助开发和测试人员更好地解决通信问题。
CANoe/CANalyzer 18引入全新的“AUTOSAR Viewer”,这是一款改进的AUTOSAR通信矩阵查看工具,随CANoe/CANalyzer一起安装。安装后,可通过“开始菜单|AUTOSAR Viewer”打开。AUTOSAR Viewer能够帮助用户更直观地查看ARXML文件中的以太网通信,并支持多种功能,如过滤、搜索等。此外,AUTOSAR Viewer具备如下特性:
>
全面支持SOME/IP通信矩阵
>
能够处理超大文件(例如,打开1.9GB的AUTOSAR Classic ARXML文件只需25秒)
>
支持并行加载
>
支持多文件处理
01
AUTOSAR Viewer vs AUTOSAR Explorer
随着CANoe/CANalyzer软件版本的不断迭代,ARXML文件查看工具也在不断更新。最初的工具是AUTOSAR Explorer,随后升级为AUTOSAR Explorer 2,到了CANoe 18版本,又新增了AUTOSAR Viewer。尽管这些工具在功能和支持的AUTOSAR Schema版本上有所不同(详见图1),但核心目标都是为了帮助用户更轻松地将AUTOSAR标准的功能和定义集成到开发和测试流程中。
图1 ARXML查看工具对比
注:AUTOSAR Schema(扩展名为xsd)是由AUTOSAR组织定义的规范,用于规定ARXML文件的数据结构和格式。ARXML文件必须符合AUTOSAR Schema定义的结构、内容和数据类型约束,以确保符合AUTOSAR规范,并支持AUTOSAR架构的有效实施和应用。可以通过文本编辑器打开ARXML文件,以查看其使用的AUTOSAR Schema版本,如图2所示。
图2 查看Schema版本
02
AUTOSAR Viewer用户界面介绍
>
Categories View
打开ARXML文件后,其中的元素会被分类到Categories窗口中。该窗口显示元素的数量和结构因数据源是AUTOSAT Classic还是AUTOSAR Adaptive格式而异。每个打开的文件都会生成一个独立的树状视图。如果某个类别中不包含任何数据,则不会显示相应的树元素。
>
Data View
在Categories窗口中单击树元素即可打开相应的数据窗口,查看详细信息。
>
Properties
在Data窗口选中任意元素,可以在Properties窗口中查看更多属性信息。
>
Information
数据处理过程中发生的所有通知、警告、错误等都会显示在Information窗口。
图3 AUTOSAR Viewer用户界面
>
Search/Search Results
Data视图和Properties视图都支持局部搜索。除此之外,AUTOSAR View还支持全局搜索,可以并行搜索多个数据库,提供多种搜索选项。搜索结果会显示在Search Result窗口中,双击搜索结果可以打开相应的元素。通过搜索功能,我们可以更快速地查看所需信息。例如,根据服务内容(Method/Event/Field)的名称进行搜索,快速查看其通信参数与服务接口。
图4 搜索界面
03
AUTOSAR Viewer核心功能-助力SOME/IP仿真
1.
支持查看SOME/IP Method和输入输出参数名称
在AUTOSAR Viewer的Method类别下,可以查看Method及其输入输出参数名称,并支持使用快捷键Ctrl+C进行复制,方便直接粘贴到CAPL脚本中。这使得在CANoe中基于SOME/IP IL进行Method仿真更加便捷,如图5所示。
图5 查看Method和输入输出参数
2.
支持查看复杂数据类型
如果SOME/IP参数涉及使用复杂数据类型,可以在“DataType”列上右击并选择“Navigation->Data Types->xxx”以查看任意深度的嵌套字段,如图6所示。这有助于在基于SOME/IP IL的仿真过程中正确索引参数路径,并在遇到SOME/IP序列化问题时快速定位问题原因。
图6 查看嵌套任意深度的参数
注:图5示例Method的输入输出参数为基本数据类型,通过CAPL函数SomeIpGetValue...或SomeIpSetValue....访问时,参数路径直接使用参数名称即可。访问复杂数据类型的参数,在CAPL中使用参数路径时要以参数名称开头,并且要考虑数组索引和结构体成员名称等信息。例如,参数路径“in_argument[0].Object.ObjectID”中,“in_argument”是参数名称,“[0]”表示数组索引,“Object”是结构体名称,而“ObjectID”是最终的字段名称。
3.
查看服务部署信息
在AUTOSAR Viewer的Ethernet类别下,可以查看服务实例的部署信息,包括服务消费方和提供方的IP地址、传输协议、通信端口和VLAN信息等,如图7所示。这些信息可辅助排查在SOME/IP通信过程中遇到的问题。
图7 查看通信端点部署信息
总结
AUTOSAR Viewer主要用于可视化SOME/IP通信矩阵中的服务接口、服务部署和通信端点等信息,显著提升数据库的可读性。
我们致力于满足用户在AUTOSAR工作流中的需求,并不断进行功能完善。如果您对工具有任何疑问或期望新增的功能,欢迎与我们联系。
维克多中国
微信号|Vector维克多
Bilibili | 维克多汽车技术
info@cn.vector.com
021-2283 4688