在simulink中创建bus总线,主要包含2种方法:
基于模块创建总线对象
使用模块,根据输入信号创建总线
基于 MATLAB 数据创建总线对象
可以使用 Simulink.Bus.cellToObject 函数,基于 MATLAB 中的总线元胞数组信息创建总线对象。每个元胞子元胞数组代表一个总线对象,并包括反映 Simulink.Bus 对象属性的以下数据:
{BusName,HeaderFile,Description,DataScope,Alignment,Elements}
Elements 字段是为每个 Simulink.BusElement 对象定义以下属性的元胞数组:
{ElementName,Dimensions,DataType,SampleTime,Complexity,DimensionsMode,Min,Max,Units,Description}
其中FirmamentPilot开源MBD飞控工程便是采用基于MATLAB数据创建总线对象,如控制器输出PWM的bus代码如下:
function cellInfo = control_bus(varargin)
% CONTROL_BUS returns a cell array containing bus object information
%
% Optional Input: 'false' will suppress a call to Simulink.Bus.cellToObject
%