市场动态

【连载四】基于PREEvision的智能网联EE架构开发


上一篇中我们对基于以太网的面向服务的架构设计进行了讲述,接下来分享如何进行具体的SOA以太网通信设计。区别于传统CAN通信的定义,以太网通信是通过IPMAC寻址方式,采用UDP/TCP传输协议通过端口Port实现具体服务间的通信,下面将进行具体阐述。

上篇文章回顾:

基于EthernetSOA设计流程,如下图所示

主要包含以下6部分内容:

服务定义

软件设计

硬件拓扑设计

服务部署

信号路由

以太网通信详细参数定义

在上篇文章中通过将整车功能抽象为服务,并对服务进行定义后服务以标准化的接口提供功能,在完成实现服务的软件设计以及硬件拓扑设计后,将服务部署到具体的ECU内,通过信号路由,将实现服务的软件部件间的通信转变成真实的总线通信。

具体设计细节请参见【连载三】基于PREEvision的智能网联EE架构开发

1、以太网通信详细参数定义

以太网通信包含以下内容:

物理层类型、IP、MAC等ECU具体参数定义

Socket Adapter定义

信号定义

数据序列化定义

SOME/IP-SD参数设置

ECU具体参数定义

点击相对应的表格进行ECU的物理层类型、MAC地址、IP地址设置输入。

选定以太网物理层实现类型:100BASE-T1物理层/100BASE-TX 物理层;通过IP地址、MAC地址可以找到车内任意ECU然后进行一系列通信。

2、Socket Adapter定义

Socket Adapter主要是对Socket Address进行配置以及选择采用的传输协议(UDP/TCP)。

Socket Address用IP地址和端口号来表示。

要通过以太网进行通信,至少需要一对套接字(Socket),其中一个运行在客户端,称之为Client Socket,另一个运行于服务器端,称为Server Socket。再确定IP地址和端口号后,通过具体的传输协议即可实现不同服务之间的通信。

3、信号定义

对信号的定义主要包括信号的长度、起始位置、数据类型、信号精度、无效值、转换关系等。

4、数据序列化定义

选择信号后通过点击数据序列化按钮后将不同的数据结构进行了序列化,便于网络传输。同时自动创建SOME/IP传输相关属性,实现了在基于Socket的Ethernet通信与基于PDU的AUTOSAR通信之间转换。

5、SOME/IP-SD参数设置

SOME/IP-SD参数设置,包括协议版本、服务实例ID、服务发现通信行为具体参数、生命周期等

SOME/IP-SD 用于定位服务实例,并检测服务实例是否运行且执行发布/订阅处理。

完成以太网通信设计后,可以导出ARXML格式的数据文件,包含了SOA架构设计所有相关的服务及相关属性以及服务的软硬件实现方式、通信方式等等。该ARXML文件可以用于其他设计工具(例如Vector的DaVinci Developer 、DaVince Configurator)进行进一步的配置。

在整个SOA开发过程中,我们可以看到从服务定义到实现服务的软件设计以及硬件拓扑设计直到以太网通信设计,PREEvision提供了强大的开发环境进行支持。

在将以太网集成到现有车载网络的过程中,无法一蹴而就,在短期内不能取代现有的车载网络,汽车Ethernet和CANFD将在下一代车载网络系统中共存。PREEvision开发工具支持面向服务的架构和传统基于功能的架构开发,无论是对CAN总线的扩展替换还是针对新技术进行全新架构开发,都能提供强大的开发环境支持。通过这系列文章我们分享了如何应用PREEvision进行面向服务的架构开发,后续我们将分享在传统的基于功能的架构开发过程中PREEvision如何提供更高效、便捷的开发优势。