matlab实现rte接口_Matlab/simulink用脚本批量创建接口并设置属性

在汽车软件基于autosar开发过程中,在主机厂一般是按功能模块划分给软件开发小组的各个工程师开发维护。在众多功能模块中,有一个功能模块是CAN信号处理模块,其主要功能是连接RTE接口和应用层ASW接口,即把本ECU各个功能模块(eg.BMS开发中SOC等)的信号按照项目的CAN协议(DBC)中定义的信号名、分辨率和偏移量等装载,然后调用RTE接口写进底层CAN寄存器,底层周期性把这心信号发到CAN总线上去;此外把底层传上来的来自其他ECU的CAN信号进行解析,改变ASW能识别的信号名,供给各个ASW使用。在现代的汽车中,CAN信号非常多,所以CAN处理模块在用simulink建模时,接口的变更会引起模型的变化,各个信号的间距、位置等就会发生变化,使模型看起来非常紊乱,而一个个手动拖动信号端口,则耗时巨大,效率比较低,本文介绍通过脚本自动对齐端口,此脚本仅限于对齐端口,由于现在比较忙,更完善的功能还未有时间整理。

硬核干活

先展示效果,再详解实现过程。如图1,初始时模型乱如麻。

图1.对齐前的模型

建立脚本,运行函数后如图2(不是手动对齐的)。

以下是方法原理。

(1)get_param('test/subsystem','PortConnectivity')获取位置信息

在simulink模型中,每个模块都有很多属性,比如端口的位置、大小,子系统的接口数量,位置坐标等。我们首

  • 2
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值