SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

47
Expositor: Raymundo Cordero García Centro de Investigaciones Eléctricas - Electrónicas del Perú Laboratório de Inteligência Artificial, Eletrônica de Potência e Eletrônica Digital / DEL / UFMS / Brasil Expositor: Raymundo Cordero G. [email protected] http://tech.groups.yahoo.com/group/CIEEP-PERU SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ENSEÑANZA DE CONTROL

Transcript of SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Page 1: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Expositor:

Raymundo Cordero García

Centro de Investigaciones

Eléctricas - Electrónicas

del Perú

Laboratório de Inteligência Artificial,

Eletrônica de Potência e Eletrônica

Digital / DEL / UFMS / Brasil

Expositor:

Raymundo Cordero G. [email protected]://tech.groups.yahoo.com/group/CIEEP-PERU

SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ENSEÑANZA DE CONTROL

Page 2: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

PROPÓSITO

Investigación tecnológica

Empresas, estado

Herramientas:-Equipos -Normas-Conocimiento

Hegemonía socioeconómica

•Revolución industrial

•Era atómica •Producción industrial

Normatividad=

Regulación y desarrollo

El país que no desarrolla tecnología, se vuelve dependiente de otros, pierde campo en el mercado internacional (materia prima vs producto manufacturado).

Page 3: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

CIEEP: PROYECTO DE DESARROLLO TECNOLÓGICO

MéxicoCINVESTAV-Dr. J. Ramirez-Dr. A. Román-Dr. P. Moreno

CanadáU. Waterloo-Dr. C. Cañizares

USALightning Thompson Inc.-Master installer designerIng. L. López

Ressenlaer Polytech. Inst.-MSc. L. Vanfretti

Argentina UTN -Ing. O. Hevia

Perú-Ing. M. Casas -Ing. D. Valenzuela

BrasilUFMS-Dra. K. Collazos -Dr. J. Roel-MSc B. Chuco-MSc W. Rocha

Brasil U. Río de Janeiro-MSc. A. SotoUSP-MSc A. Morales

TurquíaU. Inonu-MSc. E. Sahin

Convenio de desarrollo

CIEEP-BATLAB (Lab. Inteligencia artificial, electrónica digital y electrónica de potencia-UFMS)

Page 4: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

NUESTRO TRABAJO

Nuestros Pilares

-Eficiencia energética -Inteligencia artificial -Enfoque innovador

Principales Herramientas

Software libre: ATP-DRAW, PSAT, InterPSS, SCILAB, OCTAVE.

Investigación y Entrenamiento • Energías renovables:

Optimización de potencia generada.• Sistemas de Potencia:

UPFC, HVDC, monitoreo, FACTS, calidad de energía, distribución, distribución, transmisión eléctrica,máquinas AC y DC.

• Electrónica de Potencia:Conversores DC-DC, DC-AC, AC-DCAVR, PSS, control vectorial.

Page 5: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Importancia del software libre en la ingeniería

Para propósitos prácticos, las herramientas de software libre permiten diseñar, analizar y simular sistemas con resultados confiables sin tener que gastar en licencias. Esto constituye un ahorro económico.

Ya sea para propósitos de laboratorio, publicación de investigaciones, creación de software a distribuir o informes de consultoría, se requiere que el software utilizado cuente con licencia.

Como ingenieros, nos convertimos en diseñadores más que usuarios.

Page 6: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

¿Qué es SCILAB?

Software de análisis numérico y plataforma de desarrollo para aplicaciones en ciencias e ingeniería.

Análogo al MATLAB, cuenta con simulador gráfico: SCICOS

Creación: Francia, 1990

• INRIA: Instituto Nacional de Investigación en Informática y Control.

• ENPC: École Nationale des Pontset Chaussées Espíritu de libertad y orgullo

Page 7: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...
Page 8: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

SCICOS

Page 9: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...
Page 10: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Discusión

Actualmente existe un debate si es que el SCILAB es un auténtico open source,respecto a la distribución comercial de versiones modificadas del software.

Cabe indicar que el FSF (Free Software Foundation) y el OSI (Open Source Iniciative),no son las únicas instituciones que definen las características de un software de código abierto gratuito.

Page 11: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

La Unión Europea, después de un análisis sobre los fundamentos de las licencias de ambas instituciones, lanzó su propia licencia de software libre, el EUPL, lograda después de una exhaustivo análisis en los marcos intelectual y jurídico.http://en.wikipedia.org/wiki/European_Union_Public_Licencehttp://ec.europa.eu/idabc/en/document/6523

Francia también cuenta con su propia definición, plasmada en la familia de licencias CECILL. La licencia del SCILAB, esta realizada sobre la filosofía del CECILL.http://en.wikipedia.org/wiki/CeCILLhttp://www.cecill.info/index.en.html

Page 12: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

¿Quienes le Brindan Soporte?

Consorcio SCILAB: Mantenimiento y actualización del software.

♦ TNI

♦ IFP♦ AXS INGENIERE♦ EDF

♦ CEA♦ DASSAULT AVIATION♦ INRIA

♦ EADS♦ STYREL TECHNOLOGIES♦ CNES

♦ ENPC♦ ECOLE POLYTECHNIQUE♦ THALES

♦ KLIPPEL♦ ECOLE CENTRALE PARIS♦ ENGNET

♦ ARTENUM♦ ESTEREL TECHNOLOGIES♦ APPEDGE

♦ SCALEO CHIP♦ ANAGRAM TECHNOLOGIES♦ MANDRIVA

♦ ATMEL-ROMA♦ PSA PEUGEOT CITROËN♦ RENAULT

Page 13: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

¿Qué nos Permite el SCILAB?• Operaciones aritméticas y lógicas básica.• Gráficos en 2D, 3D y animaciones.• Álgebra lineal.• Polinomios y funciones racionales.• Resolución de sistemas de ecuaciones diferenciales.• Control clásico, robusto, optimización LMI.• Procesamiento digital de señales.• Estadística.• Interface con Fortran, C, C++, Java y LabVIEW.• SCICOS: simulación en diagrama de bloques.• Librerías de control, DSP, ANN, Fuzzy, etc.

Page 14: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Teoría de Control con SCILAB

Ya sea mediante comandos textuales o por simulación en bloques, se puede realizar simulaciones análogas al MATLAB.

G(s) = 25/(s^2+4s+25)

Page 15: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

MATLABSCILAB

Diagrama de Bode

G(s) = 25/(s^2+4s+25)

Page 16: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

MATLABSCILAB

Diagrama de Nyquist

G(s) = 25/(s^2+4s+25)

Page 17: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

MATLABSCILAB

Lugar de Raíces

G(s) = 25/(s^2+4s+25)

Page 18: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Control PID

Page 19: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Control

PID

Page 20: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo Invertido

El modelo de péndulo invertido es un ejemplo clásico de control no lineal y tiene múltiples aplicaciones: desde control de misiles, biomecánica de la marcha, balance y postura humana.

En el modelo, las variables están altamente acopladas.

Modelamiento del sistema:

http://www.ib.cnea.gov.ar/~control2/Links/Tutorial_Matlab_esp/invpen.html

Page 21: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo InvertidoEcuaciones del péndulo

function [xdot]=ivpd(t,x)//ydot=ivpd(t,y) non linear equations of the pendulum// y=[x;d(x)/dt,teta,d(teta)/dt].g=9.81;u=0qm=mb/(mb+mc)cx3=cos(x(3))sx3=sin(x(3))d=4/3-qm*cx3*cx3xd4=(-sx3*cx3*qm*x(4)**2+2/(mb*l)*(sx3*mb*g-qm*cx3*u))/d//xdot=[x(2);

(u+mb*(l/2)*(sx3*x(4)**2-cx3*xd4))/(mb+mc);x(4);xd4]

Page 22: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo InvertidoLinealización del sistema

--> x0=[0;0;0;0];u0=0;--> [f,g,h,j]=lin(pendu,x0,u0);--> pe=syslin('c',f,g,h,j);ssprint(pe)

| 0 1 0 0 | | 0 |. | 0 0 -0.7178049 0 | | 0.9756098 |x = | 0 0 0 1 |x + | 0 |u

| 0 0 52.639024 0 | |-4.8780488 || 1 0 0 0 | | 0 |

y = | 0 0 1 0 |x + | 0 |u

Page 23: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo InvertidoLinealización del sistema

--> f1=[0 1 0 0--> 0 0 -3*mb*9.81/m 0--> 0 0 0 1--> 0 0 6*(mb+mc)*9.81/(m*l) 0];--> g1=[0 ; 4/m ; 0 ; -6/(m*l)];--> h1=[1 0 0 0--> 0 0 1 0];--> norm(f-f1,1)+norm(g-g1,1)+norm(h-h1,1)+norm(j,1)ans =

3.934D-15

El error entre el cálculo del SCILAB y el teórico es despreciable

Page 24: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo InvertidoControlabilidad y observabilidad--> spec(f)ans =

! - 7.2552756 !! 7.2552756 !! - 3.081D-16 + 1.159D-08i !! - 3.081D-16 - 1.159D-08i ! sistema inestable--> n=contr(f,g) sistema controlablen =

4.--> m1=contr(f',h(1,:)') theta observablem1 =

4.

Page 25: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo InvertidoSe crea controlador y observador basado en método de ubicación de polos

to=0.1; //

k=ppol(f',h',-ones(4,1)/to)' //observer gain

k = ! 20. 0. !

! 100. - 0.7178049 !

! 0. 20. !

! - 1.619D-13 152.63902 !

kr=ppol(f,g,-ones(4,1)/to) //compensator gain

kr = ! - 208.97044 - 83.588175 - 175.58509 - 24.917635 !

Page 26: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo InvertidoSistema completo: péndulo-observador-controlador

Page 27: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Ejemplo: Péndulo InvertidoEstabilidad del nuevo sistema

spec(pr(2))

ans = ! - 10.003858 !

! - 9.9999983 + 0.0038563i !

! - 9.9999983 - 0.0038563i !

! - 9.9961453 !

! - 10. !

! - 9.9999997 !

! - 10. !

! - 9.9999997 !

Todos los autovalores están en el semiplano izquierdo: El sistema es estable.

Page 28: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Aplicación para RENAULT

Sistema de control de motor de inyección.

Page 29: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Redes Neuronales

ANN-TOOLBOX

HYDROGR

Entrée 1

Entrée 2

Entrée 3

Sortie 1

Couche cachée

Fonction d’activation sigmoïde

Biais

Biais

Biais

BiaisCouche d’entrée Couche de sortie

Biais

Page 30: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Lógica Difusa

Librería FISLAB

Page 31: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Control en Tiempo Real:

RTAI

Page 32: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Control entiempo real:

RTAI

Page 33: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Control Robusto

Parte de la teoría de control que explícitamente maneja la incertidumbre en el diseño de controladores.

Pueden lidiar con pequeñas variaciones entre el sistema real y el modelo nominal usado.

http://www.ece.cmu.edu/~koopman/des_s99/control_theory/

Page 34: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Técnicas de Control Robusto

•Control adaptativo: Observadores por cada variable de estado, cuyos parámetros están siendo continuamente actualizados.

•H2 y Hinfinito: Técnicas en el dominio de la frecuencia. H2 busca limitar la ganancia de potencia del sistema, mientras que Hinfinito, la ganancia de energía. Ambos determinan que se trabaja en zonas inestables.

• Lyapunov: las funciones de Lyapunov (descritas como funciones de energía), modelan el sistema. Éstas son evaluadas y se verifica si la primera derivada muestra una ganancia de energía.

• Lógica Difusa: aproximación al pensamiento humano aproximado. No requiere de modelos matemáticos complejos del sistema.

Page 35: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Filtro de KalmanEl filtro de Kalman es un algoritmo desarrollado por Rudolf E. Kalman que sirve para poder estimar el estado oculto (no medible) de un sistema dinámico lineal, aún si está sometido a ruido blanco aditivo.

http://iaci.unq.edu.ar/Materias/Cont.Digital/Apuntes/ApuntePagina/20-Filtro_de_Kalman.pdf

Page 36: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Modelamiento de sistemas complejo

N-péndulo

Page 37: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Otras aplicacionesCircuitos eléctricos: rectificador

Page 38: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Otras aplicacionesCircuitos eléctricos: rectificador

Page 39: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Otras aplicacionesControl de planta termohidráulica

Page 40: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Otras aplicacionesControl de planta termohidráulica

Page 41: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...
Page 42: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Modelo: SimPower System del MATLAB

Page 43: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

SCILAB

Velocidad mecánica

MATLAB

Page 44: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Torqueelectromagnético

MATLAB

SCILAB

Page 45: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Opiniones

Page 46: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Opiniones

Page 47: SCILAB: HERRAMIENTA DE CÓDIGO ABIERTO EN LA ...

Conclusiones

SCILAB representa una alternativa poderosa para la simulación y análisis de sistemas dinámicos.

El soporte que se le da, más las contribuciones a nivel mundial, permiten contar con una herramienta en el campo del aprendizaje e investigación.