Tablas de transición de estados en Stateflow
El bloque State Transition Table representa una máquina de estados finitos para la lógica modal secuencial en un formato tabular. En lugar de representar los estados y las transiciones en un gráfico de Stateflow®, puede utilizar una tabla de transición de estados para modelizar una máquina de estados en un formato conciso y compacto que requiere un mantenimiento mínimo de los objetos gráficos.
Para implementar la lógica de control, las tablas de transición de estados pueden utilizar MATLAB® o C como lenguaje de acción. Para obtener más información, consulte Diferencias entre C y MATLAB como sintaxis de lenguaje de acción.
Crear una tabla de transición de estados
En la línea de comandos de MATLAB, introduzca:
Para crear State Transition Table en un modelo de Simulink® nuevo, introduzca:
sfnew -STT
Para añadir State Transition Table a un modelo existente, utilice la función
add_block
(Simulink). Por ejemplo:add_block("sflib/State Transition Table", ... "myModel/State Transition Table")
En el navegador de la biblioteca de Simulink:
Seleccione la biblioteca de Stateflow.
Arrastre una tabla de transición de estados a su modelo.
Anatomía de una tabla de transición de estados
Una tabla de transición de estados contiene los componentes siguientes:
Cada columna de transición contiene la siguiente información sobre la transición de un estado a otro:
Condición
Acción de la condición
Estado del destino
Usar una tabla de transición de estados para modelizar una caldera
La siguiente tabla de transición de estados contiene la lógica modal para mantener la temperatura de una caldera entre dos puntos especificados:
Este gráfico de Stateflow representa la misma lógica modal:
Diferencias entre gráficos y tablas de transición de estados
Las tablas de transición de estados son compatibles con un subconjunto de los elementos más utilizados en los gráficos de Stateflow. Algunos de los elementos no compatibles con las tablas de transición de estados incluyen:
Supertransiciones
Descomposición paralela (AND)
Eventos locales
Diagramas de flujo
Uso de funciones a nivel de gráfico (gráficas, de tablas de verdad, MATLAB y Simulink)
Directrices para el uso de tablas de transición de estados
Si especifica una acción en una celda de transición, esta debe ser una acción de la condición.
Las tablas de transición de estados deben tener como mínimo una fila de estado y una columna de transición.
Especificar propiedades para las tablas de transición de estados
Las propiedades de la tabla de transición de estados especifican cómo interactúa con el modelo de Simulink. Puede modificar estas propiedades en Property Inspector, Model Explorer o el cuadro de diálogo de propiedades de la tabla de transición de estados.
Para utilizar Property Inspector:
En la pestaña Modeling, en Design Data, seleccione Property Inspector.
En el editor de Stateflow, haga clic en la tabla de transición de estados.
En Property Inspector, edite las propiedades de la tabla de transición de estados.
Para utilizar Model Explorer:
En la pestaña Modeling, en Design Data, seleccione Model Explorer.
En el panel Model Hierarchy, seleccione la tabla de transición de estados.
En el panel Dialog, edite las propiedades de la tabla de transición de estados.
Para utilizar el cuadro de diálogo de propiedades de la tabla de transición de estados:
Abra el editor de Stateflow.
En la pestaña Modeling, haga clic en Table Properties.
En el cuadro de diálogo de propiedades, edite las propiedades de la tabla de transición de estados.
También puede modificar las propiedades de la tabla de transición de estados de forma programática con objetos Stateflow.StateTransitionTableChart
. Para obtener más información sobre la interfaz programática de Stateflow, consulte Overview of the Stateflow API.
Sugerencia
Las propiedades de la tabla de transición de estados son un subconjunto de las propiedades de los gráficos de Stateflow. Para obtener una descripción de cada propiedad, consulte Especificar las propiedades de los gráficos de Stateflow.
Generar diagramas a partir de tablas de transición de estados
El software Stateflow genera automáticamente un diagrama de transición de estados de solo lectura a partir de la tabla de transición de estados que crea. Cuando introduce cambios en una tabla de transición de estados, Stateflow también actualiza el diagrama de forma progresiva. Para ver la versión más actualizada del diagrama subyacente, en la pestaña Debug, haga clic en Show Auto Chart.