Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

Crear objetos de bus de Simulink de forma programática

Puede crear un objeto Simulink.Bus de forma programática y sus objetos Simulink.BusElement a partir de arreglos, bloques, arreglos de celdas, estructuras o código C.

A medida que crea objetos de bus de forma programática, puede almacenarlos en el área de trabajo de MATLAB® o en un diccionario de datos, o guardar sus definiciones en una función. En el caso de los objetos de bus del área de trabajo base, puede guardar de forma programática sus definiciones en una función mediante la función Simulink.Bus.save.

Para simular un bloque que usa un objeto de bus, ese objeto de bus debe estar en el área de trabajo base o en un diccionario de datos.

Crear objetos de bus a partir de objetos de elemento de bus

Cree una jerarquía de objetos Simulink.Bus mediante arreglos de objetos Simulink.BusElement.

Cree un arreglo que contenga dos objetos BusElement en el área de trabajo base y denomínelos Chirp y Sine.

elems(1) = Simulink.BusElement;
elems(1).Name = 'Chirp';

elems(2) = Simulink.BusElement;
elems(2).Name = 'Sine';

La indexación del arreglo permite crear y acceder a los elementos del arreglo. La notación de puntos permite acceder a los valores de propiedad de los elementos.

Cree un objeto Bus, denominado Sinusoidal, que contenga los elementos definidos en el arreglo elems.

Sinusoidal = Simulink.Bus;
Sinusoidal.Elements = elems;

Para crear una jerarquía de objetos Bus, cree otro objeto Bus para referenciar el objeto Bus denominado Sinusoidal.

Cree un arreglo que contenga dos objetos BusElement y denomínelos NestedBus y Step. Especifique el objeto Bus denominado Sinusoidal como el tipo de datos del elemento NestedBus.

clear elems

elems(1) = Simulink.BusElement;
elems(1).Name = 'NestedBus';
elems(1).DataType = 'Bus: Sinusoidal';

elems(2) = Simulink.BusElement;
elems(2).Name = 'Step';

Cree un objeto Bus, denominado TopBus, que contenga los elementos definidos en el arreglo elems.

TopBus = Simulink.Bus;
TopBus.Elements = elems;

Puede ver la jerarquía de los objetos creados en el editor de tipos.

typeeditor

Crear objetos de bus a partir de bloques

Para crear de forma programática un objeto Simulink.Bus basado en un bloque en un modelo, use la función Simulink.Bus.createObject.

Si especifica un bloque Bus Creator que está en el nivel más alto de una jerarquía de buses, la función crea objetos de bus para todos los buses de la jerarquía, incluidos los buses anidados.

Crear objetos de bus a partir de datos de MATLAB

Para crear un objeto Simulink.Bus a partir de un arreglo de celdas, use la función Simulink.Bus.cellToObject. Cada arreglo de celdas subordinado representa otro objeto de bus.

Para crear un objeto de bus a partir de una estructura de MATLAB, use la función Simulink.Bus.createObject. La estructura puede contener timeseries de MATLAB, timetable de MATLAB y objetos matlab.io.datastore.SimulationDatastore o puede ser una estructura numérica.

Crear objetos de bus a partir de código C externo

Puede crear un objeto Simulink.Bus que se corresponda con un tipo de estructura (struct) que defina el código C existente. Luego, como preparación para integrar el código C algorítmico existente en la simulación (por ejemplo, usando Legacy Code Tool), puede usar el objeto de bus para empaquetar datos de señales o de parámetros de acuerdo con el tipo de estructura. Para crear el objeto, use la función Simulink.importExternalCTypes.

Consulte también

Funciones

Clases

Temas relacionados