VisSim es un programa de diagrama de bloques visual para la simulación de sistemas dinámicos y el diseño basado en modelos de sistemas embebidos , con su propio lenguaje visual . Es desarrollado por Visual Solutions de Westford, Massachusetts . Visual Solutions fue adquirida por Altair en agosto de 2014 y sus productos han sido renombrados como Altair Embed como parte de la Suite de Desarrollo Basado en Modelos de Altair. Con Embed, se pueden desarrollar prototipos virtuales de sistemas dinámicos. Los modelos se construyen deslizando bloques en el área de trabajo y conectándolos con el mouse. Embed convierte automáticamente los diagramas de control en código C listo para ser descargado al hardware de destino.
VisSim (ahora Altair Embed) utiliza un paradigma de flujo de datos gráfico para implementar sistemas dinámicos, basados en ecuaciones diferenciales. La versión 8 agrega gráficos de estado interactivos compatibles con UML OMG 2 que se colocan en diagramas de VisSim, lo que permite el modelado de sistemas basados en estados, como la secuenciación de arranque de plantas de proceso o la decodificación de protocolos en serie.
VisSim/Altair Embed se utiliza en el diseño de sistemas de control y procesamiento de señales digitales para simulación y diseño multidominio. [1] Incluye bloques para funciones aritméticas, booleanas y trascendentales , así como filtros digitales , funciones de transferencia , integración numérica y gráficos interactivos. [2] Los sistemas modelados con mayor frecuencia son los aeronáuticos, biológicos/médicos, de energía digital, de motores eléctricos, eléctricos, hidráulicos, mecánicos, de procesos, térmicos/ HVAC y econométricos. [1]
Una versión de solo lectura del software, VisSim Viewer, está disponible de forma gratuita y ofrece una manera para que las personas que no poseen una licencia para usar VisSim ejecuten modelos de VisSim. [3] Este programa tiene como objetivo permitir que los modelos se compartan más ampliamente, al mismo tiempo que se preserva el modelo en su forma publicada. [3] El visor puede ejecutar cualquier modelo de VisSim y solo se permiten cambios en los parámetros de bloques y simulación para ilustrar diferentes escenarios de diseño. Se pueden activar controles deslizantes y botones si están incluidos en el modelo.
El complemento "VisSim/C-Code" genera código ANSI C para el modelo y genera código específico de destino para dispositivos en chip como PWM, ADC, codificador, GPIO, I2C, etc. Esto es útil para el desarrollo de sistemas integrados . Una vez que se ha simulado el comportamiento del controlador, se puede generar código C, compilarlo y ejecutarlo en el destino. Para la depuración, VisSim admite un enlace JTAG interactivo, llamado "Hotlink", que permite el cambio de ganancia interactivo y el trazado de variables en el destino. El código generado por VisSim se ha calificado de eficiente y legible, lo que lo hace muy adecuado para el desarrollo de sistemas integrados. [4] El autor de VisSim formó parte del comité ANSI C de X3J11 y escribió varios compiladores de C, además de ser coautor de un libro sobre C. [5] Este profundo conocimiento de ANSI C y la naturaleza del código de máquina resultante cuando se compila es la clave de la eficiencia del generador de código. VisSim puede apuntar a pequeños sistemas de punto fijo de 16 bits como el Texas Instruments MSP430 , utilizando solo 740 bytes de flash y 64 bytes de RAM para un pequeño sistema accionado por modulación de ancho de pulso (PWM) de circuito cerrado, además de permitir frecuencias de muestreo de control muy altas de más de 500 kHz en procesadores de punto flotante de 32 bits más grandes como el Texas Instruments 150 MHz F28335.
La técnica de simular el rendimiento del sistema fuera de línea y luego generar código a partir de la simulación se conoce como "desarrollo basado en modelos". El desarrollo basado en modelos para sistemas integrados se está adoptando ampliamente para sistemas de producción porque acorta los ciclos de desarrollo para el desarrollo de hardware de la misma manera que la arquitectura basada en modelos acorta los ciclos de producción para el desarrollo de software. [6]
La construcción de modelos es una forma visual de describir una situación. En un contexto de ingeniería, en lugar de escribir y resolver un sistema de ecuaciones , la construcción de modelos implica el uso de "bloques" visuales para resolver el problema. La ventaja de utilizar modelos es que, en algunos casos, los problemas que parecen difíciles si se expresan matemáticamente pueden ser más fáciles de entender si se representan gráficamente.
VisSim utiliza una composición jerárquica para crear diagramas de bloques anidados. Un modelo típico consistiría en "plantas virtuales" compuestas de varias "capas" de VisSim, combinadas, si es necesario, con bloques personalizados escritos en C o FORTRAN. Se puede agregar un controlador virtual y ajustarlo para obtener la respuesta general deseada del sistema. Los elementos de control gráfico, como los controles deslizantes y los botones, permiten controlar el análisis hipotético para la capacitación del operador o el ajuste del controlador.
Aunque VisSim fue diseñado originalmente para ser utilizado por ingenieros de control , se puede utilizar para cualquier tipo de modelo matemático.