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.

Truth Table

Represente el comportamiento de toma de decisiones lógicas con condiciones, decisiones y acciones

  • Biblioteca:
  • Stateflow

Descripción

El bloque Truth Table es una función de tabla de verdad que utiliza MATLAB® como lenguaje de acción. Utilice este bloque cuando desee utilizar la lógica de tabla de verdad directamente en un modelo de Simulink®. Este bloque requiere Stateflow®.

Cuando añade un bloque Truth Table directamente en un modelo en lugar de llamar a las funciones de tabla de verdad desde un gráfico de Stateflow, se aplican las siguientes ventajas:

  • Es un enfoque más directo que crear una tabla de verdad dentro de un gráfico de Stateflow, sobre todo si su modelo solo necesita una tabla de verdad.

  • Puede definir entradas y salidas de la tabla de verdad con tamaños y tipos heredados.

El bloque Truth Table funciona con un subconjunto del lenguaje MATLAB que se optimiza para generar código C insertable. Este bloque genera contenido como código de MATLAB. Como resultado, puede utilizar de otras herramientas para depurar su bloque Truth Table durante la simulación.

Si hace doble clic en el bloque Truth Table, el Editor de tablas de verdad se abre para mostrar sus condiciones, acciones y decisiones.

Usando el Editor de tablas de verdad, puede:

  • Introducir y editar condiciones, acciones y decisiones.

  • Añadir o modificar datos y puertos de Stateflow usando el panel de Symbols y Property Inspector.

  • Realizar diagnósticos para detectar errores del analizador sintáctico.

  • Ver el contenido generado después de la simulación.

Para obtener más información sobre el editor de tablas de verdad, consulte Use Truth Tables to Model Combinatorial Logic.

Puertos

Entrada

expandir todo

Cuando crea datos de entrada en el panel de Symbols, Stateflow crea puertos de entrada. Los datos de entrada que cree tienen un puerto de entrada correspondiente que aparece una vez haya creado los datos.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | string

Salida

expandir todo

Cuando crea datos de salida en el panel de Symbols, Stateflow crea puertos de salida. Los datos de salida que cree tienen un puerto de salida correspondiente que aparece una vez haya creado los datos.

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus | string

Parámetros

expandir todo

Los parámetros de la pestaña Code Generation (Generación de código) requieren Simulink Coder™ o Embedded Coder®.

Principales

Seleccione cómo mostrar las etiquetas de puerto en el icono del bloque Truth Table.

none

No muestra las etiquetas de puerto.

FromPortIcon

Si el icono de puerto correspondiente muestra un nombre de señal, muestra el nombre de señal en el bloque Truth Table. De lo contrario, muestra el nombre del bloque del puerto.

FromPortBlockName

Muestra el nombre del bloque del puerto correspondiente en el bloque Truth Table.

SignalName

Si existe un nombre de señal, muestra el nombre de la señal conectada al puerto del bloque Truth Table. De lo contrario, muestra el nombre del bloque del puerto correspondiente.

Uso programático

Parámetro: ShowPortLabels
Tipo: escalar de cadena o vector de caracteres
Valor: "none""FromPortIcon" | "FromPortBlockName" | "SignalName"
Valor predeterminado: "FromPortIcon"

Controle el acceso de los usuarios al contenido del gráfico.

ReadWrite

Habilita la apertura y la modificación del contenido del gráfico.

ReadOnly

Habilita la apertura pero no la modificación del gráfico. Si el gráfico se encuentra en una biblioteca de bloques, puede crear y abrir enlaces al gráfico, y puede crear y modificar copias locales del gráfico, pero no puede cambiar los permisos ni modificar el contenido de la instancia de la biblioteca original.

NoReadOrWrite

Deshabilita la apertura o la modificación del gráfico. Si el gráfico se encuentra en una biblioteca, puede crear enlaces al gráfico en un modelo, pero no puede abrir, modificar, cambiar permisos ni crear copias locales del gráfico.

Uso programático

Parámetro: Permissions
Tipo: escalar de cadena o vector de caracteres
Valor: "ReadWrite" | "ReadOnly" | "NoReadOrWrite"
Valor predeterminado: "ReadWrite"
desactivado

No intenta eliminar los bucles algebraicos artificiales que incluyan la subgráfico atómica.

activado

Intenta eliminar los bucles algebraicos artificiales que incluyan la subgráfico atómica.

Uso programático

Parámetro: MinAlgLoopOccurrences
Tipo: escalar de cadena o vector de caracteres
Valor: "off" | "on"
Valor predeterminado: "off"

Especifique si todos los bloques de este gráfico deben ejecutarse con la misma frecuencia o si pueden ejecutarse a distintas frecuencias.

  • Si los bloques del gráfico pueden ejecutarse a distintas frecuencias, especifique el tiempo de muestreo del gráfico como heredado (-1).

  • Si se deben ejecutar todos los bloques a la misma frecuencia, especifique el tiempo de muestreo que corresponda a dicha frecuencia como valor del parámetro Sample time.

  • Si alguno de los bloques del gráfico especifica un tiempo de muestreo distinto (que no sea -1 ni inf), Simulink se muestra un mensaje de error cuando actualiza o simula el modelo. Por ejemplo, suponga que todos los bloques del gráfico deben ejecutarse 5 veces por segundo. Para garantizar esa frecuencia, especifique el tiempo de muestreo del gráfico como 0.2. En este ejemplo, si alguno de los bloques del gráfico especifica un tiempo de muestreo que no sea 0.2, -1 ni inf, Simulink se muestra un error cuando actualiza o simula el modelo.

-1

Especifique el tiempo de muestreo heredado. Si los bloques del gráfico pueden ejecutarse a distintas frecuencias, utilice este tiempo de muestreo.

[Ts 0]

Especifique el tiempo de muestreo periódico.

Uso programático

Parámetro: SystemSampleTime
Tipo: escalar de cadena o vector de caracteres
Valor: "-1" | "[Ts 0]"
Valor predeterminado: "-1"

Generación de código

Seleccione el formato del código generado para los subgráficos (no virtuales) atómicos.

Auto

Simulink Coder selecciona el formato óptimo para el sistema según el tipo y el número de instancias del gráfico que haya en el modelo.

Inline

Simulink Coder inserta el gráfico sin condiciones.

Nonreusable function

Simulink Coder genera de forma explícita una función independiente en un archivo independiente. Los bloques Truth table con este ajuste generan funciones que pueden tener argumentos basados en el ajuste de parámetro Function interface (Simulink). Puede nombrar la función y el archivo generados utilizando los parámetros Function name (Simulink) y File name (no extension) (Simulink). Estas funciones no son de reentrada.

Reusable function

Simulink Coder genera una función con argumentos que permite reutilizar código del gráfico cuando un modelo incluye múltiples instancias del gráfico.

Esta opción genera una función con argumentos que permite reutilizar código del gráfico en el código generado de una jerarquía de referencia de modelos que incluye múltiples instancias de un gráfico en los modelos a los que se hace referencia. En este caso, el gráfico debe encontrarse en una biblioteca.

Consejos

  • Si desea que se representen múltiples instancias de un gráfico como una única función reutilizable, puede designar cada una de ellas como Auto o como Reusable function. Es mejor usar una, porque al usar ambas se crean dos funciones reutilizables, una para cada designación. Los resultados de estas opciones solo difieren cuando no es posible reutilizarlas. Seleccionar Auto no permite controlar la función ni el nombre del archivo del código del gráfico.

  • Las opciones Reusable function y Auto determinan si existen múltiples instancias de un gráfico y si se puede reutilizar el código. Las opciones se comportan de manera diferente cuando no es posible reutilizar el código. En este caso, Auto produce código insertado o, si las circunstancias impiden la inserción, funciones independientes para cada instancia del gráfico.

  • Si selecciona Reusable function mientras el código generado se encuentre bajo el control de versiones, ajuste File name options en Use subsystem name, Use function name o User specified. De lo contrario, los nombres de los archivos de código cambian siempre que modifique el modelo, lo que impide el control de versiones de sus archivos.

Dependencia

  • Este parámetro requiere Simulink Coder.

  • Establecer este parámetro en Nonreusable function o en Reusable function habilita los parámetros siguientes:

    • Function name options

    • File name options

    • Sección de la memoria para inicializar/terminar funciones (requiere Embedded Coder y un archivo de destino de un sistema basado en ERT)

    • Sección de la memoria para funciones de ejecución (requiere Embedded Coder y un archivo de destino de un sistema basado en ERT)

  • Establecer este parámetro en Nonreusable function, habilita Function with separate data (requiere una licencia para Embedded Coder y un archivo de destino de un sistema basado en ERT).

Uso programático

Parámetro: RTWSystemCode
Tipo: escalar de cadena o vector de caracteres
Valor: "Auto" | "Inline" | "Nonreusable function" | "Reusable function"
Valor predeterminado: "Auto"

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante Simulink® Coder™.

Generación de código PLC
Genere código de texto estructurado mediante Simulink® PLC Coder™.

Conversión de punto fijo
Diseñe y simule sistemas en punto fijo mediante Fixed-Point Designer™.

Historial de versiones

Introducido antes de R2006a