SuperAPI AI 工具集

simulink-author-classic-autosar-swc

编程与开发

查看项目

更新于 10-16 09:31

技能介绍

用途:在 Simulink 中创建、扩展、修复和校验一个 Classic AUTOSAR 应用软件组件(SWC),聚焦组件模型、AUTOSAR 映射及生成的组件产物。

主要能力:配置 runnable、生成符号、时序事件、初始化行为及 sender-receiver 数据访问;映射根端口、客户端-服务器操作、BSW 服务调用和 runnable 间变量(IRV);修复现有组件映射;从变更后的 ARXML 导入或更新组件模型;检查生成的组件 ARXML 或 C 代码中的接口、符号、事件和内存放置。

使用方式:改造模型前先检查模型版本、现有 AUTOSAR 属性、根端口映射、runnable 和事件;用 model_overview、model_read、model_query_params、model_edit 处理结构与普通图改动,用 evaluate_matlab_code 调用未暴露的 AUTOSAR API。执行 autosar.api.create(modelName, "init") 会清除现有接口、映射和元数据,调用前须说明并等待明确确认。新模型需先设置 SystemTargetFile 为 autosar.tlc,待结构就绪后再创建默认映射;现有映射应就地编辑,仅用 incremental 映射新增元素。runnable 与事件方面,周期性行为用原子子系统加时序事件,显式入口用函数调用子系统加导出函数执行域;重命名或改时序前先查询 Runnable 和 TimingEvent 对象。端口方面,数据用 sender-receiver 端口,根 Inport/Outport 通常用 ImplicitReceive 和 ImplicitSend;多元素端口用 In Bus Element/Out Bus Element,并按 PortName.ElementName 命名。操作与服务方面,对等 SWC 操作用保留点号风格的 Function Caller 原型,自定义 OEM 服务用下划线风格 Port_Operation(...),标准 Dem、FiM、NvM 用对应 AUTOSAR Blockset 库调用器;BSW 调用器改动后先运行 autosar.api.syncModel(modelName)。IRV 映射用 getDataTransfer 识别现有映射,避免重复添加。

适用场景:Classic AUTOSAR SWC 的创作、修改、映射维护与产物校验。

限制:不适用于 Adaptive AUTOSAR、ara::com、服务发现、SOME/IP 或自适应服务接口;不适用于非 AUTOSAR 代码接口配置(如 coder.mapping.* 存储类、Embedded Coder 字典 Data/Service Interface),此类任务应改用 simulink-configure-code-interfaces;不用于编写 AUTOSAR 组合、System Composer 模型或架构级接口拓扑;不用于无 Classic AUTOSAR SWC 映射或代码生成关注的通用 Simulink 编辑。只有用户要求产物或证据时才生成代码或 ARXML。版本敏感的 API 形式须先查文档,不可臆测属性名。