jueves, diciembre 21, 2006
pic para el tuning
Hoy en lo Rodrigo voy a probar si funciona correctamente.
martes, diciembre 12, 2006
PID's
Los bloques internos controlan directamente la salida a los actuadores (Aleron, timon, elevador y acelerador), mientras que los externos se encargan de mantener la altura del avion y de elegir una direccion de vuelo.
Ademas de los bloques PID se tubo que construir en C un modelo de avion lo mas real posible para poder comprobar el correcto funcionamiento del sistema de control.
El desafio para los siguientes dias en lograr modelar nuestro avion para encontrar los parametros de cada bloque PID que optimicen el funcionamiento del aeroplano en cuanto a tiempo de levantamiento y error en estado estable.
Ma;ana Miercoles nos reuniremos con el grupo para definir como proseguimos.
UAV_TEAM ONLINE
Sirve para chatear online desde el blog con una persona que tenga una cuenta meebo.
El user de nuestra cuenta meeboo es "uav_team" el password se los paso por mail.
Los que accedan al blog pueden chatear online con uav_team si este está online o dejar un mensaje en otro caso.
El visitante puede setear un nick temporal en la ventana meebo para que pueda ser identificado.
Es una simple prueba
sábado, diciembre 09, 2006
Integracion del Sistema
Tiene una tapa con 4 tornillos de plastico, y el sistema entra bien.
Para tener una idea de disposicion, tome un poco de cinta de enmascarar y presente los distintos componentes, la idea fue dejar el switch RC lo mas accesible a los servos (por eso se encuentra en la tapa) y el amplificador lo mas cerca a los giroscopos (una vez cerrada queda uno "encima" del otro). La idea fue tambien dejar la bateria dentro de la caja.
Queda un poco de espacio todavia para el segundo receptor y su placa correspondiente (tuning de los loops pid)
viernes, diciembre 08, 2006
Creo que tenemos el Kalman listo
El Kalman anterior que habiamos hecho no tenia una referencia para "resetear" los angulos, el que tenemos ahora si.
Lo que hice fue agregar un Kalman anidado para no aumentar la complejidad del actual (recordar que ya era de 9 estados). Es entonces que arme un kalman de 3 estados el cual resetea los angulos mediante el uso de los accelerometros para theta y phi.
Para el angulo psi (heading) lo que uso es el psi del gps si la velocidad es mayor a 2m/s, de lo contrario uso el estado anterior. Lo de la velocidad es porque si bien el gps me da un angulo de heading, este es valido solamente a ciertas velocidades.
Ya sabemos que lo mejor hubiera sido usar una brujula 3d o algun dispositivo absoluto de angulos. Si bien compramos una brujula (que para la practica resulto ser lenta y un tanto imprecisa), el manejo de la interfaz requeria demasiado tiempo, del cual no disponemos. La otra opcion era comprar un dispositivo, sin embargo los sensores de angulos de 3 ejes andan por los 700 dolares en origen.(mas caro que todo nuestro sistema)
El update de los angulos mediante los accelerometros tiene una contrapartida, y es que durante un giro muy largo o durante un ascenso muy prolongado, las medidas de angulos que obtenemos no son buenas. Sin embargo, se puede hacer que el update por kalman2 (asi le llame a la pequeña funcion) se haga durante ciertos instantes convenientes.
El dispositivo ahora esta andando correctamente en la mesa. Saque el muestreo de 8 veces de los gyros (y el caculo de su media) porque demoraban demasiado los loops. Esto hacia que el paso de tiempo discreto fuera demasiado grande, lo que hacia que el filtro divergiera (creo que es por como calculamos ciertas exponenciales de matrices, precisamos deltaTs chicos, tambien tenemos la integracion por Runge-Kutta). Los deltaTs acutales andan entre 0.01 y 0.02 (ideal 0.01)
Cuando muestreabamos mas, los deltaTs llegaban incluso a 0.9 (era demasiado pedir) lo cual provocaba NAN luego de cierto tiempo.
El sistema como dije esta quieto, Andres Chappe, antes, para mejorar el rendimiento lo movia, lo cual hacia que las medidas variaran mas y su media fuera mas cercana a cero. Esto ya no es necesario; Al momento de escribir esto, acaba de terminar un logueo de 30 minutos. El error en la posicion es menor al metro. El error en los angulos esta en el orden de 0.2 grados.
Ahora lo que falta es subirse al auto y ver que nos da un log del camino.
Hoy es un gran dia :D
lunes, diciembre 04, 2006
Segundo PIC
Para realizar este tuning en forma remota se nos ocurre utilizar una segunda radio con una frecuencia diferente a la de control de vuelo manual. Utilizaríamos 3 o cuatros canales en modo on-off para generar una palabra digital y un canal para generar un valor analógico. La palabra digital identifica a un parámetro de un controlador y el valor analógico se corresponde con el valor que deseamos que tenga el parámtro. Además podemos utilizar un canal on-off para informarle al procesador que la palabra digital y el valor del parámetro están disponibles para leer.
El pic se encargaría de muestrear las salidas PWM del receptor (Rx), generar la palabra digital y el valor analógico correspondiente al valor que deseamos que tenga el parámetro definido por la palabra digital.
Luego el Robostix lee la entrada analógica a través de un ADC y lee la palabra digital y la señal de habilitación a través de los pines de un puerto GPIO (General Purpose Input Output).
Resultados de Kalman
Tenemos un problema de que en determinado momento los valores pasaron a NaN sin previamente percibir un crecimiento sostenido de los mismos, por tanto no parece ser que los datos divergan por un tema de acumulación de errores sino que puede deberse a que en algún cociente se esté produciendo una división por cero.
Vamos a implementar una corrección de los gyros con estimaciones obtenidas a partir de los valores de los acelerómetros. Cuando el vuelo es recto y nivelado a una velocidad constante tenemos que las aceleraciones ax, ay , az son despreciables y por tanto las aceleraciones que sensan los acelerómetros solo tienen las proyecciones de la gravedad.
ax = -g.sin(theta)
ay = g.cos(theta).sin(phi)
az = g.cos(theta).cos(phi)
por tanto:
theta = atan[ -ax/(ay.sin(phi) + az.cons(phi)) ]
phi = atan(ay/az)
Para el caso de psi debemos utilizar el GPS y determinar la dirección de vuelo a partir de dos valores consecutivos.
sábado, diciembre 02, 2006
Resultados de la Calibración
Para filtrar el ruído de las medidas se promediaron las muestras para una velocidad dada.
Las velocidades angulares en grad/sec utilizadas para el experimento fueron las siguientes:
Gráfica de las transferencias:
mV/grad | valor null (mV) | |
giroP | 28.9 | 2169.4 |
giroQ | 28.1 | 2099.1 |
gyroR | 29.5 | 2588.6 |
Calibración de Gyros amplificados
Se modificó la placa de amplificación eliminando el filtro RC de la entrada no inversora, solo se dejó la resistencia de polarización a tierra y se aumentó la ganacia hasta 6.
Por tanto ahora tenemos aproximadamente 30 mV/grad, siendo 2.5 volts el valor correspondiente a velocidad nula.
jueves, noviembre 30, 2006
Switch entre automatico y manual pronto y sin errores
miércoles, noviembre 29, 2006
Switch
La placa anterior hacia bien el switcheo pero el servo por momentos presentaba una perturbación entorno de la posición de control. Se encontró que la salida del PIC estando en nivel alto presentaba una bajada y volvía a subir inmediatamente en forma aleatoria cada 1 sec, 2 sec o hasta 10 sec.
La entrada al PIC proveniente del Ch7 del Rx no estaba buffereada y la señal PWM del ch7 del Rx tiene un VH = 2.8 volts (aprox.) por tanto puede ser que en presencia de ruído, en esta señal, el PIC confunda la entrada interpretando una bajada cuando no lo es.
La nueva placa tiene buffereada la entrada del pic. Se probó en protoboard y funciona correctamente, la salida del PIC no tiene bajada alguna y el servo se mantiene en la posición deseada sin presencia de ruído.
Hoy realizamos el montaje.
Todo listo para calibrar
Hoy la idea es intercalar dicha placa entre la salida del gyro y la entrada al ADC del Robostix. Luego colocar el sistema en el Rotratonic, ponerlo a girar a una velocidad angular conocida y relevar la velocidad angular sensada para luego calibrar
martes, noviembre 28, 2006
Rotatronic
Con el osciloscopio digital se va a medir la cantidad de pulsos que el driver envía al paso a paso, a partir de esto obtenemos la velocidad angular (w=0.036*pasos)
0.036 es la maxima resolucion que el driver ofrece.
Para la calibración se va a colocar op amp no inversores a la salida del los gyros. Ayer se hizo la placa, hoy se hace el montaje.
lunes, noviembre 27, 2006
Calibración de Gyros
Hasta el momento lo que haciamos era colocar el circuito (gyros + robostix + gumstix) sobre una bandeja girando a 33 rpm.
33 rpm = 33* 360 grad / 60 sec = 198 grad/sec
Esta velocidad angular es bastante grande y queremos realizar la calibración a un valor menor.
Para esto estamos armando una plataforma para colocar el circuito que sea movida por un motor con velocidad variable por voltaje. La velocidad será determinada por un tacómetro.
Amplificar los Gyros
El robostix dispone de conversores ADC de 10 bits o sea disponemos de 1024 pasos y tenemos un error de +/- 1 bit.
Cuánto es un error de un bit ?
(5-2.5)volts/1024 pasos = 0.00244140625 volts/paso
2.5 volts = 300 grad/sec => 1 paso = 0.0024414625 volts = 0.29296875 grad/sec
integrando durante un sec : delta_angulo = 0.29296875 grad
El error generado por el ADC es realmente importante? Es siempre positivo?
El rango del gyro es demasiado grande para nuestra aplicación y el conversor está siendo desaprovechado, sólo algunos bits resultan útiles.
Colocando una resistencia externa entre dos pines de salida del gyro se puede modificar el rango. Otra opción es colocar un amplificador a la salida del gyro. De esta forma logramos que el ADC sea mas preciso porque el numero de grad/sec por paso es menor.
Por ejemplo si ahora tenemos
+2.5 volts = 100 grad/sec => 1 paso = 0.09765625 grad/sec
integrando durante un sec: delta_anglo = 0.09765625 grados
Suttner diseño una placa con amplificadores operacionales rail to rail en configuración no inversora de ganacia 3 para colocar a la salida de los gyros.
jueves, noviembre 23, 2006
Mail del Proyecto
SE CREO MAIL DEL PROYECTO PARA QUE CUALQUIERA DE LOS MIEMBROS TENGA ACCESO AL MISMO Y CONCENTRAR LOS MAIL EN UNA SOLA DIRECCION
mail:
uav.amfo1@gmail.com
Tiempo de integración
El problema es que el tiempo de procesamiento estaba superando los 0.01 sec y por tanto la condición "(t2-t1) >= delta_t" siempre se cumplia e inmediatamente se tomaba la nueva muestra. El tiempo entre muestras era variable y por tanto el tiempo de integración no debía ser el prefijado. Se corrigió este error haciendo que el delta_t fuese variable y correspondiese al tiempo entre muestras.
Se probó nuevamente y seguimos con problemas. Luego de mucho rato encontramos que los gyros estando la IMU en reposo varían su salida entre 0.001 y 0.003 rad/sec (siempre positivo). Si se integra cada 1 sec tenemos que el delta_angulo estaría entre 4 y 10 deg. El problema es que los valores son siempre positivos, si la variación fuese aleatoria con media nula no habría problemas pues durante la integración se compensarían estas variaciones dando un valor de salida my próximo a cero.
Hoy vamos a realizar algunas pruebas para determinar por qué sucede esto.
miércoles, noviembre 22, 2006
Datos en tiempo real
Continuamos probando Kalman y tratando de encontrar bugs que hacen que el funcionamiento no sea el esperado.
A fin de poder visualizar los datos de los sensores en tiempo real, Rodrigo implementó una ventana (función window de C) que nos permite visualizar en pantalla las coordenadas de la posición, las velocidades angulares, los ángulos de Euler, las aceleraciones y las velocidades lineales. Antes lo que hacíamos era loguear estos datos cada cierto delta_t en un archivo txt y luego mirar el archivo analizando la secuencia de datos registrados.
Luego de contar con esta herramienta pudimos determinar que tenemos un problema no menor con la salida de los gyros. Cuando rotamos noventa grados la IMU (Inercial Measure Unit) según uno de sus ejes (X,Y o Z) éste debería tomar el valor 90 grados y en pantalla el valor mostrado es 20 grados. Lo bueno es que este comportamiento no depende del ángulo de giro. Al parecer es un problema de escala. Hoy vamos a chequear por que sucede esto.
Hay que tener presente que estos ángulos influyen en los valores de las aceleraciones ya que cuando el eje Z no concide con el vector de gravedad la misma debe proyectarse en cada eje. Luego las aceleraciones influyen en el cálculo de la velocidad y en la posición, por tanto es muy importante que los valores de los ángulos estén correctos.
PLACA SWITCH CASI LISTA
Materiales necesarios
componente | cantidad |
PIC 16F690 | 1 |
BUFFER 74244 | 2 |
MUX 74157 | 2 |
PINES 1X6 | 2 |
PINES 1X3 | 6 |
PINES 1X2 | 3 |
SOCALO 20 PINES | 3 |
SOCALO 16 PINES | 2 |
CONDENSADOR CERAMICO 0.1 microF | 6 |
martes, noviembre 21, 2006
Tuning Online ...

El pic cuenta con 3 puertos de entrada que pueden decodificar las señales PWM que salen de este segundo Rx y generar una señal analógica proporcional. Luego esta señal sería la entrada de un ADC del Robostix. El segundo Tx tiene 6 canales, por tanto puede mapearse cada canal con un parámetro de un controlador PID (Kp, Ki, Kd).
Aún resta resolver si esto se va a utilizar y en caso de hacerlo, cuantos PIC utilizaríamos
lunes, noviembre 20, 2006
Calibración de Acelerometros y Gyros
Luego de terminar el recorrido observamos los valores relevados y encontramos que luego de un rato los valores divergen (NAN). Creemos que el problema radica en la calibración de los sensores, tanto acelerometros como giros. Por ejemplo el acelerómetro retorna una aceleración positiva cuando debería tener valor cero y por tanto cuando se integre el valor cresca de manera sostenida. Algo similar sucede con los giros, ya que estos sensan velocidades angulares las cuales son integradas para obtener los ángulos theta, phi y psi.
Los acelerómetros y Gyros varían su salida con la temperatura, por tanto el domingo se implementó un experimento para determinar la variación de estos sensores con la temperatura ambiente. Se varió la temperatura ambiente en el rango de 25º C hasta 40ºC.
Hoy se analizarán los datos para ajustar estos sensores.
Prueba Switch
El domingo se probaron las distintas partes del circuito con la ayuda de un osciloscopio digital Tektronix. Se observó los siguiente:
Alimentación del Rx (pack batería NiMh 2400 mAh) = 4.8 v
- Salida de los canales del Rx : señal PWM T=14.3 msec ( f=70 Hz), VL = 0 volts, VH = 2.8 volts, Wpulse_min = 0.980 ms, Wpulse_max = 2.050 msec
- Señal PWM a la salida del Buffer 74244 : mantiene los datos anteriores pero mejora VH = 4.8 volts.
Cuando conectabamos el receptor al MUX intruducía muchisimo ruído hacia atrás y la señal se control del servo quedaba totalmente deformada. Para solucionar esto se colocaron condensadores cerámicos entre la señal de salida y tierra de manera de filtrar la señal de alta frecuencia que se superponía a la señal de control. También se agregaron condensadores de polister de 0.1 microF para filtrar la alimentación de los integrados.
Todas las señales son buffereadas, las que llegan del Rx, las que controlan los servos y la salida del pic.
sábado, noviembre 18, 2006
Idea para el "tuning" de los PID
Ahora que tenemos un PIC andando gracias al señor chappe y su amigo Danilo, y que en la radio tenemos una especie de pote, es decir, variamos un PWM de a pequeños pasos, lo que podemos hacer es lo siguiente.... o mejor aun, usamos un transmisor extra y un receptor extra, con distintas frecuencias para no tocar tanto nuestro sistema final...
La idea es, de ese pote que variamos, con el PIC convertimos el PWM a un voltaje de salida (hay que ver primero si es posible)
y luego lo muestreamos con un ADC, de ahi vamos regulando en "tiempo real" la ganancia de ponele un PID que elegimos al principio. Entonces para los pasos del método de "tuning" vamos armando distintas rutinas para ajustar por bloques PIDs y por parámetros (Kp, Ti, Td)
Tal vez es cualquier cosa, pero queda anotada por las dudas.
Hasta dentro de un rato
Kalman... que no ni no!
solo queria agregar mi felicidad al Blog :D
es tremenda emocion ver como movemos la caja y el angulo aparece, y como no nos movemos en el espacio, y la posicion se queda quieta, es decir no divergemos!!!
arriba que queda menos!!!
viernes, noviembre 17, 2006
Fotos del Hardware
Hay registrar las cosas antes de meter el sistema en la caja negra y estaría bueno tener fotos del conexionado previo en las etapas de diseño
gracias
Weather weekend 18 nov 2006
Borrador enviado
Filtro de Kalman - Cielo o Infierno?
El filtro de Kalman es el algoritmo implementado en C encargado de producir las estimaciones que llegan a los controladores PIDs a partir de las señales obtenidas de los sensores.
El filtro de Kalman toma en cuenta la historia del sistema, los errores de medida del proceso y los errores producidos por el ruidoy produce las señales de salida (estimaciones).
Si este filtro funciona correctamente el sistema se comporta de manera esperada, pero si este filtro no funciona bien se pueden obtener soluciones sesgadas completamente erróneas.
La "semilla" para el filtro de Kalman resulta vital para el correcto funcionamiento del mismo.
Placa Switch
Las señales para los servos provenientes del sistema de control y del Rx son pasadas por unos Buffers antes de ingresar al Mux.
Ayer se realizó el esquemático de dicha placa y el layout de la misma. Hoy viernes se va a montar el circuito en protoboard y si funciona correctamente se procederá a realizar el circuito impreso en placa doble cara. Luego se hará el montaje, se probará y se integrará al resto del hardware para comprobar el funcionamiento de la misma en condiciones reales.
Alimetación para hardware 3V y 5V
No todas las placas manejan el mismo voltaje, por ejemplo los gyros utilizan 5 volts, los acelerometros utilizan 3 volts, el gumstix y robostix utililzan 5 volts, y la placa switch compuesta por el pic 16F690, buffers y muxs manejan 5 volts.
Para tener en cuenta estos puntos se fabricó un pack de baterías de 8 volts y se fabricó una placa que contiene 2 reguladores de voltajes que proveen los 3 volts y 5volts requeridos. De esta manera aseguramos un voltaje estable que allimenta las distintas placas de hardware, mientras el voltaje de las baterías decrece con el tiempo.
Se midio con una fuente de laboratorio HP el consumo en vacío de esta placa con los reguladores (placa fuente) y el consumo total cuando se conecta todo el hardware alimentado por esta placa fuente. En vacío registramos menos de 30 mA y con todo conectado registramos 180 mA (sin placa switch).
La potencia para los servos y receptor va a ser proporcionada por un pack de baterías diferentes dado que cuando los servos realizan mucho esfuerzo se produce un pico en el consumo de corriente y la caída de voltaje del pack es notoria. Por tal motivo disponemos de un pack independiente del del hardware y de mayor capacidad que este. Los pack tienen las tierras en común para tener la misma referencia, pues la señal de control de los servos es comandada directamente por el receptor en modo manual o comandada por el sistema de control autonomo cuando esta en modo auto.
miércoles, noviembre 15, 2006
pic funcionando
Montaje de hardware y otras cosas
Luego de corregir offsets de ADCs y cambiar la bateria de 5V por una fuente a 8V pasando por los reguladores a 5V y 3V, los ADC quedaron estables y las medidas correctas... estando quieta la plataforma se lee: 0,0,9.8 (ax,ay,az) y 0,0,0 (p,q,r). Ojo con el tema de la bateria bajando su voltaje, puede llevar a la locura :). Leo consumo de 170 mA a 8.8V en la fuente, para tener una primera idea de consumo de robostix+sensores.
Dentro de unas horas cuando me levante y con un poco de cafe, modifico el codigo del filtro de Kalman, encontre unos errores chotos que tengo que arreglar. Otra cosa que hay que hacer es armar el pack de baterias para el combo en total, asi que voy a hacer un estimativo de todo el equipo para tener el pack armado. Y finalmente hay que hacer una placa decente para los pobres reguladores, es decir, con mas de dos salidas :-P, calientan bastante los tipos... no se si es muy bueno eso :S
martes, noviembre 14, 2006
Documentación
Para el miercoles espero tener redondeada la documentación del algoritmo elegido para realizar el control para poder entregarla a nuestro tutor.
Y en cuanto A. chappe me mande la docmentación del switch sera integrada al documento final.
Alguna dificultad con el PIC
Ahora es se va a utilizar el PIC 16F690, también de Microchip, que tiene características similares al anterior, pero donde los registros de funciones especiales no son los mismo y los bancos de memoria también tienen alguna diferencia. Hubo que estudiar el manual de este modelo de PIC y rehacer el código assembler.
Ayer no pudimos terminar, trabajamos hasta las 01:00 am y dejamos el código escrito, hoy se realiza la compilación y la prueba de funcionamiento. Para la prueba se va a rutear la salida hacia un led de la placa de prototipado del kit de grabado y se va a generar la entrada usando el ch7 del Rx comandado por el Tx de RC.
lunes, noviembre 13, 2006
Switch Manual - Auto
Por este motivo el circuito debe ser totalmente independiente del procesador que implementa el control autónomo y debe ser comandado directamente por un canal del receptor que recibe la señal del trasmisor RC en tierra.
Para hacer el cambio se utilizará el canal 7 (ON-OFF), cuando el selector del Tx correspondiente a este canal está en OFF la señal PWM tiene el pulso en uno durante 1 msec y cuando está en ON el pulso dura 2 ms. La señal PWM tiene un período de 20 msec (frec. 50 Hz).
El circuito encargado del implementar el switch debe discriminar entre estos pulsos y generar una señal (cero o uno lógico) que comande la pata select de un multiplexor que recibe las señales que comandan los servos desde el receptor Rx por un lado y desde el controlador autónomo por otro lado. Cuando el pulso de la señal PWM dura 1 ms (OFF) la pata select del MUX debe valer cero y por tanto los servos son comandados por el Tx, cuando el pulso dura 2 ms (ON) la pata select debe estar a uno y los servos son comandados por el Control Autónomo.
En primera instancia se diseñó un circuito analógico que en función del ancho del pulso generaba la señal para la pata select. Este circuito en esencia tenía comparador de la señal con un voltaje de referencia intermedio y luego un filtro que cargaba un condensador. En función de la duración del pulso se lograba un cero o un uno en la salida. Este circuito depende fuertemente de este voltaje de referencia, que depende del estado de las baterías.
Se hizo el layout, se mandó a hacer la placa a ENEKA y nosotros realizamos el montaje de los componentes. El impreso no estaba correctamente ruteado, por tanto hubo que corregirlo, y luego con el tiempo la oxidación de la placa produjo que algunas pista se cortocircuitaran haciendo que el circuito no funcionara en forma correcta. La confiabilidad no era suficientemente buena y se tomó la decisión de cambiar la implementación del circuito.
Actualmente el circuito se basa en un PIC 16F628 de Microchip. Un loop infinito muestrea la señal PWM que sale del canal 7 del Rx, cuando se detecta el flaco de subida se inicia un Timer y cuando se detecta el flaco de bajada se para el Timer. Luego se compara el tiempo registrado por el Timer con el valor correpondiente a 1.5 msec. Si el tiempo es menor de 1.5 msec la salida del pic es cero y si es mayor la salida es uno. Esta señal comanda la pata select del MUX.
El código fuente del programa que se graba en el pic se desarrollo en asembler. Gracias Danilo por colaborar en el desarrollo del programa y por su grabadora de PICs.
Ayer se hizo el programa y hoy 13 nov 2006 se va a realizar la prueba.
viernes, noviembre 10, 2006
Fin de semana 11 y 12 nov
![]() | Sunshine and patchy clouds | ||
High | 22°C | ||
RealFeel®: | 23°C | ||
Winds: | ENE at 14km/h | ||
Wind Gusts: | 40 km/h | ||
Max UV Index: | Very High (8) | ||
Amount of Precipitation: | 0.0mm | ||
Amount of Rain: | 0.0mm | ||
Amount of Snow: | 0.00cm | ||
Hours of Precipitation: | 0 Hrs | ||
Hours of Rain: | 0 Hrs | ||
Hours of Daylight: | 13.5 Hrs |
jueves, noviembre 09, 2006
Fotos en el Taller



Reunión confirmada
Además de conocer al avión, se le va a presentar el estado actual del proyecto y la planificación de las actividades que restan.
Más Fotos ...

En esta pista el avión sufrió una caída en el momento del despegue cuando se encontraba a unos 10 m de altura, impactando contra un alambrado que se encuentra a escasos metros del final de la pista, esto motivo nuestro traslado de puebas a la pista de la EMA.


Las alas son extraibles lo cual facilita su trasnsporte en una camioneta, de lo contrario sería muy complejo ya que el avión tiene 3 m de envergadura (distancia entre los extremos de las alas) y dos metros de largo.


En esta foto aparece la primera versión del carenado en dos partes, el caño de aliminio no tiene los agujeros de la última versión, está colocada la terminación aerodinámica de la cola, que luego fue quitada a fin de reducir peso.

Se buscaron posibles defectos en el movimiento de los servos, en el comportamiento del tren de aterrizaja.
Luego de estas pruebas se modificó el tren delantero, se re ubicaron las posiciones de los trenes de aterrizaje, se redistribuyeron los pesos a fin de fijar el centro de masas en la posición correcta (a un tercio del borde de ataque del ala).
En estas pruebas el avión se limitó a carretear en pista y no se hicieron intentos de despegue.
Fotos sobre la pista de la EMA.
Fotos de la pista. La pista tiene una longitud total de 1100 m y un ancho de aproximadamente 32 m, lo cual lo torna un lugar muy seguro para las pruebas ya que disponemos de espacio para realizar las maniobras correspondientes en caso de sufrir imprevistos durante el des



El avión con carenado y listo para realizar la prueba de despegue.
En primera instancia se planificó carretear el avión en la pista, alcanzar la velocidad de despegue, levantarlo unos pocos centímetros del suelo y volver a bajarlo. Todo esto pensando en la integridad del avión.
Hay que tener presente que el despegue y el aterrizaje son los momentos más críticos del vuelo pues el avión no tiene demasiada sustentación, ni tampoco se dispone de espacio para realizar maniobras complejas.

Esa pequeña figura que se aprecia en la foto es una imagen del Bobby en su primer vuelo. Foto tomada con la cámara del celular de Andrés Suttner.

GUMSTIX
Tiene 64 MB de RAM. Mide 80mm x 20mm x 6.3mm. Puede ser accedido usando un puerto serie, USB o Ethernet y/o interfaces inalámbricas.
La versión Connex permite extender su potencial y funcionalidades agregando otras tarjetas que se acoplan al Gumstix a traves de conectores para tal fin.
En sus diferentes presentaciones, todas consumen menos de 250mA cuando están a máxima capacidad y menos de 50mA cuando están inactivas.
Gumstix ejecuta el sistema operativo Linux (embebido).
SOFTWARE 9 nov 2006
Todo el código está hecho en lenguaje C, compilado sobre Linux ya que el mismo es el sistema operativo que trae instalado el Gumstix (procesador de 400 MHz). Mucho del código corresponde a funciones de bibliotecas de dominio público desarrolladas para proyectos de similares características, otras tantas corresponden a funciones desarrolladas para el procesador que estamos utilizando y algunas otras han sido desarrolladas por el equipo de proyecto, así como también se han realizado adaptaciones para ajustar las ya existentes a nuestros requerimientos.
A modo de ejemplo podemos decir que están listos los siguientes componentes:
- Path Planning
- Conversor analógico - digital
- Generador de PWM
- Lectura de GPS
- Lectura de Acelerómetros
- Lectura de Giróscopos
- Logueo de datos en archivo de texto plano de los valores sensados
- Filtro de Kalman (matriz de dimensiones 9x9)
- Control PID
- Conversión de coordenadas geodésicas a cartesianas 3D
- Bibliotecas para el Gumstix.
- Comunicación entre el procesador gumstix y el robostix
- Aplicación principal que implementa el sistema de control, el cual utiliza e integra las funciones detalladas más arriba.
- Interfaces que realizan la adaptación de datos entre las distintos componentes del software.
- Ajuste de parámetros que se correspondan con los requeridos por nuestro avión.
- Pruebas del sistema total.
martes, noviembre 07, 2006
Lugares de trabajo y Pistas de Vuelo

En principio el lugar de reunión más frecuentado fue la casa de Rodrigo, que hemos denominado "Centro de Desarrollo". Ahí se llevaron acabo las primeras actividades del proyecto, como ser la búsqueda de información referente al estado del arte, las decisiones de diseño y las primeras etapas de la construcción del avión. Actualmente es el lugar donde se ha llevado acabo la construcción de gran parte del software que implementa el control autónomo, así como también la integración del hardware compuesto por el procesador, los sensores y el GPS.
Luego nos trasladamos a la casa de Andrés (Suttner) donde se llevó acabo el grueso de la construcción del Bobby. Hemos denominado a este lugar "Base de Operaciones" dado que es el lugar donde tenemos el avión, es aquí donde se planifican las distintas pruebas a realizar y desde donde partimos hacia las pistas de vuelo.
Los dos lugares que disponemos para volar son la CTA y la EMA.
La CTA (Centro Técnico de Aeromodelismo) se encuentra en las afueras de Montevideo(Canelones), a unos 22 kms de nuestra Base de Operaciones. La CTA es propiedad de los socios de un club de aeromodelismo, que generosamente nos abrieron sus puertas de manera totalmente disinteresada y nos permiten utilizar sus pistas para realizar las pruebas. Queremos agradecer oficialmente a todos los miembros de la CTA por sus consejos y aportes y por la manera en que siempre nos han tratado.
La EMA (Escuela Militar de Aeronáutica) está ubicada fuera de Montevideo a unos 23 kms de nuestra Base de Operaciones. Esta pista nos ha permitido realizar prubas con mayor seguridad , debido a que la pista posee mayores dimensiones que la que dispone la CTA . Para tener acceso a esta pista hemos tenido que solicitar de manera oficial que nos permitieran el acceso para realizar las pruebas.
Primeras fotos del bobby
La estructura de forma triangular que se ve a la derecha es la bancada de prueba del motor.
Reunión con Canetti
Estamos a la espera de su contestación. En estos momentos estamos documentando parte de lo que tenemos hasta el momento.
lunes, noviembre 06, 2006
Fotos del Bobby

Le sacamos unas fotos al Bobby para tener un registro antes de su terminación. Aún restan algunos detalles, la terminación, pintarlo y colocarle los logos del proyecto. Aunque la iluminación no es la mejor, se intentó mostrar el aspecto general que presenta el avión y algunos detalles del mismo.

Detalle de los movimientos del elevador y del timón de cola (rudder). Los servos se montaron dentro de la cavidad de la cola.








Domingo LLuvioso
El domingo como estaba previsto llovió a partir del medio día y durante toda la tarde, por tanto no pudimos ir a realizar pruebas con el avión.
Nos dedicamos al software. Rodrigo está investigando la mejor implementación para un contralador PID. Por su parte Andrés Suttner se dedicó a terminar el código en C, contrastando los resultados con la implemetación en Matlab
domingo, noviembre 05, 2006
agradecimiento para "la larva"
Primer Clase de Vuelo - CTA

pista de la EMA.


Debido a que solo disponíamos de un solo trasmisor, nuestro instructor nos hizo realizar maniobras en pista a modo de ir automatizando el sistema "ojos - comandos" y para familiarizarnos con los comandos del trasmisor y la sensibilidad de los controles.
Luego de un rato el

Gracias Alcides.
Al final del día tuvimos una reunión para ultimar detalles de los próximos pasos
