Introducción a EL: COMPONENTES  Son los elementos de modelado más importantes. Permiten modelar mediante ecuaciones continuas, discretas e incluir sentencias.

Slides:



Advertisements
Presentaciones similares
Capítulo 2 Algoritmos.
Advertisements

Álgebra de Boole El álgebra booleana es un sistema matemático deductivo centrado en los valores cero y uno (falso y verdadero). Un operador binario " º.
Lenguajes de Descripción de Hardware
Lenguaje C++.
Programación de Computadores
SENTENCIAS SECUENCIALES
Lenguaje PHP Capítulo 4.
Circuitos Digitales II
Desarrollo de Aplicaciones para Internet
Técnico en programación de Software
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
Tema 2: Lenguaje PHP básico
1.2 Sintaxis del lenguaje Java.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
3. INTRODUCCIÓN A LA PROGRAMACIÓN
Estructuras de control
ESTRUCTURAS DE SECUENCIA
VISUAL BASIC CONSOLA Todas las ordenes o instrucciones se digitan dentro de sub Main() y End Sub ÁREA DE TRABAJO: Las aplicaciones de consola son aquellas.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA CUATRO OPERADORES JAVA.
UNIVERSIDAD DE MANAGUA I CUATRIMESTRE INTRODUCCION A LA PROGRAMACION
Sesión 6 Sentencias de Repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Características de “C”
LÓGICA - DECISIONES Los valores lógicos: constantes, variables y expresiones lógicas, permiten controlar la ejecución de las sentencias de un programa.
Electrónica Digital.
Numeric Types, Expressions, and Output
TIPOS Y ESTRUCTURAS BÁSICAS DE DATOS
Tema 1: Lenguaje PHP básico Ing. Tulio Nel Benavides Peña
ALGEBRA DE BOOLE SISTEMAS DIGITALES.
Control de flujo: Bucles
Variables y Shapes. Variables ► Lugares de la memoria que reciben un nombre ► En VB no es necesario declarar las variables  A=8 ► Se declaran con Dim.
Sintaxis.
Java. Java nació el año 1991, por un par de ingenieros de la Sun Microsystems.
Others, soporte para síntesis. Los agregados tienen la habilidad de usar la sentencia others, la cual asignará un valor a todos los otros elementos de.
Agosto 2010Programación I - Tipo de Datos1 Programación I Prof. Adjunto: Lic. Jorge O. Scucimarri Universidad Nacional de Luján Licenciatura en Sistemas.
Programación en Pascal
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Diseño lógico combinacional mediante VHDL
El Lenguaje C++. Creación de programas simples de C++ Builder como ejercicios en C++. Los elementos de control fundamentales en C++, incluyendo operadores.
Resumen Fundamentos de Programación/ Programación I
Introducción Electrónica Digital
VBA – Elementos del Lenguaje
Simulación de sistemas dinamicos
Control de Flujo.
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Introducción a VHDL Agenda Un poco de historia Definiciones generales Entidades Arquitecturas Configuraciones.
Departamento de Informática Universidad Técnica Federico Santa María Temas 2,3,4: Estructura de un Programa Pascal Declaraciones Tipos de Datos Simples.
EcosimPro - Generalidades
UNIVERSIDAD TECNICA PERTICULAR DE LOJA
 Un lenguaje se puede definir como un conjunto de palabras y formas de expresión por medio de las cuales se comunican y relacionan miembros de una comunidad.
LA ARQUITECTURA O LA FUNCIONALIDAD DEL SISTEMA DefiniciónDefiniciónDefinición Declaración y reglas sintácticas.Declaración y reglas sintácticas.Declaración.
PRINCIPIOS DE PROGRAMACIÓN
PHP el Lenguaje Ejercicios Básicos.
Circuitos Lógicos 20 septiembre 2010.
Breve introducción al modelado y simulacion de sistemas
“variables , sentencia if y bucles”
TÉRMINOS DE ALGEBRA BÁSICO PRESENTADO POR: TULIO SOTOMAYOR MEDINA I-2014.
Tipos de Datos.
Base de datos Francisco Castro. Creación de una tabla drop table TABLA cascade constraints; /*==============================================================*/
Lic. Carla Aguirre Montalvo
Programación de Computadores
EL TIPO DE DATO LOGICO y constantes.
Unidad-3 Electrónica Digital
Amplificador Operacional y S.C.R.
Décimo Curso de Programación Básica con NQC “Segunda Clase” Cristián Arenas Ulloa Agosto 29 de 2009.
Tema 8: Programación estructurada Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Introducción al Lenguaje C (I) Tipos básicos, arrays y punteros Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión
Tomás García González Universidad Nacional Autónoma de México Facultad de Contaduría y Administración Facultad de Contaduría y Administración Sistema de.
Circuitos Lógicos 20 septiembre ¿Qué son? Son estructuras formales que representan sistemas para la transmisión de información de toda índole (desde.
Transcripción de la presentación:

Introducción a EL: COMPONENTES  Son los elementos de modelado más importantes. Permiten modelar mediante ecuaciones continuas, discretas e incluir sentencias secuenciales.  Normalmente corresponden con un elemento físico: válvula, resistencia, bomba, tubería, etc.  Son los elementos de modelado más importantes. Permiten modelar mediante ecuaciones continuas, discretas e incluir sentencias secuenciales.  Normalmente corresponden con un elemento físico: válvula, resistencia, bomba, tubería, etc.

EL: Un lenguaje textual

Introducción al Lenguaje EL: PORTS

Introducción a EL: COMPONENTES Ejemplo de un componente base (abstracto) que será utilizado posteriormente para definir componentes eléctricos. ABSTRACT COMPONENT TwoPins PORTS IN Electric e_p "Input port” OUT Electric e_n "Output port" DECLS REAL v "voltage ddp (Volts)" TOPOLOGY PATH e_p TO e_n CONTINUOUS e_p.i = e_n.i v = e_p.v - e_n.v END COMPONENT Ejemplo de un componente base (abstracto) que será utilizado posteriormente para definir componentes eléctricos. ABSTRACT COMPONENT TwoPins PORTS IN Electric e_p "Input port” OUT Electric e_n "Output port" DECLS REAL v "voltage ddp (Volts)" TOPOLOGY PATH e_p TO e_n CONTINUOUS e_p.i = e_n.i v = e_p.v - e_n.v END COMPONENT

Introducción a EL: COMPONENTES (Herencia) Permite heredar datos, variables y comportamiento de un antecesor. COMPONENT C IS_A TwoPins DATA REAL C= 1.e-7 RANGE 0, Inf " Capacity (Farads)" CONTINUOUS v'= e_p.i / C --voltage derivative law END COMPONENT Permite heredar datos, variables y comportamiento de un antecesor. COMPONENT C IS_A TwoPins DATA REAL C= 1.e-7 RANGE 0, Inf " Capacity (Farads)" CONTINUOUS v'= e_p.i / C --voltage derivative law END COMPONENT

Introducción a EL: COMPONENTES (Topología) Un componente puede estar formado por la la conexión de varios componentes. COMPONENT circuit TOPOLOGY source s1( ampl=10 ) resistor r1 (1000) capacitor c1 ( 1e-1 ) earth e1 CONNECT s1.po TO r1.pi CONNECT r1.po TO c1.pi CONNECT c1.po TO s1.pi,e1.pi END COMPONENT Un componente puede estar formado por la la conexión de varios componentes. COMPONENT circuit TOPOLOGY source s1( ampl=10 ) resistor r1 (1000) capacitor c1 ( 1e-1 ) earth e1 CONNECT s1.po TO r1.pi CONNECT r1.po TO c1.pi CONNECT c1.po TO s1.pi,e1.pi END COMPONENT

Introducción a EL: COMPONENTES (Parte continua) Esta es la forma de especificar la parte continua de un modelo. COMPONENT pendulum DATA REAL m, L = 1 “mass and length” DECLS REAL x, y, T CONTINUOUS m * x’’ = - T * x / L m * y’’ = m * g - T * y / L x**2 + y**2 = L**2 END COMPONENT Esta es la forma de especificar la parte continua de un modelo. COMPONENT pendulum DATA REAL m, L = 1 “mass and length” DECLS REAL x, y, T CONTINUOUS m * x’’ = - T * x / L m * y’’ = m * g - T * y / L x**2 + y**2 = L**2 END COMPONENT

Introducción a EL : COMPONENTES (Parte Discreta) Esta es la forma de describir los eventos discretos COMPONENT freezer.... DISCRETE WHEN ( tr > -18 ) THEN compressorON= TRUE END WHEN WHEN ( tr < -20 ) THEN compressorON= FALSE END WHEN ASSERT( tr < -60 ) FATAL “Something wrong in tr” Esta es la forma de describir los eventos discretos COMPONENT freezer.... DISCRETE WHEN ( tr > -18 ) THEN compressorON= TRUE END WHEN WHEN ( tr < -20 ) THEN compressorON= FALSE END WHEN ASSERT( tr < -60 ) FATAL “Something wrong in tr”

Introducción a EL: COMPONENTES (INIT) Cuando un componente necesita una inicialización, ésta se realiza en un bloque INIT COMPONENT test DATA REAL x,y,z[3] INIT x= 0.0 FOR (i IN 1,3) z[i]= 0.0 END FOR END COMPONENT Cuando un componente necesita una inicialización, ésta se realiza en un bloque INIT COMPONENT test DATA REAL x,y,z[3] INIT x= 0.0 FOR (i IN 1,3) z[i]= 0.0 END FOR END COMPONENT

Introducción a EL : Ecuaciones Virtuales Permite cambiar la ecuación del padre en la herencia: COMPONENT base REAL REAL x,y CONTINUOUS x= y’ / 2 END COMPONENT COMPONENT test IS_A base CONTINUOUS x= y’ / 3 END COMPONENT Permite cambiar la ecuación del padre en la herencia: COMPONENT base REAL REAL x,y CONTINUOUS x= y’ / 2 END COMPONENT COMPONENT test IS_A base CONTINUOUS x= y’ / 3 END COMPONENT

Introducción a EL : Librerías  Está compuesto por todos los elementos relacionados con una disciplina (eléctrica, hidraulica,...). Pueden incluir Componentes, Ports, funciones, variables...  La instrucción LIBRARY se usa para especificar la librería con la se va a trabajar  La instrucción USE se utiliza para usar componentes (u otros elementos) de otra librería.  Está compuesto por todos los elementos relacionados con una disciplina (eléctrica, hidraulica,...). Pueden incluir Componentes, Ports, funciones, variables...  La instrucción LIBRARY se usa para especificar la librería con la se va a trabajar  La instrucción USE se utiliza para usar componentes (u otros elementos) de otra librería.

Introducción a EL : Librerías EcosimPro incluye librerias de sistema que contiene funciones comunes (sin,cos,log,etc.) LIBRARY THERMAL USE MATH REAL x= PI * R**2 EcosimPro incluye librerias de sistema que contiene funciones comunes (sin,cos,log,etc.) LIBRARY THERMAL USE MATH REAL x= PI * R**2

Introducción a EL : Tipos de datos  Basicos: REAL, INTEGER, BOOLEAN, STRING REAL x, y STRING str= “hello world” BOOLEAN isConnected = FALSE  Tipos enumerados: ENUM chemicals = {N2, H2O, CO2, N2, O2, H2SO4 } SET_OF(chemicals) air = {N2, O2, H2O, CO2} SET_OF(chemicals) water = {H2O}  Basicos: REAL, INTEGER, BOOLEAN, STRING REAL x, y STRING str= “hello world” BOOLEAN isConnected = FALSE  Tipos enumerados: ENUM chemicals = {N2, H2O, CO2, N2, O2, H2SO4 } SET_OF(chemicals) air = {N2, O2, H2O, CO2} SET_OF(chemicals) water = {H2O}

Introducción a EL : Tipos de datos Arrays: REAL v[3] REAL w[3,6,2] ENUM chemicals mix[2]= { H20, O2 } STRING colors[3]= { “red”,”white”,”blue”} Constantes: Una vez declaradas, no se pueden cambiar CONST REAL PI= Variable con rango: Si la variable se sale de rando, el programa de un warning: REAL v RANGE 0.5, 1.5 Arrays: REAL v[3] REAL w[3,6,2] ENUM chemicals mix[2]= { H20, O2 } STRING colors[3]= { “red”,”white”,”blue”} Constantes: Una vez declaradas, no se pueden cambiar CONST REAL PI= Variable con rango: Si la variable se sale de rando, el programa de un warning: REAL v RANGE 0.5, 1.5

Introducción a EL : Variables TIME y TSTOP TIME indica el tiempo actual de simulación TSTOP indica el tiempo final de simulación x= sin(TIME) WHEN( TIME >= (TSTOP / 2 ) ) TIME indica el tiempo actual de simulación TSTOP indica el tiempo final de simulación x= sin(TIME) WHEN( TIME >= (TSTOP / 2 ) )

Introducción a EL : Expresiones Aritmeticas: a * 2 + (c - u) / (x**2) SUM x= SUM(i IN 1,3; inertia[i]) es equivalente a x= inertia[1]+inertia[2]+inertia[3] Relacionales: 2 > ( x - y) Logicas: (x > 9.8 AND n != 7 OR m == 6 ) Aritmeticas: a * 2 + (c - u) / (x**2) SUM x= SUM(i IN 1,3; inertia[i]) es equivalente a x= inertia[1]+inertia[2]+inertia[3] Relacionales: 2 > ( x - y) Logicas: (x > 9.8 AND n != 7 OR m == 6 )

Introducción a EL : Parte continua  Ecuaciones matemáticas: Ecuaciones diferenciales ordinarias y algebraicas: x= 3*y x - 2*z + sin(TIME) = 0 y’’’ + 3*y’ = cos(TIME)  EXPAND: Varias ecuaciones en una sola instrucción EXPAND( i IN 1,2) out_entropy[i]= in_entropy[i] equivalente a: (no confundir con bucle FOR) out_entropy[1]= in_entropy[1] out_entropy[2]= in_entropy[2] (Nota: Cada ecuación es totalmente independiente)  Ecuaciones matemáticas: Ecuaciones diferenciales ordinarias y algebraicas: x= 3*y x - 2*z + sin(TIME) = 0 y’’’ + 3*y’ = cos(TIME)  EXPAND: Varias ecuaciones en una sola instrucción EXPAND( i IN 1,2) out_entropy[i]= in_entropy[i] equivalente a: (no confundir con bucle FOR) out_entropy[1]= in_entropy[1] out_entropy[2]= in_entropy[2] (Nota: Cada ecuación es totalmente independiente)

Introducción a EL : Parte continua  ZONE: permite introducir ecuaciones condicionales X = ZONE( m > 0 ) y + z ZONE( m > 1) y + 2*z OTHERS y  ZONE: permite introducir ecuaciones condicionales X = ZONE( m > 0 ) y + z ZONE( m > 1) y + 2*z OTHERS y