scilab: herramienta de cÓdigo abierto en la
TRANSCRIPT
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
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).
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)
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.
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.
¿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
SCICOS
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.
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
¿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
¿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.
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)
MATLABSCILAB
Diagrama de Bode
G(s) = 25/(s^2+4s+25)
MATLABSCILAB
Diagrama de Nyquist
G(s) = 25/(s^2+4s+25)
MATLABSCILAB
Lugar de Raíces
G(s) = 25/(s^2+4s+25)
Control PID
Control
PID
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
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]
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
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
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.
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 !
Ejemplo: Péndulo InvertidoSistema completo: péndulo-observador-controlador
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.
Aplicación para RENAULT
Sistema de control de motor de inyección.
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
Lógica Difusa
Librería FISLAB
Control en Tiempo Real:
RTAI
Control entiempo real:
RTAI
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/
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.
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
Modelamiento de sistemas complejo
N-péndulo
Otras aplicacionesCircuitos eléctricos: rectificador
Otras aplicacionesCircuitos eléctricos: rectificador
Otras aplicacionesControl de planta termohidráulica
Otras aplicacionesControl de planta termohidráulica
Modelo: SimPower System del MATLAB
SCILAB
Velocidad mecánica
MATLAB
Torqueelectromagnético
MATLAB
SCILAB
Opiniones
Opiniones
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.