Páginas

Mostrando las entradas con la etiqueta auto. Mostrar todas las entradas
Mostrando las entradas con la etiqueta auto. Mostrar todas las entradas

jueves, 22 de noviembre de 2012

[AUTOMATIZACIÓN] Tarea 7 de Laboratorio.

Para esta ultima entrada de laboratorio se escogió un problema del libro de la compañera Cecilia (cuyo nombre no recuerdo), el problema P11.26 dice:

Considerar el sistema de tercer orden

Verificar si el sistema es observable. Si lo es, determinar la matriz de ganancia del observador que se requiere para situar los polos en:

Primero que nada identificamos las matrices:

A:






B:





C:



D es 0.

Primero necesitamos saber si el sistema es observable. Se dice que el sistema es observable si la matriz de observabilidad tiene un rango = n y su determinante es diferente de 0.

Mediante el uso de Octave se puede obtener tal matriz con la función "obsv(A, C)".

Se incluyen las matrices A y C y se obtiene la matriz de observabilidad:


Ahora se obtiene su rango con la función "rank(m)" donde "m" es una matriz, aunque al ser un sistema de tercer orden se sabe que su rango es 3, se incluye la comprobación:

Y ahora se obtiene su determinante mediante la función "det(m)" donde "m" es una matriz, recordando un poco, el determinante debe ser diferente de 0:

Se sabe que el sistema es observable, y ahora se determinará la matriz de ganancia del observador "Le".

Se escribe un vector "S" con los lugares de los polos, y mediante la función "place(sys, p)" de octave se encuentra la matriz "Le" del observador, donde "sys" es nuestro sistema (matrices "A" y "C") y "p" es el vector de los lugares de los polos deseados (matriz "S"):

La matriz de ganancia del observador es:


Fuentes:

jueves, 15 de noviembre de 2012

[AUTOMATIZACIÓN] Espacio de estados a función de transferencia

Para la penúltima semana de laboratorio realizaré el ejercicio 11.11 el cual consiste en lo siguiente:

Dada la siguiente expresión, obtenga la función de transferencia utilizando MATLAB (Octave):
Ya que es algo que hemos hecho muchas veces, explicaré los pasos que se hacen para obtener el resultado.

Primero que nada hay que identificar las matrices.

La matriz A:








La matriz B:












La matriz C:







En este caso D = 0.

Ahora que ya tenemos las matrices procedemos a obtener (sI-A):






A la vez obtenemos el determinante de la matriz que será nuestro denominador:






Se obtiene la inversa de (sI-A):











Ahora se coloca en la forma de la funcion de transferencia que es: H(s) = (C * inversa(sI-A) * B)/determinante:

Y finalmente se resuelve obteniendo:

Ahora muestro una captura del mismo problema hecho con Octave:



Referencias:

Transformation: Transfer Function ↔ State Space
State Space representation -Wikipedia, the free encyclopedia

Conversion Between State Space and Transfer Function Representations in Linear Systems – I
State Space to Transfer Functions - YouTube

martes, 6 de noviembre de 2012

[AUTOMATIZACIÓN] Resumen

Modeling and Control of Formations of Nonholonomic Mobile Robots

El documento anterior habla sobre la forma de controlar formaciones de robots móviles usando métodos de teoría de control no lineal y teoría de grafos. Centrándose principalmente en robots no holonómicos (robots que no son capaces modificar su dirección instantáneamente) dividiendo el tema en:
  1. Controlar un robot de dirección simple.
  2. Controlar robots seguidores en un pequeño grupo.
Introducción

Dependiendo de la situación, las leyes de control se basan en el seguimiento de la posición y orientación de el robot relativamente más cercano a ser el líder (el que va adelante) o a los 2 robots lideres (l - v y l - l respectivamente).

Otros temas que se abordan:
  1. Como escoger un grafo de control y la forma deseada sobre la base de las restricciones en el medio.
  2. Como planear cambios dependiendo de las limitaciones de los sensores.
  3. Como permitir formaciones que se dividen en subformaciones dando lugar a múltiples robots lideres.
Forma en que se comportan los robots ante un cambio en la formación.

Se modelaron equipos de robots como (g, r, H) donde g representa la posición y orientación del robot líder, r son variables de forma que describen las posiciones de los otros robots del equipo, H es el grafo de control que describe el comportamiento actual del equipo.

Leyes de control para variables de forma

En principio se mantienen leyes básicas donde cada robot solo esta programado para seguir a su líder o lideres. Esto es mostrado en la siguiente imagen.

Para el caso donde solo hay un líder (l - v), las coordenadas del robot seguidor se pueden escribir como:
Para el caso de varios lideres (l - l) es similar salvo unos cambios:

Estas sirven para mantener una longitud deseada entre líder o lideres y seguidor. Mediante sensores de distancia y métodos de control de se localizan los robots lideres y realizan el movimiento mediante formulas dadas por:

Donde  Y  son las velocidades lineales y angulares del centro de cada robot.

Transiciones en formaciones

En estas transiciones se manejan 3 constantes que describen la formación de robots:
  • Cada robot vértice, excepto aquellos con un borde entrante, hay al menos un robot sin borde entrante y al menos un borde saliente. Este es el robot principal.
  • Cada arista dirigida en el dígrafo va desde el vértice inferior hasta el superior.
  • El número de bordes entrantes para cualquier vértice Ri (i> 1) es menor o igual a un entero p <= dim (SE (N)), que describe el número de variables de salida para un robot dado.
Conclusiones

El documento en general habla solamente del proceso y la forma en que los robots se comunican para dar a conocer su posición y que mediante el algoritmo de formación se puedan acomodar y así evitar chocar con obstáculos.

Se requiere teoría de control para manejar la entrada de los sensores y la salida expresada en función del movimiento realizado, ya sea utilizando una formación u otra, y la manera de detectar los lideres de la formacion.

Ya que los robots realizan movimientos sencillos, los lideres siempre estan en movimiento, mientras que los seguidores siempre esperan a que pasen estos. Esto tambien se decide mediante teoría de control, en base a la posicion, los obstaculos y si hay un lider al frente, se decide cuanto tiempo hay que esperar para que el pase si no se es lider.

miércoles, 31 de octubre de 2012

[AUTOMATIZACIÓN] Función Nyquist

Para esta semana de laboratorio se pide un problema del libro de control, yo escogí el problema 8.8, consiste en buscar las coordenadas polares de una funcion de transferencia de lazo abierto.

La función es:

Para las condiciones:

Para esto se dibujará un diagrama de Nyquist. El Diagrama de Nyquist es básicamente un gráfico de G(j*w) donde G(s) es la función de transferencia a lazo abierto y w es un vector de frecuencias que encierra todo el semiplano derecho. Las frecuencias positivas y negativas (desde cero a infinito) se tienen en cuenta para dibujar el Diagrama de Nyquist.

Para la primera condición utilizé los siguientes valores:

s = tf("s")

T = 0.4

Ta = 1.2

Tb = 0.5

K = 0.1
Para esta condición se graficó lo siguiente:

Para la segunda condición se usan los siguientes datos:

s = tf("s")

T = 2

Ta = 0.5

Tb = 1

K = 1

Y se obtiene la siguiente gráfica:


martes, 30 de octubre de 2012

[AUTOMATIZACIÓN] Pruebas de estabilidad

Para esta semana se encargo hacer pruebas a la función de transferencia de nuestro sistema.

La función utilizada para estas pruebas fue:

El código para las pruebas es:


function pruebas( num, den )

sys = tf( num, den )

t = 0:10:1000

u = []

for i = 1:length(t)
u = [u,rand]
endfor

figure(1)
rlocus(sys)
figure(2)
nyquist(sys)
figure(3)
impulse(sys)
figure(4)
step(sys)
figure(5)
lsim(sys,u,t)

endfunction

Para la prueba de raices:


Para la prueba de muestreo de Nyquist:


Para el impulso:

Calcula la evolución sistema ante un impulso en la entrada Si no se solicitan los parámetros de salida, se hace la representación de las salidas frente al tiempo.


Para el escalon:

Calcula la evolución de las distintas del sistema ante un escalón en la entrada.


Para lsim:

Cada una de la filas del vector u representa el valor de cada una de las entradas al sistema en los instantes indicados por t (por lo que la longitud de t ha de ser igual al número de columnas de u). lsim calcula la evolución de las salidas y estados del sistema sys ante dichas entradas.


jueves, 18 de octubre de 2012

[AUTOMATIZACIÓN] Root locus

Para esta semana de laboratorio se encargó realizar una de las actividades del libro, yo escogí la actividad B.6.9 la cual dice así:

Dibuje los lugares de las raíces para el sistema de control en lazo cerrado con:

         
Localice los polos en lazo cerrado sobre los lugares de las raices de modo que los polos dominantes en lazo cerrdo tengan un factor de amortiguamiento igual a 0.5. Determine el valor correspondiente de la ganancia K.


Los polos dominantes (rojo) son:

s = 0
s = +/- 2.6 aprox

La ganancia K es:

K = 1

Los ceros (verde) estan en:

s = -9

martes, 9 de octubre de 2012

[AUTOMATIZACIÓN] Diagrama de Bloques

Para esta semana se encargó hacer el diagrama de bloques de la funcion de transferencia.

Modifique la salida de mi funcion en la entrada anterior. De esta manera estoy utilizando la ley de einfriamiento de Newton para mi entrada, para mi salida utilizaré la formula de velocidad angular.

Recordando un poco, la formula de la ley de enfriamiento de Newton es así:

Y de esta manera queda despues de aplicarle transformadas de laplace:

La formula de velocidad angular describe la velocidad de rotación de el ventilador. Para esta función queda de la siguente manera:

Y quedando la función de transferencia así:
 Ahora creare el diagrama de bloques de la función:

jueves, 20 de septiembre de 2012

[AUTOMATIZACIÓN] Función de Transferencia (laboratorio)

Para esta semana en el laboratorio nos repartimos los problemas del libro y seleccione el 3.22:

Obtenga la función de transferencia Eo(s)/Ei(s) del circuito con amplificador operacional.

Se tienen dos impedancias, Z1 que corresponde a R1+1/Cs y Z2 que corresponde a R2.

La función de transferencia se puede escribir así:

Eo(s) queda de la siguiente manera:

Y Ei(s) queda así:

La función de transferencia queda de la siguiente manera: