AUTOSAR笔记:AUTOSAR系统级设计(四)

发布时间 2023-06-07 21:21:14作者: 明明1109

可以先在系统级设计工具ISOLAR-A中设计SWC框架,包括端口接口、端口等,创建各SWC arxml描述文件;再将这些描述文件导入行为建模工具(Simulink)内部行为建模。
也可以先在行为建模工具中完成逻辑建模,再把生成的描述文件导入系统级设计工具中完成系统级设计与配置。

前面已经完成了部分应用层SWC建模,并生成了符合AUTOSAR规范的代码与arxml描述文件。这里可以直接导入ISOLAR-A系统级设计工具,进行后续配置。

ETAS ISOLAR-A工具简介

ISOLAR-A工具,是ETAS公司为符合AUTOSAR规范的汽车嵌入式系统软件开发而推出的工具,这是一款高效的AUTOSAR软件架构设计工具,如下图。

ISOLAR-A基于Eclipse平台开发,具有开发、可扩展的特点,为集成用户的特定功能提供了可能性。目前,ISOLAR-A支持AUTOSAR R4.0、R4.1、R4.2、R4.3。

ISOLAR-A工具主要具有以下功能:
①可以进行整车级别SWC架构设计;
②设计符合AUTOSAR规范的SWC,包括端口、端口接口、运行实体等设计,可导入/导出arxml文件,支持其他基于模型的设计(MBD)开发工具协同开发,如ETAS ASCET、Matlab/Simulink,它们可以通过arxml文件进行SWC信息交互;
③导入传统格式文件,如DBC(包括SAE J1939和ISOBUS 11783)、FIBEX、LDF(包括SAE J2602)和ODX等,自动完成这些大量工作,提升开发效率,减少开发错误;
④可以进行AUTOSAR系统级设计,可为单核或多核ECU完成系统以及ECU信息抽取工作;
⑤可以集成AUTOSAR系统和应用软件;
⑥采用标准的AUTOSAR XML文件格式(arxml),很容易连接到SVN等版本管理软件。

ISOLAR-A可以与ETAS和其他供应商的AUTOSAR工具进行集成,特别ETAS的RTA-RTE(AUTOSAR运行环境生成器)和RTA-OS(操作系统),还可以集成AUTOSAR-R4.x的基础软件,如ETAS RTA-BSW。


ETAS ISOLAR-A工具入门

ISOLAR-A安装方法

下载好安装包,按默认提示操作即可。具体略。

ISOLAR-A界面说明

ISOLAR-A可视为一个强大的XML文件编辑器,其工具界面主要分为 :菜单、AR Explorer View、Description View、Properties View、Graphical Editors View。

AR Explorer View:工程文件浏览器,一般推荐选择Show Abstraction Groups Only。
Filesystem Navigator是arxml浏览器,切换到该界面将显示出工程文件夹所包含的arxml描述文件。
Description View:提供所选元素的文件名和所属的AUTOSAR Package信息,显示AUTOSAR元素类型的描述。
Properties View:可为选定的AUTOSAR容器提供相关配置。
Graphical Editors View:以图形和表格形式更直观地展示AUTOSAR描述文件内容,可基于此配置相关AUTOSAR元素。


基于ISOLAR-A的SWC设计方法

ISOLAR-A可进行SWC设计,主要包括:数据类型定义、端口接口设计、端口设计、SWC涉及、运行实体设计、运行实体间变量设计等。下面介绍如何用ISOLAR-A进行AUTOSAR SWC设计。
注:Simulink也支持SWC设计。

AUTOSAR工程创建

打开ISOLAR-A工具,设置workspace后,会进入ISOLAR-A主界面。

File->New->AUTOSAR Project新建工程,输入工程名,选择AUTOSAR规范版本,勾选是否导入基础数据类型等。


Finish后,AR Explorer界面会出现新建工程。与SWC描述相关的元素都在Software文件夹中;与系统描述(System Description)相关的元素都在System文件夹中;与ECU描述(ECU Description)相关的元素都在Bsw文件夹中。

数据类型定义

AUTOSAR定义了3种数据类型:应用数据类型(Application Data Type,ADT)、实现数据类型(Implementation Data Type,IDT)、基本数据类型(Base Type)。
在ISOLAR-A工具中,如何定义、引用?
数据类型属于SWC相关元素,可点开Software文件夹:

1)数据类型创建
如果需要新建自定义应用数据类型ButtonState,代表开关状态,0表示OFF;1表示ON,该怎么办?
有件Data Types>Create Data Types>Create Primitive Data Types> Elements|A

将弹出AUTOSAR元素界面,输入元素名;勾选是否新建package(arxml描述文件中的一个概念)。若新建,则需要输入package的名称,并选择需要放在哪个arxml文件中;否则,可以双击工程文件,选择已有文件,也可以新建一个arxml文件专门存放Application Data Type。

下图选择新建一个package,并且存放Application Data Type.arxml文件:

新建结果:

2)计算方法型创建
和数据类型密切相关的是计算方法(Compute Method),双击新建的计算方法ButtonState,将会弹出计算方法类型选择窗口,较常用的计算方法如下:

①相同(IDENTICAL):内部值与物理值相同,不需要转换;
②线性关系(LINEAR):物理值是将内部值通过线性转换得到的,一般是:内部值 x 比例因子(Factor) + 偏移量(OFFSET);
③有理函数(RAT_FUNC):与线性转换类似,但转换仅限于有理函数;
④文本(TExTTABLE):将内部值转换为文本元素;
⑤比例线性和文本(SCALE_LINEAR_AND_TEXTTABLE):线性和文本相结合;

这里选择文本(TEXTTABLE)类型。

点击Add CompuScale可添加TESTTABLE中等语句,来实现前面ButtonState计算方法:

设计完计算方法ButtonState后,可以在先前建立的应用数据类型ButtonState中进行引用:

对于Application Data Type与Implementation Data Type的数据类型映射,则需要在后续SWC设计阶段完成,因为这种映射关系不是唯一的,和实际需求密切相关。

端口接口设计

重点讲:发送者-接收者接口(Sender-Receiver Interface,S/R)与客户端-服务器接口(Client-Server Interface,C/S)设计方法。

1)为端口接口创建一个arxml描述文件
定义AUTOSAR元素之前,先新建一个arxml文件专门存放端口接口定义描述。
右键LightECU>New>AUTOSAR File,新建名为Interface.arxml的描述文件,同时创建名为Interface的AR Package。

最终创建结果:

2)发送者-接收者类型接口设计
右键Software>Create Interfaces>Create Port Interfaces>Elements|Sender Recei。

双击创建的SR_IF_SendLightState接口,可进入Interface设计界面 > 点击Add VariableData Prototype添加接口的数据元素,输入名字,同时引用相应数据类型。

SR_IF_SendLightState接口设计结果:

此时,Interface.arxml文件可以看到上述Sender-Receiver接口SR_IF_SendLightState定义信息,如下所示:

<SENDER-RECEIVER-INTERFACE>
 <SHORT-NAME>SR_IF_SendLightState</SHORT-NAME>
 <IS-SERVICE>false</IS-SERVICE>
 <DATA-ELEMENTS>
  <VARIABLE-DATA-PROTOTYPE>
   <SHORT-NAME>DESendLightType</SHORT-NAME>
   <TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE"
>/ApplicationDataTypes/LightType</TYPE-TREF>
  </VARIABLE-DATA-PROTOTYPE>
  <VARIABLE-DATA-PROTOTYPE>
   <SHORT-NAME>DESendLightState</SHORT-NAME>
   <TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE"
>/ApplicationDataTypes/LightState</TYPE-TREF>
  </VARIABLE-DATA-PROTOTYPE>
 </DATA-ELEMENTS>
</SENDER-RECEIVER-INTERFACE>

3)客户端-服务器类型接口设计
设计完发送者-接收者类型接口后,可切换至Client Server Interface设计界面,
点击Add CS Interface创建名为"CS_IF_GetLightState"的C/S接口;
点击Add CS Operation添加名为“OPGetLightState”的操作;
点击Add ArgumentData Protype添加参数DEGetLightState,由于从底层读上来的数据,所以参数方向OUT,并为其引用一个数据类型。
设计结果如下:

此时,在Interface.arxml文件可看到Client-Server接口CS_IF_GetLightState定义信息:

  <CLIENT-SERVER-INTERFACE>
 <SHORT-NAME>CS_IF_GetLightState</SHORT-NAME>
 <IS-SERVICE>false</IS-SERVICE>
 <OPERATIONS>
  <CLIENT-SERVER-OPERATION>
   <SHORT-NAME>OPGetLightState</SHORT-NAME>
   <ARGUMENTS>
     <ARGUMENT-DATA-PROTOTYPE>
      <SHORT-NAME>DEGetLightState</SHORT-NAME>
      <TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATATYPE">/
ApplicationDataTypes/LightState</TYPE-TREF>
      <DIRECTION>OUT</DIRECTION>
     </ARGUMENT-DATA-PROTOTYPE>
   </ARGUMENTS>
  </CLIENT-SERVER-OPERATION>
 </OPERATIONS>
</CLIENT-SERVER-INTERFACE>

SWC设计

以建LightControlSWC为例,介绍ISOLAR-A中SWC设计方法。

1)SWC新建
类似于端口接口设计,需要先为SWC创建一个描述文件和AR Package:右键LightECU>New>AUTOSAR File。
新建LightControlSWC AUTOSAR file(.arxml):

之后,可以添加一个应用SWC:右键Software>Create Components>Elements|Application Sw Component Type,输入名称,选择上面的.arxml文件及LightControlSWC AR Package。

至此,一个SWC新建完毕。可右键LightControlSWC>Open With>Graphical Component Editor查看:

2)SWC端口添加
双击LightControlSWC,打开Component Editor>点击Add PPorts、RPorts、PRPorts,弹出下图窗口,选择相应端口接口,并赋予名称:

结果:

此时,在LightControlSWC.arxml文件中,会有上述端口的定义信息。

3)SWC内部行为设计
主要工作:
①创建SWC内部行为(Internal Behaviour);
②添加运行实体(Runnable);
③添加运行实体与所属软件组件的端口访问(Port Access);
④添加运行实体RTE事件(RTE Event);
⑤添加运行实体间变量(Inter Runnable Variable,IRV);
⑥建立并添加数据类型映射(Date Type Mapping);

下面详细介绍步骤
①内部行为:右键LightControlSWC>New Child>Internal Behaviours|Intrenal Behaviour,命名为IBLightControlSWC。

②运行实体:双击LightControlSWC,打开Component Editor>切换至Functions界面>点击Add Runnable添加运行实体。为保持Simulink设计方案一致,这里也设计三个运行实体:RE_JudgeLightState、RE_LightControl、LightControl_Init,输入运行实体+函数名。

③运行实体与所属SWC端口访问:选中需要建立联系的SWC,以RE_LightControl为例,在右边界面添加Data Access Points和Server Call Points。
切换到Data Access Points时,点击Add Access Points会弹出下面界面。可选择数据传输方式:显示(Explicit)、隐式(Implicit)。

Data Access Points添加结果:

当切换到Server Call Points时,点击Add Server Call Points,弹出下图界面。客户端/服务器交互模式有:同步(Synchronous)、异步(Asynchronous)。这里采用同步模式。

添加结果:

④运行实体的RTE Event:双击LightControlSWC,打开Component Editor,切换至Events界面>点击Add Events,显示下图列表。
RTE事件众多,常用的有Timing Event(周期性事件)、Operation Invoked Event(操作调用事件)、Data Received Event(数据接收事件)、Init Event(初始化事件)等。

RTE Event列表:

LightControlSWC包含3个运行实体:RE_JudgeLightState、RE_LightControl、LightControl_Init,其RTE事件类型也不相同。

对于运行实体RE_JudgeLightState,周期性触发,20ms。选择列表中Timing Event,将弹出下图窗口,勾选待触发运行实体、填入触发周期:

对于运行实体RE_LightControl,当端口RPortControlLightCmd收到数据时触发,选择上述列表中Data Received Event,将弹出下图,勾选触发源端口数据元素,选择被触发的运行实体:

初始化运行实体LightControl_Init,需要为其添加初始化事件,选择列表中Init Event,弹出下图,勾选被触发的运行实体:

⑤运行实体间变量:LightControlSWC包含2个运行实体:RE_LightControl和RE_JudgeLightState,它们之间有运行实体间变量IRVJudgeLightState。双击LightControlSWC,打开Component Editor>切换至IRV界面>点击Add Impl IRV或Add Expl IRV,添加运行实体间变量。在右边添加2个运行实体,表示读写关系:

⑥数据类型映射:Application Data Type与Implement Data Type的映射。右键Data Types>Create Data Types>Create Data Type Mapping Sets>Element,弹出创建AR Element一样界面,选择一个arxml文件、一个AR Package。

最终,Data Type Mapping设计结果:

建立Data Type Mapping后,可将其添加到刚才建立的SWC中:双击IBLightControlSWC,在References中等DataTypeMapping中添加刚才建立的数据类型映射DataTypeMappingSet:

至此,基于ISOLAR-A工具的SWC设计已全部完成,最终结果:

下面展示SWC描述文件但基本模板:

<APPLICATION-SW-COMPONENT-TYPE>
  <SHORT-NAME>...</SHORT-NAME>
  <PORTS>...</PORTS>
  <INTERNAL-BEHAVIORS>
  <INTERNAL-BEHAVIOR>
   <SHORT-NAME>...</SHORT-NAME>
   <DATA-TYPE-MAPPINGS>...</DATA-TYPE-MAPPINGS>
   <EVENTS>...</EVENTS>
   <INTER-RUNNABLE-VARIABLES>...</INTER-RUNNABLE-VARI
ABLES>
   <RUNNABLES>...</RUNNABLES>
  </INTERNAL-BEHAVIOR>
  </INTERNAL-BEHAVIORS>
</APPLICATION-SW-COMPONENT-TYPE>

I/O硬件抽象层SWC设计

AUTOSAR分层架构中,提出I/O硬件抽象层(I/O Hardware Abstraction)概念,但由于其高度依赖于ECU的功能和设计,因此AUTOSAR没有标准化这部分软件具体功能,AUTOSAR BSW软件供应商也无法提供该部分的软件。所以,该部分实现和一般SWC定义类似,需要设计端口、端口接口等SWC元素,运行实体中代码需要手动编写,从而实现对MCU MCAL接口调用。

本文在ISOLAR-A中建立IOAbstractionSWC来对I/O硬件抽象层进行具体实施。

I/O硬件抽象层实现是通过建立SWC实现,因此,本质上和先前建立的应用层SWC一样,AUTOSAR为区分它们之间在概念上的区别,赋予不同的类别,ISOLAR-A对各种类型SWC也展现不同图标:

右键Software>Create Components>Elements|Ecu Abstraction Sw Component T和先前一样,需要定义一个AR Element。

IOAbstractionSWC作文应用层SWC与MCU交互桥梁,需要定义若干服务运行实体(Server Runnable),这样的应用层SWC通过引用Client/Server端口接口的端口作为Client就可以调用Server端操作,实现对MCAL接口的调用。

作为SWC,在新建框架后,需要为IOAbstractionSWC定义端口。双击IOAbstraction进入Component Editor,点击Add PPorts,将显示下图界面,选择4个ClientServerInterface类型接口,即添加了4个作为Server端的端口:

添加完毕,可为4个端口命名。最终,IOAbstractionSWC端口添加结果:

接着,需要设计IOAbstractionSWC的内部行为。由于IOAbstractionSWC需要实习对开关状态的读取、设置灯状态、检测灯的状态、设置ECU调试指示灯的状态,所以设计4个运行实体完成操作:

添加运行实体后,还需要添加RTE事件,这里需要用到Operation Invoked Event实现函数调用触发关系,选择OperationInvokedEvent选项后,弹出下图界面,勾选操作并选择对应运行实体后,点OK:

RTE事件添加结果:

至此,I/O硬件抽象层SWC IOAbstractionSWC设计完成,设计结果:

SWC模板生成

设计完各SWC后,可生成SWC模板,之后可以往各运行实体函数框架填入相应算法:右键点击待生成模板的SWC,Generate>Component Code>Frame,如下图

将弹出下图界面,点击Next,修改路径和文件名:

下面截取IOAbstractionSWC中RE_SetLightState运行实体相关函数框架代码。按注释提示,在指定位置填入相应功能实现代码即可:

  /* ************************************************
*************
* BEGIN:Banner
*----------------------------------------------------
-------------------------
*                 ETAS GmbH
*           D-70469 Stuttgart,Borsigstr.14
*----------------------------------------------------
-------------------------
*  Administrative Information (automatically filled
in by ISOLAR)
*----------------------------------------------------
-------------------------
* Name:Code-Frame generation feature
* Description:
* Version:9.0
*----------------------------------------------------
-------------------------
* END:Banner
*****************************************************
*********
* Project:LightECU
* Component:/IoHwAbstraction/IOAbstractionSWC
* Runnable:All Runnables in SwComponent
*****************************************************
*********
* Tool Version:ISOLAR-A V 9.0
* Author:zhongwei
* Date:星期二 二月 20 11:27:50 2018
*****************************************************
*********
#include "Rte_IOAbstractionSWC.h"
/*PROTECTED REGION ID (FileHeaderUserDefinedIncludes:R
E_SetLightState) ENABLED START */
/* Start of user defined includes -Do not remove this
comment */
/* End of user defined includes-Do not remove this com
ment */
/*PROTECTED REGION END */
#define RE_SetLightState_START_SEC_CODE
#include "IOAbstractionSWC_MemMap.h"
FUNC (void, IOAbstractionSWC_CODE)RE_SetLightState//r
eturn value & FctID
(
   VAR(UInt8,AUTOMATIC) DESetLightState
)
{
  /* Local Data Declaration */
  /*PROTECTED REGION ID (UserVariables:RE_SetLightSta
te) ENABLED START */
  /* Start of user variable defintions-Do not remove
this comment */
  /* End of user variable defintions-Do not remove th
is comment */
    /*PROTECTED REGION END */
  Std_ReturnType retValue = RTE_E_OK;
  /* --------------------------------------Data Read
----------------------------------------- */
  /* --------------------------------------Server Ca
ll Point -------------------------------- */
  /* --------------------------------------CDATA----
----------------------------------------- */
  /* --------------------------------------Data Writ
e---------------------------------------- */
  /* --------------------------------------Trigger I
nterface--------------------------------- */
  /* --------------------------------------Mode Mana
gement----------------------------------- */
  /* --------------------------------------Port Hand
ling------------------------------------- */
  /* --------------------------------------Exclusive
Area------------------------------------ */
  /* --------------------------------------Multiple
Instantiation---------------------------- */
  /*PROTECTED REGION ID (User Logic:RE_SetLightState
) ENABLED START */
  /* Start of user code-Do not remove this comment */
  /* End of user code-Do not remove this comment */
  /*PROTECTED REGION END */
}

#define RE_SetLightState_STOP_SEC_CODE
#include "IOAbstractionSWC_MemMap.h"

基于ISOLAR-AD系统级设计与配置方法

AUTOSAR支持整车级的软件架构设计,开发人员可以进行整车级的SWC定义,再将这些SWC分配到各ECU种,这就是AUTOSAR系统级设计需要完成的主要任务。

系统配置输入文件创建与导入

系统级设计是基于系统配置输入描述文件来进行的,系统配置输入描述文件主要包括:
①SWC描述文件;
②ECU资源描述文件;
③系统约束描述文件;

SWC描述文件:主要包含每个SWC的设计信息,如端口接口、端口、运行实体、RTE事件等,可以通过Simulink基于SWC模型进行自动生成,也可以在IOSLAR-A工具中直接进行SWC元素的设计。方法前文都有。

ECU资源描述文件:描述ECU硬件资源需求,如处理器、存储器、传感器等,这些描述主要体现在硬件原理图等文件中。

系统约束描述文件:主要描述了总线信号等信息,其中与总线相关的信息在ISOLAR-A中可以基于传统网络描述文件进行导入。本文示例基于CAN,因此以DBC文件为例讲解。

ISOLAR-A中导入DBC文件,并可以将其中的信息转化为arxml格式。DBC文件:描述整车每个CAN网络各节点通信信息。同一ECU,一个CAN网络,则需要一个DBC文件进行描述。

  • DBC文件建立方法

使用Vector CANdb++工具。整个DBC文件基本需要配置如下:

①Networks(网络);
②ECUs(电控单元);
③Network nodes(网络节点);
④Messages(报文);
⑤Signals(信号);

每个DBC描述的是网络通信信息,所以先要定义一个Networks(网络),在新建database时自动创建出来的。之后,定义Network nodes(网络节点),右键Network nodes新建即可,同时在ECUs(电控单元)菜单中自动创建出相关ECU信息。
定义了网络节点后,需要根据项目需求完成Signal(信号)与Message(报文)的设计。首先,添加信号,右键Signals新建,弹出下图,主要定义如下信号属性:

①Length(长度);
②Byte Order(字节顺序):Intel(英特尔模式),Motorola(摩托罗拉模式);
③Value Type(数据类型):Signed、Unsigned、IEEE Float、IEEE Double;
④Scalling(缩放比例):Factor(比例系数)、Offset(偏移量);
⑤Minimum(最小值)、Maximum(最大值);
⑥Value Table(数值表);

定义了所有信号后,可进行报文设计。右键Message新建即可,定义如下属性:

①Type(报文类型):CAN Standard(标准帧)、CAN Extended(扩展帧)。
②Id:报文id号;
③DLC(Data Length Code):报文长度;

再切换到Layout界面,可以完成报文中信号位置的设置。

完成信号、报文设计后,需要将各报文添加到相应节点,设置为发送或接收。

最终,可以完成DBC文件建立,包含3个网络节点:DisplayECU、LightECU、SensorECU;还包含2帧报文:Light_Intensity,Light_State,如下图:

之后,将系统配置所需输入文件导入ISOLAR-A。其中,对于SWC描述文件,只要将其放在AUTOSAR工程文件夹下,打开ISOLAR-A工具将自动识别其中的信息。对于传统DBC文件,则需要在ISOLAR-A工具中进行导入,方法如下:
1)点击ISOLAR-A主菜单"D" DBC Importer:


弹出下图,点击Browse,选择之前创建的DBC文件。这样,会自动完成系统描述文件的选择、AR Package的选择。

由于DBC中包含3个ECU,这里分别为它们新建一个CAN Controller,点击Next可进入下图:

此时,选择DBC文件所定义的网络节点(ECU)。为之后体现系统级设计的特点,勾选3个ECU>点Next,出现下图:

在选择ECU基础上,需要选择与其相关的CAN报文,点击Select All>Finish>完成DBC文件导入。

DBD导入成功后,ISOLAR-A工具中就可以看到配置后的PDU与Signal信息,如下图:

ECU Instance与CAN Network信息:

System Editor:

Composition SWC(部件)建立

AUTOSAR SWC大体可分为:原子软件组件(Atomic SWC)、部件(Compisition SWC)。部件也属于SWC,但建立方法和思想不同于原子SWC。

右键Software>Create Compositions>Elements|Composition Sw Component Type

输入相关信息>Finsh

双击新建的VehicleComposition可进入Composition设计界面>点击“+”ADD,添加SWC。这里将所有SWC添加到VehicleComposition:

Composition中添加SWC结果:

添加完SWC后,需要连接各通信端口——添加Assembly Connectors。右键VehicleComposition>Open With>Auto Assembly Connect Wizard:

弹出界面中,勾选要连接到端口>Finsh:

至此,整车级别Composition SWC建立完成。下面展现VehicleComposition建立结果。
Composition Overview界面和AR Explorer Software>Compositions界面:

VehicleComposition建立结果:

系统配置

完成VehicleComposition建立后,可进行系统配置。
右键System>Create System Info>Elements|Systme,可新建System Info,命名为Vehicle:

System Info新建结果:

添加Composition:右键VehicleSystem>New Child>Root Software Compositions|Root Sw Compos,在SoftwareComposition中引用先前建立的VehicleComposition即可:

建立一个整车级系统后,需要完成SWC到ECU的映射(SWC To ECU Mapping):
右键VehicleSystem>Open With>SWC To ECU Mapping Editor,如下图:

打开SWC To ECU Mapping Editor界面,点击Create System Mapping可添加系统映射。此时,VehicleComposition中SWC依次映射到相应的ECU —— AUTOSAR方法论中提出的,从整车级SWC定义过渡到具体ECU开发的关键环节。

按前期系统定义,可将各SWC分别拖动到DisplayECU、LightECU与SensorECU完成映射:

完成SWC To ECU Mapping后,在系统配置阶段,还需要完成习题端口与端口数据元素的映射,即System Data Mapping:
右键VehicleSystem>Open With>System Data Mapping Editor,如下图:

打开System Data Mapping Editor,根据需求选择相应端口,完成系统信号与端口数据元素的映射即可:

ECU信息抽取

要开发的目标ECU是LightECU,因此在完成系统配置后,就需要进行待配置的ECU信息抽取(ECU Extract):
右键Ecus/LightECU>Create ECUExtract,如下图:

将弹出:

因为示例针对LightECU开发,所以将ECU Extract生成在同一工程文件夹下。最终ECU信息抽取结果:

该过程自动创建名为LightECU_FlagView的Composition,包含分配到LightECU的所有SWC:


小结

介绍了基于ETAS ISOLAR-A工具的AUTOSAR系统级设计、配置方法。
1)介绍ISOLAR-A工具的安装方法、操作界面;
2)结合AUTOSAR SWC相关概念,讲解基于ISOLAR-A SWC设计方法;
3)介绍了对基于ISOLAR-A的AUTOSAR系统设计、配置方法。