基于INTERWORKVDE的SOME/IP通信设计

原创 汽车电子与软件 2023-05-05 17:55

作者 | 窦明佳
出品 | 汽车电子与软件



一、前言


在前期的文章《基于Enterprise Architect的SOA开发方法》中介绍了使用MBSE开发SOA架构的方法,通过需求分析、功能设计、模块设计过程定义Service以及Service Interface,接下来的Ethernet通信设计过程需承接上游服务设计的内容,进行数据链路层(MAC+VLAN)、网络层(IP)、传输层(UDP/TCP Port)以及应用层(SOME/IP、SOME/IP-SD)的参数定义,并最终导出ARXML文件输入下游软件开发团队,对于ARXML文件的生成方法行业内目前大概的方式如下:

  • 通过对Enterprise Architect进行二次开发,可基于文档生成器导出服务矩阵,然后再使用第三方插件将SOME/IP服务矩阵转换为ARXML文件,从而导入Matlab生成应用层开发的SWC模型;

  • 直接从Enterprise Architect导出XMI文件,然后将XMI格式文件导入下游通信设计工具比如INTERWORK VDE,从而进行Ethernet通信设计,并可导出AP XML文件及CP XML文件,从而导入Matlab生成应用层开发的SWC模型。

图1:Enterprise Architect XMI文件导出



二、SOME/IP通信设计


本文主要介绍的就是第二种方式,其基于Enterprise Architect+INTERWORK VDE的工具链实现了SOA架构的完整开发,如下图2所示,通过将Enterprise Architect导出的XMI文件导入VDE工具,从而形成了Service Library以及DataType Library并根据服务的部署关系自动创建Ethernet Node和Provide Service Instance和Consumer Service Instance.



2:EA导出XMI文件导入VDE


2.1 服务参数定义


将XMI文件导入VDE后,会根据配置文件自动设置默认参数,例如Service ID、Element ID、Instance ID、Port number、Mac Address、Netork Address、Network Mask等,通信工程师可使用默认参数或根据实际需要修改默认参数。服务定义页面共有General、Method、Event、Field和EventGroup五个标签页:

  • General标签页:主要用于定义Service Name、Service ID、Service Description;

  • Method标签页:可以定义Element Name、Element ID(0x0001-0xFFFE)、RR/FF、Protocol(UDP/TCP)、Parameter Name、Datatype、Direction(IN/OUT/INOUT)、Comment;

  • Event标签页:可以添加多个Event类型的接口,并定义Element Name、ElementID、Protocol、Trigger(Cycle/trigger)、Period、Threshold Value、Parameter Name、Data Type以及Comment;

  • Field标签页:可以添加多个Field类型的接口,并定义Element Name、Protocol、Getter/Setter/Notifier、ElementID、Trigger、Period、Threshold Value、Parameter Name、DataType以及Comment;

  • EventGroup标签页:可定义EventGroup Name、EventGroup ID, 并选择当前Service下的Event和Notifier添加到对应的EventGroup.


3:Service定义界面


2.2 VLAN定义


VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN再逻辑上划分为多个广播域的通信技术,每个VLAN是一个广播域,VLAN内的主机间可以直接通信,而VLAN间则不能直接互通,从而避免冲突严重、广播泛滥的问题,从而提升网络通信质量。如图4为VLAN MAC帧的帧结构,在目标物理地址和源物理地址后跟4个字节的VLAN Tag,其包含如下3个部分:

  • PRI(3bit):帧优先级,就是通常所说的802.1p;

  • CFI(1bit):规范标识符,0为规范格式,用于802.3或Ethernet II以太网帧

  • VLAN ID:就是VLAN的标识符ID;

图4:MAC完整帧结构

如图5位VDE的VLAN定义界面,且包含两个标签页:

  • General标签页:定义VLAN Name、VLAN ID(2字节,大小范围为0x0000-0x00FF)、VLAN Prority(优先级范围0-7);

  • SD Address标签页:用来添加服务发现地址,

图5:VLAN定义界面


2.3 以太网节点定义


在以太网网段下可以添加以太网节点,Node编辑界面有General、Network Addrss和Port Config三个标签页:

  • General标签页:定义Node Name,Mac Address;

  • Network Address标签页:定义ECU的IP地址以及子网掩码;

  • Port Config标签页:一个ECU可以有多个端口,ECU是通过Port和VLAN关联,通常一个端口可以与多个VLAN进行关联,定义Port以及对应的Network Address 和VLAN;

图6:Ethernet Node 定义界面


2.4 添加Service Instance


Service Instance 是对Service的实例化,包含Provide Service Instance和Consumed Service Instance,Provide Service Instance是指提供端服务实例的部署,Consumed Service Instance是指消费端服务实例的部署。每个ECU Node可以提供多个服务实例和消费多个服务实例,每个ECU不能消费自己提供的服务实例,只能消费处于同一个VLAN下的其他ECU提供的服务实例。

图7:Service Instance 编辑界面


编辑Service Instance界面包含如下内容:

  • Provide Service Name:不可编辑,与添加的service名称一致;

  • Service ID:不可编辑;

  • Protocol:为Service中指令所拥有的所有协议类型,TCP、UDP和TCP/UDP,不可编辑;

  • Instance ID:长度一个字节,大小范围0x00-0Xff,通过Instance ID区分不同ECU提供的Service;

  • Port Number:端口号,大小范围是0-65535;

  • VLANID:选择该Service Instance要添加到那些VLAN下,可供选择的VLAN为当前ECU已经添加的VLAN,可以同时选择多个VLAN。

在ECU下面添加Consumed Service Instance时,可供选择的Service Instance为与当前ECU处于统一VLAN下的其他ECU提供的Provide Service Instance,并且Provided Service Instance所选择的VLAN也包含当前ECU所在的VLAN。


2.5 ARXML文件导出


在完成上述设计工作后,可以整个Etherne网段或ECUNode为单位导出ARXML文件(AP XML、CP XML),并导入下游Matlab Simulink创建SWC接口。


图8:VDE导出ARXML文件导入Simulink



三、总结


上述介绍的Enterprise Architect+INTERWORK VDE+Matlab Simulink工具链覆盖了SOA架构设计主要工作,从而使各阶段的开发输入输出能够有效衔接,避免了传统文档传递的过程,实现数据复用、数据一致性,另外本文介绍的INTERWORK VDE工具不仅支持XMI文件导入以及ARXML文件导出,同时支持传统CAN、CANFD、LIN以及J1939的设计工作,并可方便的实现EXCEL通信矩阵、DBC、LDF、ARXML等各种格式文件的导入以及导出,满足上下游不同业务的需求。



—END—

添加下方信加入汽专业交流群

(仅限专业人士)

汽车电子与软件 主要介绍汽车电子软件设计相关内容,每天分享一篇技术文章!
评论 (0)
  • 后摄像头是长这个样子,如下图。5孔(D-,D+,5V,12V,GND),说的是连接线的个数,如下图。4LED,+12V驱动4颗LED灯珠,给摄像头补光用的,如下图。打开后盖,发现里面有透明白胶(防水)和白色硬胶(固定),用合适的工具,清理其中的胶状物。BOT层,AN3860,Panasonic Semiconductor (松下电器)制造的,Cylinder Motor Driver IC for Video Camera,如下图。TOP层,感光芯片和广角聚焦镜头组合,如下图。感光芯片,看着是玻
    liweicheng 2025-05-07 23:55 110浏览
  • 2024年初,OpenAI公布的Sora AI视频生成模型,震撼了国产大模型行业。随后国产厂商集体发力视频大模型,快手发布视频生成大模型可灵,字节跳动发布豆包视频生成模型,正式打响了国内AI视频生成领域第一枪。众多企业匆忙入局,只为在这片新兴市场中抢占先机,却往往忽视了技术成熟度与应用规范的打磨。以社交平台上泛滥的 AI 伪造视频为例,全红婵家人被恶意仿冒博流量卖货,明星们也纷纷中招,刘晓庆、张馨予等均曾反馈有人在视频号上通过AI生成视频假冒她。这些伪造视频不仅严重侵犯他人权
    用户1742991715177 2025-05-05 23:08 89浏览
  • ‌一、高斯计的正确选择‌1、‌明确测量需求‌‌磁场类型‌:区分直流或交流磁场,选择对应仪器(如交流高斯计需支持交变磁场测量)。‌量程范围‌:根据被测磁场强度选择覆盖范围,例如地球磁场(0.3–0.5 G)或工业磁体(数百至数千高斯)。‌精度与分辨率‌:高精度场景(如科研)需选择误差低于1%的仪器,分辨率需匹配微小磁场变化检测需求。2、‌仪器类型选择‌‌手持式‌:便携性强,适合现场快速检测;‌台式‌:精度更高,适用于实验室或工业环境。‌探头类型‌:‌横向/轴向探头‌:根据磁场方向选择,轴向探头适合
    锦正茂科技 2025-05-06 11:36 398浏览
  • 多功能电锅长什么样子,主视图如下图所示。侧视图如下图所示。型号JZ-18A,额定功率600W,额定电压220V,产自潮州市潮安区彩塘镇精致电子配件厂,铭牌如下图所示。有两颗螺丝固定底盖,找到合适的工具,拆开底盖如下图所示。可见和大部分市场的加热锅一样的工作原理,手绘原理图,根据原理图进一步理解和分析。F1为保险,250V/10A,185℃,CPGXLD 250V10A TF185℃ RY 是一款温度保险丝,额定电压是250V,额定电流是10A,动作温度是185℃。CPGXLD是温度保险丝电器元件
    liweicheng 2025-05-05 18:36 278浏览
  • Matter协议是一个由Amazon Alexa、Apple HomeKit、Google Home和Samsung SmartThings等全球科技巨头与CSA联盟共同制定的开放性标准,它就像一份“共生契约”,能让原本相互独立的家居生态在应用层上握手共存,同时它并非另起炉灶,而是以IP(互联网协议)为基础框架,将不同通信协议下的家居设备统一到同一套“语义规则”之下。作为应用层上的互通标准,Matter协议正在重新定义智能家居行业的运行逻辑,它不仅能向下屏蔽家居设备制造商的生态和系统,让设备、平
    华普微HOPERF 2025-05-08 11:40 102浏览
  • 随着智能驾驶时代到来,汽车正转变为移动计算平台。车载AI技术对存储器提出新挑战:既要高性能,又需低功耗和车规级可靠性。贞光科技代理的紫光国芯车规级LPDDR4存储器,以其卓越性能成为国产芯片产业链中的关键一环,为智能汽车提供坚实的"记忆力"支持。作为官方授权代理商,贞光科技通过专业技术团队和完善供应链,让这款国产存储器更好地服务国内汽车厂商。本文将探讨车载AI算力需求现状及贞光科技如何通过紫光国芯LPDDR4产品满足市场需求。 车载AI算力需求激增的背景与挑战智能驾驶推动算力需求爆发式
    贞光科技 2025-05-07 16:54 150浏览
  • 这款无线入耳式蓝牙耳机是长这个样子的,如下图。侧面特写,如下图。充电接口来个特写,用的是卡座卡在PCB板子上的,上下夹紧PCB的正负极,如下图。撬开耳机喇叭盖子,如下图。精致的喇叭(HY),如下图。喇叭是由电学产生声学的,具体结构如下图。电池包(AFS 451012  21 12),用黄色耐高温胶带进行包裹(安规需求),加强隔离绝缘的,如下图。451012是电池包的型号,聚合物锂电池+3.7V 35mAh,详细如下图。电路板是怎么拿出来的呢,剪断喇叭和电池包的连接线,底部抽出PCB板子
    liweicheng 2025-05-06 22:58 362浏览
  • 文/郭楚妤编辑/cc孙聪颖‍相较于一众措辞谨慎、毫无掌舵者个人风格的上市公司财报,利亚德的财报显得尤为另类。利亚德光电集团成立于1995年,是一家以LED显示、液晶显示产品设计、生产、销售及服务为主业的高新技术企业。自2016年年报起,无论业绩优劣,董事长李军每年都会在财报末尾附上一首七言打油诗,抒发其对公司当年业绩的感悟。从“三年翻番顺大势”“智能显示我第一”“披荆斩棘幸从容”等词句中,不难窥见李军的雄心壮志。2012年,利亚德(300296.SZ)在深交所创业板上市。成立以来,该公司在细分领
    华尔街科技眼 2025-05-07 19:25 177浏览
  • 二位半 5线数码管的驱动方法这个2位半的7段数码管只用5个管脚驱动。如果用常规的7段+共阳/阴则需要用10个管脚。如果把每个段看成独立的灯。5个管脚来点亮,任选其中一个作为COM端时,另外4条线可以单独各控制一个灯。所以实际上最多能驱动5*4 = 20个段。但是这里会有一个小问题。如果想点亮B1,可以让第3条线(P3)置高,P4 置低,其它阳极连P3的灯对应阴极P2 P1都应置高,此时会发现C1也会点亮。实际操作时,可以把COM端线P3设置为PP输出,其它线为OD输出。就可以单独控制了。实际的驱
    southcreek 2025-05-07 15:06 240浏览
  • UNISOC Miracle Gaming奇迹手游引擎亮点:• 高帧稳帧:支持《王者荣耀》等主流手游90帧高画质模式,连续丢帧率最高降低85%;• 丝滑操控:游戏冷启动速度提升50%,《和平精英》开镜开枪操作延迟降低80%;• 极速网络:专属游戏网络引擎,使《王者荣耀》平均延迟降低80%;• 智感语音:与腾讯GVoice联合,弱网环境仍能保持清晰通话;• 超高画质:游戏画质增强、超级HDR画质、游戏超分技术,优化游戏视效。全球手游市场规模日益壮大,游戏玩家对极致体验的追求愈发苛刻。紫光展锐全新U
    紫光展锐 2025-05-07 17:07 199浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦