【问题标题】:Multiple runnables with equal functionality but different port names具有相同功能但端口名称不同的多个可运行文件
【发布时间】:2015-12-11 10:43:24
【问题描述】:

我有一个关于 autosar 的基本问题,除了不同的输出/输入名称外,多个 runnables 基本相同。

目前 Simulink 模型是为一个油箱模块设计的。 此单个模块具有名为 *_Md0 的输入和输出。例如 Filling_level_Md0、outflow/inflow_rate_Md0、valve_open_Md0 ... 尽管有些输入/输出/常量也不是特定于模块的。例如:油箱容积、实时时钟、...

目标是添加“任意”数量的坦克。

          -------                   -------               -------
Inputs ->|Module1|-> Outputs     ->|Module2|->   ...   ->|ModuleN|->
          -------                   -------               -------

显然,将每个坦克模块相乘并重命名每个模块单独需要的输入/输出是非常乏味的。因为需要复制每个可运行文件,修复库和 arxml 文件,...

所以问题是是否有更好的解决方案来拥有多个或多或少相同的可运行文件? Simulink 中是否有某种可用的 for 循环?

【问题讨论】:

    标签: matlab for-loop simulink runnable autosar


    【解决方案1】:

    你有两个选择。

    1. 一个单实例软件组件,其端口包含数组作为端口元素,然后是下面的相应数据。坦克的数量将是例如一个系统常数,用作所有数组的长度。这样做的好处是您可能会获得更高效的代码,例如由于编译器中的向量化。此外,拥有这些阵列可能会使通信、诊断和测量接口变得更容易或更高效。
    2. 一个多实例软件组件,具有“普通”端口和您现在拥有的模型。正如您所写的,每个罐都有不同的参数,您将需要每个实例的校准参数。然后,您的软件组合将像您拥有坦克一样频繁地实例化多实例坦克组件。这里的好处是它更容易测试,并且您的实现完全独立于坦克的数量。此外,您还可以更好地分配 CPU 负载以降低 CPU 峰值负载。

    【讨论】:

      猜你喜欢
      • 2019-03-20
      • 2022-01-11
      • 1970-01-01
      • 2021-09-15
      • 2016-05-03
      • 1970-01-01
      • 1970-01-01
      • 2022-10-25
      • 1970-01-01
      相关资源
      最近更新 更多