Añadir datos de Stateflow
Puede añadir datos a un gráfico de Stateflow® con el panel Symbols o la barra de herramientas.
En gráficos de Stateflow, los datos son accesibles desde estados, transiciones, funciones de MATLAB® y tablas de verdad. Para examinar qué datos utiliza un estado o una transición específicos, haga clic con el botón secundario en el estado o la transición y haga clic en Explore. Esta acción abre un menú contextual que muestra todos los datos resueltos del estado o transición seleccionado, y sus nombres y ámbitos. Cuando selecciona datos de este menú, Model Explorer se abre y muestra las propiedades de los datos. Si selecciona un evento de salida, se abre el subsistema de Simulink® o el gráfico de Stateflow enlazado a dicho evento.
Nota
Los datos de Stateflow no están disponibles para las funciones de Simulink de un gráfico de Stateflow.
Añadir datos mediante el panel Symbols
El panel Symbols muestra todos los objetos de datos de un gráfico. Para crear datos en el panel Symbols:
En la pestaña Modeling, en Design Data, seleccione el panel Symbols.
Haga clic en el icono Create Data
.En la fila de los datos nuevos, en la columna Type, haga clic en el icono y seleccione:
Input Data
Local Data
Output Data
Constant
Data Store Memory
Parameter
Temporary
Para obtener más información acerca de los tipos de datos, consulte Establecer propiedades de datos.
Edite el nombre de los datos ajustando el valor de la columna Name.
En cuanto a los datos de entrada y de salida, puede modificar el orden de los puertos de entrada o salida haciendo clic en el campo Port y seleccionando un número de puerto.
Para especificar propiedades para los datos, haga clic con el botón secundario en la fila del símbolo y seleccione Explore.
Conectar datos a Simulink
Si crea datos de entrada o salida, puede conectarlos a bloques de Simulink.
Para conectar datos de entrada:
En el modelo de Simulink, añada un bloque fuente. Consulte Sources (Simulink).
Conecte la salida del bloque fuente al puerto de entrada del gráfico de Stateflow.
Cuando hace clic en Run, el objeto de datos de entrada recibe valores del bloque de Simulink conectado.
Para conectar datos de salida:
En el modelo de Simulink, añada un bloque de sumidero. Consulte Sinks (Simulink).
Conecte el puerto de salida del gráfico de Stateflow a la entrada del bloque destino.
Cuando hace clic en Run, el objeto de datos de salida envía valores al bloque de Simulink conectado.
Prácticas recomendadas para usar datos en gráficos
Las propiedades de los datos de salida de Stateflow no se deben heredar de las señales de salida de Simulink, ya que los valores se retropropagan a partir de bloques de Simulink y pueden ser impredecibles.
Optimizar el rendimiento del código generado mediante datos in-place
Para optimizar el rendimiento y reducir el uso de memoria del código generado para los gráficos de Stateflow, las tablas de verdad y las tablas de transición de estado, utilice datos in-place. Para crear datos in-place, asigne nombres idénticos a las entradas y la salida del gráfico. Los datos in-place permiten que el generador de código trate los datos como un único argumento que se pasa por referencia en lugar de variables independientes. Este enfoque minimiza las operaciones intermedias de copia de datos, por lo que el código generado es más eficiente.
Cuando los datos de entrada y de salida comparten el mismo nombre, solo se pueden modificar las propiedades de los datos de entrada. Las correspondientes propiedades de los datos de salida pasan a ser de solo lectura.