基于华为手册总结摘要的,有分布手册没写的,我给补充上了,比如:定义启动设定
CM配置流程:配置流程涵盖定义数据类型、服务接口、子网信息、部署通信、部署通信协议、定义可执行程序和进程、定义应用进程信息、创建服务实例
1 数据类型 StdCppImplementationDataType
在模块化编辑里找到了CORE TYPE,后续的服务等元素只能从既定的数据类型里设置,没定义过的数据类型不等取用
配置CM 通信框架时,需要先定义应用通信时传输的数据类型,其通过
StdCppImplementationDataType 元素定义。
2 服务接口 ServiceInterface
定义通信所需服务接口,包括配置传输的数据类型和数据传输方式,其通过ServiceInterface 元素配置。
定义通信所需服务接口,包括配置传输的数据类型和数据传输方式,其通过PortInterface > ServiceInterface元素配置。
在属性配置窗口的Events 栏中单击 ,即可新增VariableDataPrototype 元素,并参考如下属性说明对新增元素进行配置。
3 定义子网信息 EthernetCluster
子网信息主要包括主机(物理机虚拟机) IP 地址,其通过 EthernetCluster 元素进行配
CM Designer (manifest)”页面左侧元素菜单栏中选择“EthernetTopology > EthernetCluster”。
配置单播或多播地址,通过Ipv4Configuration元素配置,元素必配属性包括Short Name(简称)、Ipv4 Address(IP地址)和Network Mask(子网掩码)。
4.1 关联子网信息 MachineDesign Machine
选择不同的通信方式(DDS 和 SOME/IP ),需要分别定义通信协议,并与目标 Machine绑定。
1.先进行Machine 的设计,定一个 MachineDesign 元素,配置使用 DDS 通信方式,再绑定目标 Machine 。
在“CM Designer (manifest)”页面左侧元素菜单栏中选择“SystemDesign > MachineDesign
通过添加CommunicationConnector和SomeipServiceDiscovery来定义通信方式,并且关联所需子网信息
4.2 绑定目标 Machine
首先新建Machine元素,用于定义应用的目标运行环境(物理机/虚拟机),
在左侧元素菜单栏中选择“MachineManifest > Machine”。
绑定:Machine Design中选择已定义的 MachineDesign 。
4.3.1 状态管理
并在CM模块创建了Machine和Process元素,在创建的功能组(Function Group)中添加状态
选择SM->ModeDeclaration > ModeDeclarationGroup
在定义完状态之后,要选择初始化状态
4.3.2 状态添加,状态转换关系添加
击“Mode Declarations”下的按钮,以创建一个功能组状态,
单击元素配置界面“Mode Transitions”下的按钮,以创建一个功能组状态的转换关系,先进后出
至少包含“Standby”、“Verify”、“Update”和“Reset”4个功能组状态(“ModeDeclaration”)。Off、PreStartup
至少包含“OfftoStartup”、“StandbytoStartup”、“StandbytoShutdown”、“StartuptoStandby”、“StartuptoShutdown”、“StartuptoRestart”、“StartuptoVerify”、“StartuptoUpdate”、“StartuptoReset”、“VerifytoStartup”、“VerifytoRestart”、“UpdatetoStartup”和“UpdatetoReset”13个状态转换关系
5.1 部署通信协议 DdsServiceInterfaceDeployment
在CM通信模块配置界面的元素管理窗口中选择“ServiceInterfaceDeployment > DdsServiceInterfaceDeployment”
新增DdsEventDeployment元素,用于定义服务接口所需通信协议。
5.2 SomeipServiceInterfaceDeployment
6.1 定义可执行程序及进程
本节介绍如何定义用于启动AP 应用的可执行程序( Executable ),需要先创建 AP 应用组件,其通过 AdaptiveApplicationSwComponentType 元素配置,而应用组件上的发送接收端口通过 PPortPrototype/RP ortPrototype 元素配置,最后通过可执行程序和 AP应用组件关联建立关系。
在“CM Designer (manifest)”页面左侧元素菜单栏中选择“Application > AdaptiveApplicationSwComponentType”。
定义数据接收端RPortPrototype,新建发送端配置PPortPrototype
6.2 定义Executable元素
用于定义可执行程序。
在左侧元素菜单栏中选择“Application > Executable”。
6.3 ProcessDesign元素
用于关联目标进程
在左侧元素菜单栏中选择“Application > ProcessDesign”
配置ProcessDesign元素属性,关联已定义可执行程序。
7 定义应用进程信息
定义进程设计(ProcessDesign)后,需创建进程Process,并引用对应的进程设计,然后映射到目标Machine上。通过CM模块的“ProcessManifest ”下的元素,可定义可执行程序及进程。
7.1 创建进程Process
花圈的都要定义,要不然报错
7.2 与状态相关的启动配置
因为有两个进程所以要定义两个启动配置
在进程设定理关联启动配置,并且启动配置理必须有子元素shutdown和Restart
7.3 将可执行程序映射到Machine
8.1 创建DDS通信服务实例
包括收发,以创建数据发送的通信服务实例为例。
在选定已定义的DDS通信部署后“Event Qos Props”会自动生成一个元素
8.2 创建服务实例与网络通信端口之间的映射。
在元素管理窗口的“ServiceInstanceMapping > ServiceInstanceToPortPrototypeMapping”下,创建发送端的相关映射元素,
同理配置接收端的相关映射元素