Main Content

Modelización de un reproductor de CD/radio utilizando tablas de transición de estado

Este ejemplo muestra un modelo sencillo de lógica de reproductor de CD/radio que utiliza tablas de transición de estado en Stateflow®.

El gráfico CdPlayerModeManager, diseñado mediante una tabla de transición de estados, representa la esencia de la lógica para controlar el reproductor de CD/radio. La tabla se utiliza para representar la lógica modal en formato tabular. Permite definir distintos estados y sus estructuras jerárquicas, además de las transiciones entre estados.

Celdas de estado

La columna que está más a la izquierda representa todos los estados de la tabla. Tenga en cuenta que los estados pueden estar anidados jerárquicamente. Puede elegir uno de los estados como predeterminado en cualquier nivel. Esto se representa mediante una transición predeterminada dibujada a la izquierda del estado. También puede añadir una fila de transición predeterminada si se utiliza una lógica para elegir el primer estado que se va a introducir.

Puede añadir una intersección histórica a un estado concreto haciendo clic con el botón secundario en el estado y seleccionando Add history junction. Esto permite que el estado recuerde el último estado activo cuando se introduce de nuevo, en lugar de elegir el estado predeterminado. Por ejemplo, los estados ModeManager y ON tienen intersecciones históricas. Es posible generar un gráfico de Stateflow de forma automática a partir de esta vista de tabla.

Celdas de transición

El siguiente grupo de columnas representa las transiciones externas de un estado. Cada fila representa las transiciones externas de un estado concreto. Cada celda de transición está subdividida en tres subceldas:

  1. Celda de condición: para especificar una condición booleana que indique cuándo está activa la transición

  2. Celda de acción de condición: para especificar la acción que debe realizarse cuando la transición está activa

  3. Celda de destino: para especificar el estado de destino de la transición. Tenga en cuenta que puede usar palabras clave especiales como $NEXT, $PREV para especificar el destino relativo al estado actual.

Este gráfico recibe datos de entrada del usuario, por ejemplo, si se ha introducido un disco y la elección del modo de radio (FM, AM o CD). Después, el gráfico determina el comando mecánico de salida. Los tipos de datos de entrada y de salida se definen como tipos de datos enumerados en los archivos CdRequestMode.m y RadioRequestMode.m de MATLAB®.

El gráfico CdPlayerModeManager, que modeliza el comportamiento del mecanismo del reproductor de CD, procesa el comando de salida de CdPlayerBehaviorModel. Esta lógica también se implementa utilizando una tabla de transición de estado.

Se utiliza una interfaz de MATLAB para establecer los distintos modos de CD/radio.

Consulte también

Funciones

Temas relacionados