0

考虑到我是一名可以用 C 语言编写一些软件的软件开发人员,您能否就与 Autosar 相关的这一点提出建议?

现在我用 C 语言开发一个功能,它必须读取一些 ECU 特定数据,处理它并更新一些 ECU 特定数据(可以是一些变量或 i/o 信号)。

  1. 现在我将如何使用 Autosar RTE 和虚拟功能总线?对软件开发人员有什么用?

  2. 另外,正如 Autosar 所说的“接口标准化”是什么意思?这是否意味着如果世界各地的其他人也在开发相同的功能(用 C 语言,比如我),我们都将使用相同名称的 API 来处理这些 I/O 信号?

  3. RTE 在单元测试中对我有什么帮助?或者从软件开发人员的角度来看,RTE 真正在做什么?

http://www.autosar.org/gfx/AUTOSAR_TechnicalOverview_b.jpg

我阅读了很多技术术语......但作为一名软件开发人员,这些要点对我来说很重要。你能给我解释一下吗。

您的回复将不胜感激。

4

5 回答 5

8

我认为这不会那么容易……我相信您正在开发 Autosar SWC(软件组件)。我建议您开发一个可移植的 C 模块。这有非常明确的输入、输出和请求。执行时(检查 Autosar runnables)。请记住 Autosar ECU 包括 RTOS,因此您的模块将成为 OS 任务的一部分。如果您要构建 Autosar ECU,您将能够封装模块并使用 Autosar 虚拟功能总线信号连接输入/输出。为此,您将需要 Autosar 框架和可能的配置工具。这些是复杂且昂贵的。以测试 C 模块的常用方式对模块进行单元测试。祝你好运。

PS RTE 只是配置工具根据 ECU BSW 的配置和该 ECU 的系统提取自动生成的“胶水”代码。你会在包装过程中担心它。

于 2012-12-11T09:50:53.777 回答
2

将 AUTOSAR SWC 和 Basic 软件中的功能分开的想法是使应用程序软件开发独立于任何平台。回答你的问题。

  1. RTE 为应用程序提供了一个基于信号的接口,因此您希望其他软件组件(ECU 间/ECU 内部)以信号的形式提供所需的数据,您不必关心平台或通信介质的类型
  2. 是的,通过标准化接口(所有类型的交互),软件组件或任何基本软件模块都可以固定到软件架构中。阅读有关不同类型的 AUTOSAR 接口的更多信息。
  3. 参考答案1
于 2014-05-23T09:39:32.563 回答
1
  1. RTE 作为“抽象”系统内部组件的层存在。例如,如果您需要访问系统安装的闪存,您必须使用与 RTE 相关的内存功能。

  2. 你是对的。您只需要阅读规范并使用相应的功能即可在 AUTOSAR 系统中获得您想要的结果。

  3. RTE 确保软件组件和中间层系统的开发人员能够以最少的交互正常工作。SWC 开发人员只需要阅读 AUTOSAR 标准并遵循它以确保与中间层系统的兼容性,因为预计中间层系统开发人员将遵循相同的标准来提供自己的功能。它还可以帮助开发人员提高其软件的可移植性。

我认为您的所有问题都可以通过阅读AUTOSAR 网站上的 AUTOSAR 标准文档来回答。我在 AUTOSAR 系统开发方面的大部分知识有限(已经开始阅读它近一个月了),我到了那里。

于 2014-02-15T14:18:20.160 回答
0

回答您的问题如果您将通过 AUTOSAR 的分层架构,您会知道遵循该架构以最小化每个模块(层)与较低层的依赖关系。

  1. 同样,RTE 是一个类似的包装器,用于分离较低层的依赖关系,这使得可以独立地在每一层上工作。大多数虚拟总线都与 RTE 映射,根据我的经验,我曾在 IOC 上工作过,它允许与 RTE 映射,并通过内存和核心边界与其他 SWC 进行通信。对于 OS 开发人员,它通过应用程序层和映射的软件分区。

  2. 该标准用于保持所有软件层的统一,但是为了满足需求,开发人员可能有不同的实现和设计方式,但 API 和需求将是通用的。
    这对于标准化接口也很有用。

  3. 对于开发人员操作系统设计和实现的单元测试,RTE 作为抽象模块工作。

阅读不同模块的规范将解决大部分疑问。

于 2015-09-24T03:41:55.733 回答
0

我是一名软件开发人员,他为 Autosar RTE 开发了一个控制台应用程序工具,为 RTE 开发了测试用例生成,并为我创建的工具编写了单元测试脚本。我使用 C# 和 NUnit 框架开发了这些。同样可以使用 C 或 java 或任何其他语言开发。最终目标是根据需求生成 AUTOSAR 模块(.c 和 .h 文件)。

一、软件开发者范围

作为一名软件开发人员,我的任务是为已实施的 RTE 代码实施完整的 RTE 和测试应用程序。

输入和输出:基本上我们的输入是软件组件文件和 ECU 提取,它们是 ARXML 格式,输出是 Rte 以及根据要求创建的测试应用程序源和头文件(.c 和 .h)。

作为开发人员的任务:在这里,作为开发人员,我们需要执行从 AXXML 到我们自己的数据结构的输入解析、模式验证、模式验证、文件生成等。

2.标准化

是的,AUTOSAR 架构提供标准化接口。无论实施策略如何,API 结构都保持不变,从而简化了使用。这充当了一个通用库,您可以在其中使用已经开发的模块,或者您可以通过考虑 API 规范以自己的方式实现模块。您只需遵循为您使用的每个模块提供的规范。要求因公司而异,但使用 API 的方式保持不变。

3. 单元测试

单元测试与 RTE 或 AUTOSAR 模块无关。您将测试代码的单位。当我说您的代码时,它是您用来开发任何特定模块(例如 Rte.c)而不是测试生成的模块本身的代码。您将测试您为生成特定模块而开发的源代码。您的源代码不是 RTE 或任何其他模块实现的一部分,而是生成模块实现的工具。

概述:

软件开发人员在生成 AUTOSAR 模块方面有不同的范围,具体取决于需求。您可以开发一个工具来生成 AUTOSAR 模块。您可以开发一个编辑器,用于编辑/创建 AUTOSAR XML 文件。(例如:Artop)开发可能听起来很复杂,因为除了规范之外我们没有直接的资源。一旦你进去,你会学到很多东西。

于 2020-07-18T08:57:10.497 回答