让SOME/IP运转起来——SOME/IP系统设计(下)之数据库开发

2023-11-23 19:45

本文主要是介绍让SOME/IP运转起来——SOME/IP系统设计(下)之数据库开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

上一篇我们介绍了SOME/IP矩阵的设计流程,这一篇重点介绍如何把SOME/IP矩阵顺利的交给下游软件团队进行开发。

车载以太网通信矩阵开发完成后,下一步应该做什么?

当我们完成SOME/IP矩阵开发,下一步需要把开发完成的矩阵换成固定格式的数据库文件,方便软件团队进行开发,目前普遍使用ARXML文件。

ARXML数据库文件开发完成后,软件工程师可以导入到专用的配置工具中生成配置代码,将配置代码和核心软件代码一起编译,生成最终的软件代码。

ARXML文件是什么?

ARXML是AUTOSAR标准中的一种XML文件格式,用于描述汽车电子软件系统的软件架构和配置信息,是一个通用的配置/数据库文件。ARXML文件包含了各种AUTOSAR软件组件的定义、接口定义、模块定义、配置数据和元数据等。

ARXML可以兼容所有软件平台吗?

诚然我们在实际车型中使用的控制器通常会基于AP(Adaptive Platform)或CP(Classic Platform)软件平台进行开发,但是只要满足不同平台的格式要求,ARXML都可以满足下游软件开发需求。

CP 和AP 有什么区别?

在这里插入图片描述

如何开发车载以太网ARXML数据库文件?

我们当前使用的是自研工具INTEWORK-VDE(Vehicle Database Editor)。

INTEWORK-VDE是一款通信设计及数据库编辑工具,具备以下功能:

  • 支持以车系、车型、网段为网络架构进行通信数据库的设计
  • 支持CAN(FD)、LIN、J1939、Ethernet的通信数据库的设计,可提供中心服务器进行数据的统一管理,并且支持审批发布、邮件发送等功能

如何操作?操作步骤是否简单易学呢?

ARXML数据库的导出仅需两步。

  1. 把已经设计好的SOME/IP矩阵导入INTEWORK-VDE工具中 导出ARXML数据库文件
  2. 为了满足不同软件平台的需求,目前INTEWORK-VDE可以参照实际开发需求分别导出AP 和CP的ARXML数据库。

INTEWORK-VDE不但可以生成整车数据库也可以生成单个ECU节点的数据库,后续也支持生成单服务的数据库。生成的数据库支持导入CANoe、VBA等下游工具进行仿真测试,支持导入DaVinci、EAS等配置工具生成协议栈代码。此外,INTEWORK-VDE也支持从ARMXL导出EXCEL矩阵,方便工程师拿到数据库文件后,快速进行解析。

图 VDE界面

SOMEIP数据库开发操作视频

结语

通信数据库的设计服务于后续软件开发工作,是软件开发的重要输入。

对于车载以太网的通信系统设计来说,不同的操作系统需要各种不同的ARXML数据库来适配。合适的工具可以缩减开发周期,提升工作效率。VDE可以有效的帮忙工程师快速生成相应的ARXML数据库,做好通信工程师和软件工程师交互的桥梁。

这篇关于让SOME/IP运转起来——SOME/IP系统设计(下)之数据库开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/420300

相关文章

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

数据库面试必备之MySQL中的乐观锁与悲观锁

《数据库面试必备之MySQL中的乐观锁与悲观锁》:本文主要介绍数据库面试必备之MySQL中乐观锁与悲观锁的相关资料,乐观锁适用于读多写少的场景,通过版本号检查避免冲突,而悲观锁适用于写多读少且对数... 目录一、引言二、乐观锁(一)原理(二)应用场景(三)示例代码三、悲观锁(一)原理(二)应用场景(三)示例

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Python中使用正则表达式精准匹配IP地址的案例

《Python中使用正则表达式精准匹配IP地址的案例》Python的正则表达式(re模块)是完成这个任务的利器,但你知道怎么写才能准确匹配各种合法的IP地址吗,今天我们就来详细探讨这个问题,感兴趣的朋... 目录为什么需要IP正则表达式?IP地址的基本结构基础正则表达式写法精确匹配0-255的数字验证IP地

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.