Las técnicas y principios de modelado de software

TÉCNICAS DE MODELADO Y SIMULACIÓN 

Importancia de la simulación 

En la actualidad, la modelización y la simulación es una actividad indispensable cuando nos enfrentamos con el análisis y diseño de sistemas multi disciplinares de cierta complejidad. El objetivo es ayudar o dar el soporte necesario al diseñador durante el proceso de diseño, análisis y diagnosis de sistemas ingenieriles. El software debe complementar el talento del diseñador para que éste pueda modelar y simular de forma lo mas eficientemente posible. El software hace posible establecer una valoración final antes de que los sistemas sean construidos, y pueden aliviar la necesidad de experimentos caros y dar soporte a todas las etapas de un proyecto desde el diseño conceptual, pasando por el montaje hasta llegar a su funcionamiento.

Evolución 

Hay una amplia literatura sobre la simulación. En el artículo de Cellier y otros [1995] se puede leer un excelente resumen sobre la evolución de las técnicas (métodos y lenguajes) de la modelización y la simulación. Por otra parte, la SCS (Society for Computer Simulation) publica cada año una lista actualizada del software disponible. En la tabla 4.1 se ha pretendido resumir los hitos más importantes. En la tabla 4.2 se hace referencia de algunos de los programas informáticos comercializados que tiene relación directa con la simulación de sistemas oleohidráulicos. En la tabla 4.1 se han incluido también algunos de los avances tecnológicos más significativos habida cuenta que en algunos periodos la tecnología ha sido un factor clave en el desarrollo de la simulación. Sin embargo, es interesante observar que las ideas cambian más lentamente que la tecnología. Es solamente a partir de los 90 que se hace necesario un cambio de paradigma. Este cambio ha sido motivado por los usuarios. Los usuarios requieren: 

1. la simulación de sistemas complejos multi disciplinares

2. la programación avanzada orientada al objeto, 

3. software para la resolución de sistemas diferenciales algebraicos, 

4. la computación simbólica y 

5. métodos gráficos avanzados 

Las metodologías modernas se construyen sobre la base de una modelizacion NO causal con ecuaciones matemáticas y el empleo de construcciones orientadas al objeto para facilitar la reutilización de conocimiento modelado.


Simulación Analógica

Los primeros simuladores fueron analógicos. La idea es modelar un sistema en términos de ecuaciones diferenciales ordinarias y después hacer un dispositivo físico que obedezca a las ecuaciones. El sistema físico se inicializa con valores iniciales apropiados y su desarrollo en un cierto plazo que simula la ecuación diferencial. Inicialmente se desarrollaron analizadores diferenciales mecánicos como herramienta de propósitos generales para simular sistemas dinámicos los cuales fueron reemplazados por sistemas electrónicos. La simulación analógica no puede tratar con ecuaciones diferenciales algebraicas (EDAs), sólo con ecuaciones diferenciales ordinarias (EDOs), lo cual no es muy grave, según Broenink J. F (1999), las EDAs se dan cuando se simplifica demasiado el modelo.


Simulación Numérica

La solución numérica de una ecuación diferencial es un esencial ingrediente de la simulación numérica. Hay varias maneras de encontrar soluciones de aproximación numérica para las ecuaciones diferenciales. Los métodos son basados en la idea de reemplazar las ecuaciones diferenciales por una ecuación de diferencia. El método de Euler es basado en aproximación de la derivativa por una diferencia de primer orden. Hay técnicas más eficientes tales como Runge-Kutta y métodos de múltiple pasos. Estos métodos fueron muy conocidos cuando emergieron los simuladores digitales en el año de 1960. El campo de las matemáticas numéricas experimentó un renacimiento debido al impacto de las computadoras digitales.

Simulación Analógica Digital 

Cuando las computadoras digitales aparecieron, era natural explorar si pudiesen ser usadas para la simulación. El desarrollo fue iniciado por Selfridge (1955) que demostró como una computadora digital puede emular un analizador diferencial. Este enfoque dio lugar a la aparición de numerosos lenguajes de programación. En este medio se desarrolló CSSL estándar [Strauss (ed) (1967)], fue un mayor hito, puesto que unificó los conceptos y estructuras de lenguaje de los programas disponibles de simulación. ACSL de Mitchell y Gauthier (1967), se basa en CSSL pero con ciertas modificaciones y mejoras. SIMNON fue desarrollado en la universidad de Lund iniciando en 1972 y distanciándose de CSSL estándar [Elmqvist (1975)]. El desarrollo en esta dirección sólo fue posible con la aparición de computadoras con buenas prestaciones en donde el PC con gráficos de tramas llegó a estar generalmente disponible. Entre las aplicaciones de este tipo están VisSim [Darnell y Kolk (1990)]. Mitchell y Gauthier introdujeron el modelador gráfico ACSL en 1993 o SIMULINK. BDSP (Block Diagram Simulation Program) es un programa de simulación usado en el entorno Windows desarrollado por la universidad de Gifu. Ofrece una librería que cubre un amplio rango de áreas físicas y aplicaciones que facilitan la construcción de los modelos. Este programa posee una rutina para identificar modelos a partir de la estimación experimental de su función de transferencia [Yamada y Muto (2001)]. SIMULINK (originalmente llamado SIMULAB) que se integra con MATLAB, apareció en 1991 [Grace (1991)]. Es especialmente diseñado para trabajar con diagramas de bloques usando MATLAB para el análisis dinámico del sistema. Los diagramas de bloques de SIMULINK pueden ser definidos como ecuación de estado. 

Simuladores Específicos 

Es posible diseñar el entorno del modelo, que son muy fáciles de usar, limitando el dominio del modelo. Inicialmente, estos programas solo abarcaban una rama de la ingeniería. Algunas herramientas de este tipo son: el sistema SPICE, el cual fue desarrollado para el modelo analógico de un circuito eléctrico, y DADS, desarrollado en la universidad de Iowa (1984), para la simulación de sistemas mecánicos. Un gran número de herramientas de este tipo ha sido desarrollado en varias ramas de la ingeniería. El programa Hysis, desarrollado por Mannesmann Rexroth, orientado al cálculo dinámico en el campo de la oleohidráulica, comprende cuatro subprogramas bien definidos para la simulación no lineal de circuitos electro-hidráulicos de regulación. Cada subprograma, disponibles para aplicaciones prácticas, permite simular un tipo diferente de sistema: 

1) HYVOS: accionamientos que conciernen al actuador lineal controlado por una válvula 

2) HYDRA: accionamientos que conciernen al actuador rotativo controlado por una válvula 

3) HYSTA: accionamientos hidrostáticos 

4) HYSEK: accionamientos con regulación secundaria

La ventaja del programa Hysis, según Murrenhoff (1998) es su notable facilidad de empleo siempre que el modelo desarrollado se pueda clasificar dentro de uno de los cuatros subprogramas.

Simuladores Multi-Disciplinares

El software para dominios específicos es muy útil de usar si el problema es adecuado a la herramienta directamente, siendo muy útiles en su campo de aplicación, pero hay muchos diseños que necesitan de programas de simulación que permitan la colaboración con otros programas. Como ejemplo esté el programa ITI – SIM (ITI GMBH; Dresden Alemania), ver Klein y Grätz (2001). Es un software de simulación que cubre un amplio rango de áreas físicas y aplicaciones: hidráulica, neumática, mecánica, térmicas, transmisión electro – mecánica y bloque de señales. Este programa permite definir los modelos para facilitar su utilización. De esta forma la construcción de un modelo es adaptada a la descripción más común para cada disciplina de la ingeniería por medio de diagramas de circuitos hidráulicos, para dispositivos mecánicos y diagramas de bloques para la estructura de control. Incluye una librería con numerosos componentes, razón por la cual, la posibilidad de construir nuevos componentes definidos por el usuario, debe ser considerado como un rasgo importante. ITI – SIM proporciona un fichero DLL que permite modelar componentes especiales. El archivo DLL puede ser creado por cualquier compilador (Microsoft C++ ó MATLAB / SIMULINK).

Simulación Física 

Un procedimiento físico para el modelado físico es dividir un sistema en subsistemas y explicar el comportamiento en los nodos de conexión. Cada subsistema puede tener numerosos niveles, en el cual, el nivel inferior representan elementos básicos que se agrupan para formar un subsistema de nivel superior. El modelo completo se obtiene agrupando los subsistemas. Según Broenink (1999), se deben cumplir dos condiciones para garantizar que los submodelos sean acoplables:

1. Los puertos de conexión entre submodelos están definidos como pares de variables. El uso de pares de variables conjugadas en potencia hacen que las conexiones sean físicas, por ejemplo: par y velocidad, presión y caudal.

2. Los submodelos han de estar escritos en estilo declarativo, es decir, estableciendo relaciones y no procedimientos para computar. Esta descripción también se llama causal. 

Los submodelos se han de describir aplicando ecuaciones de conservación, aunque también puede ser necesario describir las propiedades de los elementos usados. El sistema de ecuaciones se obtiene a través de la combinación de las ecuaciones de los submodelos y de los puertos de conexión. Esto conduce, naturalmente, a las ecuaciones diferenciales algebraicas (EDAs).

A) Dymola

Dynamic Modeling Languaje (Dymola) de Elmqvist (1978), fue un esfuerzo primitivo para ayudar al modelo físico. Actualmente utiliza el lenguaje Modelica y es deseado para el modelado de muchos dominios tales como circuitos eléctricos, sistemas termodinámicos, procesos químicos, sistemas de control, etc. Ofrece una librería para todos los dominios tecnológicos en lo que es aplicable. Para la mejor comprensión del sistema, los submodelos y sus conexiones están representados por iconos. 

B) Bond Graphs 

Bond graphs es dirigida a gráficas en donde los subsistemas son nodos y los flujos de energía en el sistema es presentados por ramas [Karnopp y Rosenberg (1968)]. Una de las ventajas de Bond Graphs es que puede pasar fácilmente de un dominio a otro a través de los elementos Transformer y Gyrator. Además se puede modificar fácilmente el modelo de un sistema añadiendo y/o quitando elementos. Algunos de los programas disponibles son los siguientes: - Bond Graphs Simulation Program (BGSP) del laboratorio de Ingeniería Mecánica del Ministerio de Comercio e Industria de Japón. Es un programa de solución basado en Bond Graphs. Necesita de un programa externo para resolver numéricamente las ecuaciones de estado. - 20-SIM fue desarrollado en la universidad de Twente, Holanda. Con este programa se puede simular el comportamiento de sistemas dinámicos tales como sistemas eléctricos, mecánicos e hidráulicos o cualquier combinación de estos sistemas. Se puede entrar al modelo en una forma gráfica por medio de un editor gráfico. Ofrece un modelado, simulación y entorno de análisis para sistemas de ingeniería que apoya a la jerarquía del modelo que utiliza diferentes lenguajes en cada elemento. Puede trabajar con Bond Graphs multipuerto, con diagrama de bloques, diagrama iconos y con ecuaciones escritas en SIDOPS+. El programa se divide en dos partes, con la primera se introduce el modelo y se compila y con la segunda se realizan experimentos sobre el modelo. En el último caso, el usuario tiene la posibilidad de escoger el algoritmo de integración.

Comentarios

Entradas populares de este blog

Metodologías para análisis de riesgos

Metodología OCTAVE