Crear conexiones de entrada y salida en los límites de estado
Los puertos de entrada y salida representan conexiones dentro y fuera de estados y subgráficos. Al igual que las supertransiciones, los puertos de entrada y salida crean rutas de transición a través de los límites en la jerarquía de Stateflow®. No obstante, dado que los puertos de entrada y salida aíslan la lógica de transición para entrar y salir de estados existentes, se pueden usar en subgráficos atómicos. Los puertos de entrada y salida no se admiten en gráficos independientes de Stateflow en MATLAB®.
En el editor de Stateflow, los puertos de entrada y salida aparecen como flechas en el límite de un estado o subgráfico. Cada puerto tiene una intersección correspondiente que marca el punto de entrada o salida dentro del estado o subgráfico. El icono de la intersección de entrada y el icono de la intersección de salida
indican la intersección. Una ruta de transición que conduce a un puerto de entrada continúa a lo largo de la transición conectada a la intersección de entrada correspondiente. De forma similar, una ruta de transición que conduce a una intersección de salida continúa a lo largo de la transición conectada al puerto de salida correspondiente. Por ejemplo, en este gráfico, el puerto de salida con la etiqueta
turnOff
representa la conexión de salida fuera del subgráfico On
.
En el subgráfico, la ruta de transición que conduce a la intersección de salida define la lógica para salir del subgráfico. En este ejemplo, la función warm
debe evaluarse como true
en dos unidades de tiempo consecutivas antes de que el gráfico haga la transición de salida del estado On
.
Para obtener más información sobre este ejemplo, consulte Modelar un sistema de control de temperatura de encendido/apagado. Para ver otros ejemplos que usan puertos de entrada y salida, consulte Robot Trajectory Planning with Reusable Components y Modelar un sistema de interrupción de lanzamiento.
Añadir puertos de entrada y salida
Para crear un puerto de entrada o salida, añada una intersección de entrada o salida dentro de un estado o subgráfico.
En la paleta de objetos, haga clic en el icono Entrada
o en el icono Salida
.
En el área de diseño del gráfico, haga clic en la ubicación de la nueva intersección de entrada o salida. Aparece un puerto de entrada o salida correspondiente en el límite del estado o subgráfico que contiene la intersección de entrada o de salida nueva.
Introduzca una etiqueta para la intersección y el puerto correspondiente. Consulte Añadir etiquetas para identificar interacciones y puertos correspondientes.
Directrices para usar puertos de entrada y salida
Añadir intersecciones de entrada y salida solo a estados exclusivos (OR) y subgráficos atómicos
Las intersecciones de entrada y de salida solo se admiten en los estados exclusivos (OR) y en los subgráficos atómicos. No añada intersecciones de entrada y salida a gráficos de un nivel superior, estados paralelos (AND) o cuadros.
Añadir etiquetas para identificar interacciones y puertos correspondientes
Las etiquetas en los puertos de entrada y salida indican qué intersección se conecta con qué puerto. Añadir una etiqueta es opcional cuando un estado contiene solo una intersección de entrada o salida. Se requieren etiquetas únicas cuando un estado contiene más de una intersección de entrada o más de una intersección de salida.
Evitar retrocesos a través de puertos de entrada y salida
Para asegurarse de que el gráfico entra o sale de un estado sin retroceso, cada intersección de entrada y puerto de salida debe tener una ruta que no esté protegida por una condición o activada por un evento. Las rutas de transición desde las intersecciones de entrada y los puertos de salida deben conducir a estados y no deben contener intersecciones terminales.
Aislar la lógica de transición para intersecciones de entrada y salida
Las rutas de transición que empiezan en las intersecciones de entrada o que terminan en las intersecciones de salida deben estar contenidas en el estado principal.
No entrar ni salir de estados en la misma unidad de tiempo
Las rutas de transición internas y predeterminadas no deben conectarse con una intersección de salida.
Decidir entre supertransiciones y puertos de entrada y salida
Tanto las supertransiciones como los puertos de entrada y salida permiten moverse por diferentes niveles en la jerarquía del gráfico. El enfoque que debe seleccionar depende de los requisitos de diseño.
Escenario | Recomendación |
---|---|
Transición entre los subestados de dos estados del mismo nivel, de los que ninguno es un subgráfico | Use una supertransición. Puede crear una supertransición que no cruce ningún límite de subgráfico simplemente haciendo clic en el límite del estado de origen y arrastrando el puntero al estado de destino. |
Transición a o desde un subestado de un subgráfico normal | Utilice una supertransición o un puerto de entrada o salida.
|
Transición a o desde un subestado de un subgráfico atómico | Utilice un puerto de entrada o salida. Las supertransiciones no pueden cruzar el límite de subgráficos atómicos. |
Especificar propiedades de puertos de entrada y salida
Puede modificar las propiedades que se muestran a continuación en Property Inspector, Model Explorer o el cuadro de diálogo de propiedades del puerto de entrada, puerto de salida, intersección de entrada o intersección de salida.
Para utilizar Property Inspector:
En la pestaña Modeling, en Design Data, seleccione Property Inspector.
En el editor de Stateflow, seleccione el puerto o intersección.
En Property Inspector, edite las propiedades del puerto o intersección.
Para utilizar Model Explorer:
En la pestaña Modeling, en Design Data, seleccione Model Explorer.
En el panel Model Hierarchy, seleccione el gráfico o estado principal del puerto o intersección.
En el panel Contents, seleccione el puerto o intersección.
En el panel Dialog, edite las propiedades del puerto o intersección.
Para utilizar el cuadro de diálogo de propiedades del puerto de entrada, puerto de salida, intersección de entrada o intersección de salida:
En el editor de Stateflow, haga clic con el botón secundario en el puerto o intersección.
Seleccione Properties.
En el cuadro de diálogo de propiedades, edite las propiedades del puerto o intersección.
También puede modificar las propiedades del puerto o intersección de forma programática con objetos de Stateflow.Port
. Para obtener más información sobre la interfaz programática de Stateflow, consulte Visión general de la API de Stateflow.
Elemento principal
Elemento principal del puerto o intersección. Esta propiedad es de solo lectura y no está disponible en Property Inspector. Al hacer clic en el hipervínculo principal, el Editor de Stateflow coloca el elemento principal en primer plano.
Origen
Estado o subgráfico de origen del puerto de entrada o salida. El origen de un puerto de entrada o salida es el estado o subgráfico cuyo límite contiene el puerto. Esta propiedad es de solo lectura y no está disponible en Property Inspector. Al hacer clic en el hipervínculo de origen, el editor de Stateflow coloca el estado o subgráfico de origen en primer plano.
Etiqueta
Etiqueta para el puerto o intersección. Esta propiedad es de solo lectura para puertos de entrada o salida. Para obtener más información, consulte Definir acciones en una transición.
Descripción
Descripción del puerto o intersección.
Enlace del documento
Enlace a la documentación online del puerto o intersección. Puede introducir una dirección URL o un comando de MATLAB que muestre la documentación como un archivo HTML o como texto en la ventana de comandos de MATLAB. Cuando hace clic en el hipervínculo Document link, Stateflow evalúa el enlace y muestra la documentación.
Consulte también
Objetos
Herramientas
- Model Explorer (Simulink)