control y optimizacion
DESCRIPTION
control y optimizacionTRANSCRIPT
ModeladoAnálisisControl
Observadores
Optimización y Control
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
Escuela de Ingeniería Aeronáutica y del EspacioPrograma: Grado en Ingeniería Aeronáutica
Curso 2011-2012Ejemplo: Marcelino. El robot equilibrista
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
Index1 Modelado
DescripciónEcuaciones del sistemaLinealización
2 AnálisisEstabilidadRespuesta
3 ControlControlabilidadRespuesta simuladaPole placementLinear Quadratic Regulator
4 ObservadoresObservadoresFiltro de Kalman
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
Outline
1 ModeladoDescripciónEcuaciones del sistemaLinealización
2 AnálisisEstabilidadRespuesta
3 ControlControlabilidadRespuesta simuladaPole placementLinear Quadratic Regulator
4 ObservadoresObservadoresFiltro de Kalman
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
Proceso de diseño
Modelo dinámico no
lineal
Modelo dinámico lineal
Trimado y Linealización
Sistema real
Ensayos
Técnicas analíticas
Controlador lineal
Controlador No lineal
Técnicas de diseño de controladores lineales
Técnicas de diseño de controladores no lineales
Especificaciones de diseño
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
MARCELINO
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
ESQUEMATICAMENTE
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
PARÁMETROS
g = 9,8 Aceleración de la gravedad (m/s2).m = 0,03 Peso de la rueda (kg).R = 0,03 Radio de la rueda (m).Jw = m.R2/2 Momento de inercia de la rueda (kg.m2).M = 0,6 Peso del robot (kg).W = 0,14 Ancho del robot (m).D = 0,04 Espesor del robot (m).H = 0,144 Altura del aparato (sin ruedas) (m).L = H/2 Distancia del centro de masas al eje de las ruedas (m).Jψ = M(H2)/3 Momento de inercia de cabeceo (kg.m2).Jm = 10−5 Momento de inercia del DC motor (kg.m2).Rm = 6,69 Resistencia eléctrica del DC motor (Ω)
Kb = 0,468 Constante del motor (V.s/rad).Kt = 0,317 Constante de par del motor (N.m/A).fm = 0,0022 Coeficiente de fricción entre el motor y el aparato.
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
Outline
1 ModeladoDescripciónEcuaciones del sistemaLinealización
2 AnálisisEstabilidadRespuesta
3 ControlControlabilidadRespuesta simuladaPole placementLinear Quadratic Regulator
4 ObservadoresObservadoresFiltro de Kalman
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
RELACIONES GEOMÉTRICAS
Traslación del eje de las ruedas:
(x , z) = (Rθ,R) (x , z) =(
Rθ,0)
Traslación del cuerpo (CG):
(xb, zb) = (x + L sinψ, z + L cosψ) = (Rθ + L sinψ,R + L cosψ)
(xb, zb) =(
Rθ + Lψ cosψ,−Lψ sinψ)
Rotaciones:Ruedas: θ Cuerpo: ψ Motor: θm = θ − ψ
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
ENERGÍAS
Energía cinética de traslación:
T1 = 212
m(x2 + z2)+ 1
2M(x2
b + z2b)
Energía cinética de rotación:
T2 = 212
Jw θ2 +
12
Jψψ2 + 212
Jm(θ − ψ)2
Energía potencial:
U = 2mgz + Mgzb
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
ECUACIONES DE LAGRANGE
Lagrangiano:L = T1 + T2 − U
Ecuaciones de Lagrange:
d
dt
(∂L
∂θ
)−∂L
∂θ= Fθ
d
dt
(∂L
∂ψ
)−∂L
∂ψ= Fψ
Derivando:[(2m + M) R2 + 2Jw + 2Jm
]θ + (MLR cosψ − 2Jm) ψ − MLRψ2 sinψ = Fθ
(MLR cosψ − 2Jm) θ +(
ML2 + Jψ + 2Jm)ψ − MgL sinψ − ML2
ψ2 sinψ cosψ = Fψ
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
MOMENTOS: MODELADO DEL MOTOR DC
V = Rmi + L ddt i + e siendo e = Kbθm
En el equilibrio: ddt i(t) = 0⇒ i = V
Rm− Kb θm
Rm
Par efectivo del motor: T = Kt i − fmθm. En el equilibrio:
T = Kt VRm− Kt Kb θm
Rm− fmθm = αV −β(θ− ψ) α = Kt
Rmβ = Kt Kb
Rm+ fm
Fuerzas generalizadas: Fθ = −Fψ = 2T = 2(αV − β(θ − ψ))
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
SISTEMA COMPLETO
Vector de estado: X = θ, θ, ψ, ψ
Vector de control: U = V
Ecuaciones:
[(2m + M) R2 + 2Jw + 2Jm
]θ + (MLR cosψ − 2Jm) ψ − MLRψ2 sinψ = 2(αV − β(θ − ψ))
(MLR cosψ − 2Jm) θ +(
ML2 + Jψ + 2Jm)ψ − MgL sinψ − ML2
ψ2 sinψ cosψ = −2(αV − β(θ − ψ))
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
MATLAB: SISTEMA DINÁMICO
function XD = IGPwayNL( XV, UV )
% Ponemos a cada variable su nombre para entender mejor las ecuacionestheta=XV(1);thetadot=XV(2);psi=XV(3);psidot=XV(4);
V=UV;
%% VALOR DE LOS PARAMETROS DEL SISTEMAg = 9.81;m = 0.03;R = 0.04;Jw= m * R^2/2.0;M = 0.6;W = 0.14;D = 0.04;Hs = 0.144;L = Hs/2.0;Jpsi = M*Hs^2 /3;Jm = 1E-5;Rm = 6.69;Kb = 0.468;Kt = 0.317;fm = 0.0022;
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
MATLAB: SISTEMA DINÁMICO II
%% MATRICESalpha = Kt/Rm;beta = (Kt*Kb)/Rm + fm;
E = zeros(2); % Vector de ceros para no usar dimension dinámicaE(1,1) = (2*m+M)*R^2 + 2*Jw + 2*Jm;E(1,2) = M*L*R*cos(psi) - 2*Jm;E(2,1) = M*L*R*cos(psi) - 2*Jm;E(2,2) = M*L^2 + Jpsi + 2*Jm;
F = zeros(2,1); % Vector de ceros para no usar dimension dinámicaF(1,1) = M*L*R*psidot^2*sin(psi)+2*alpha*V-2*beta*(thetadot-psidot);F(2,1) = M*g*L*sin(psi)-M*L^2*psidot^2*sin(psi)*cos(psi)-2*alpha*V+2*beta*(thetadot-psidot);
%% SISTEMA% E*(thetadotdot; Psidotdot) = F
temp=E\F; % despejar derivadas segundas
%% SALIDAXD = zeros(4,1); % Vector de ceros para no usar dimension dinámica
XD(1) = thetadot;XD(2) = temp(1);XD(3) = psidot;XD(4) = temp(2);
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
MATLAB: SISTEMA EN BUCLE ABIERTO
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
Outline
1 ModeladoDescripciónEcuaciones del sistemaLinealización
2 AnálisisEstabilidadRespuesta
3 ControlControlabilidadRespuesta simuladaPole placementLinear Quadratic Regulator
4 ObservadoresObservadoresFiltro de Kalman
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
TRIMADO
trim Solves for steady-state parameters that satisfy certain input,output and state conditions.
[X,U,Y,DX]=trim(’SYS’)
Set the state derivatives, DX, of the system ’SYS’ to zero. trim uses aconstrained optimization technique.
[X,U,Y,DX]=trim(’SYS’,X0,U0,Y0,IX,IU,IY)
Fixes X, U and Y to X0(IX), U0(IU) and Y0(IY). The variables IX, IUand IY are vectors of indices. If IX is not empty, but does not includeall the states, then the states not indexed in IX are free to vary.Similarly, if IU is not empty and does not include all the inputs, thenthe inputs omitted from IU are free to vary.
[X,U,Y,DX]=trim(’SYS’,X0,U0,Y0,IX,IU,IY,DX0,IDX)
Added continuous derivatives indexed by IDX to DX(IDX). Derivativesnot indexed are free to vary.
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
TRIMADO DE MARCELINO
>> [Xtrim,Utrim,Ytrim,DXtrim]=trim(’IGPwayNL’)
Warning: Using a default value of 0.02 for maximum step size. The simulationstep size will be equal to or less than this value. You can disable thisdiagnostic by setting ’Automatic solver parameter selection’ diagnostic to’none’ in the Diagnostics page of the configuration parameters dialog
Xtrim = 1.0e-18 *0.0033
-0.00000.1536
-0.0003
Utrim = -9.7430e-19
Ytrim = 1.0e-18 *0.0033
-0.00000.1536
-0.0003
DXtrim = 1.0e-15 *-0.0000-0.1788-0.00000.0636
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
LINEALIZACIÓN
linmod Obtains linear models from systems of ord. diff. equations(ODEs).
[A,B,C,D]=linmod(’SYS’)
Obtains the state-space linear model of the system of ordinarydifferential equations described in the block diagram ’SYS’ when thestate variables and inputs are set to the defaults specified in the blockdiagram.
[A,B,C,D]=linmod(’SYS’,X,U)
Allows the state vector, X, and input, U, to be specified. A linearmodel will then be obtained at this operating point.
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
LINEALIZACIÓN
[A,B,C,D]=linmod(’IGPwayNL’,Xtrim,Utrim)
A = 0 1.0000 0 00 -83.2381 -137.5394 83.23810 0 0 1.00000 26.2342 90.5119 -26.2342
B = 0161.8068
0-50.9968
C = 1 0 0 00 1 0 00 0 1 00 0 0 1
D = 0000
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega
ModeladoAnálisisControl
Observadores
DescripciónEcuaciones del sistemaLinealización
LINEALIZACIÓN
>> C=[0 0 1 0];>> D=0;>> IGPwayLIN=ss(A,B,C,D);>> minreal(IGPwayLIN)1 state removed.
a = x1 x2 x3x1 -83.24 -137.5 83.24x2 0 0 1x3 26.23 90.51 -26.23
b = u1x1 161.8x2 0x3 -51
c = x1 x2 x3y1 0 1 0
d = u1y1 0
Continuous-time state-space model.
Ignacio Delgado, Ignacio Gómez, J. M. Perales, J. M. Vega