APAUTOSAR设计思想及原理

面包芯语   2023-08-02 10:35:08

ECU的 Resource 描述,如 CPU 可用的 Processor 类型及数量

Machine 定义了所有可用的物理通信 Connector,比如 EthernetConnector ,及其对应通信端口 NetworkEndpoint 的描述(IPAddress or Domain & Port)

ServiceDiscovery Configs 描述通过可用物理通信端口监听来自 Multicast 地址信息定义的 SOME/IPProtocol报文


(资料图片仅供参考)

定义 Machine 的状态机,应用能不能工作都是跟着 Machine 状态机走的。

配置 AP AUTOSAR 的 OS(当前很多供应商都还没实现)

Application Manifest 用于描述实例化运行在 Machine 之上的可执行的Process:

我们一般从以下几个方面对应用清单进行描述。

配置 Executable 启动选项,包括以下内容

配置 Executable 的 Provided/RequiredPort 及 Port 所绑定的 Service Interface

每个 Process 都对应有一个专属的 Manifest 配置

Service Interface(服务接口)是什么?服务接口定义了 Skeleton/Proxy 之间的接口关系,主要包括以下交互方式:

Service Interface Deployment 描述了如何部署 Service Interface

为 Service Interface 分配指定的 Service id

为 Service Interface 分配 major_version 及 minor_version,某一个服务可能会存在多个版本,每个版本里面的服务接口可能是不一样的。

定义和配置服务实例的元模型如下:

服务实例相关的设计主要包括以下内容。

创建Service Instance:

为 Provided Service 绑定对应的 ServiceInterface,配置发送 Offer Service报文的周期,分配 Instance Id

为 Required Service 绑定对应的 Service Interface,配置发送 Find Service报文的周期,分配 Instance Id

Instance ID:Proxy 引用的 Required Instance Id 一定要与对应的 Skeleton提供的 Provided Instance Id 保持一致

Mapping Service InstanceTo Machine:

配置 Provided/Required Service Instance 使用哪个 Machine 里的哪个物理通信 Connector,即选用哪个 Machine 用于执行该 Service Instance

配置 TCP/UDP Port

Mapping Service Instance To Provided/Required Port:

在我们建模完之后,会生成以下产物。

生成 Skeleton/Proxy 通信框架的基类源代码,供 Application 开发者继承基类使用以直接获取通信能力:

启动配置 JSON 文件描述,供 Execution Manager 启动加载应用时使用:

SOME/IP JSON 配置文件,供 SOME IP_Daemon 使用:

下图为 AP AUTOSAR 的核心组件,也叫功能集群,简称 FC。

下面对上述核心组件的功能进行一个简单的描述。

Execution Manager:负责对进程的生命周期进行管理

搜寻指定路径下所有可用的 Executables 并加入进程列表中,启动阶段按进程依赖顺序加载所有配置在默认功能组的进程

当发生功能组状态切换时,终止未定义在新功能组的进程,并按照进程加载依赖顺序重新加载新功能组的所有进程

当功能组内的状态发生迁移时,驱动所有被加载的进程往相应的状态迁移

IAM:为应用访问及控制Autosar资源提供身份鉴权

用户需实现 PolicyDecision Point (Grant或Deny的Policy)策略

IAM 把应用 Application 的身份鉴权的请求,对接到用户的 Policy 策略,并给出鉴权结果回给 Application

Platform Health Manager:管理被监控运行实体的健康状态

Log Manager:提供Log前台打印API及后台Log存储服务

可提供 CONSOLE/FILE/DLT/SYSLOG 等工作模式

可配置多级别Verbose/ Debug/ Info/ Warn/ Error/ Fatal的打印控制

支持以 SOME IP/IPC binding 模式为 Offer Service 及 Find Service 提供发送及接收 Service Discovery Message 的能力

管理着所有 Provided Services及Required Services,并为每个 Service Interface 定义的 Event/Method/Field建立映射列表

作为所有基于 SOME IP Protocol Message(Communication & Service Discovery)的 Broker,为 sender 和 receiver 提供 router 服务

支持多种诊断传输协议,如 DoIP 或者用户自定义的传输协议

提供多个诊断服务,并支持多个诊断会话并行处理

支持 UDS 定义的标准服务及用户自定义服务

提供基于文件存储的读写功能

提供基于 Key-ValueDatabase 的访问及保持功能

升级包自身需包含完整的如版本、依赖、认证及签名等信息

UCM 接收来自 AA 的升级请求,传输用于升级的目标软件包,对软件包进行验签及完整性校验,根据 Manifest 的描述将目标文件安装到指定路径下/删除指定路径下的目标文件

相关资讯
最新资讯