sábado, 27 de julio de 2013

Autopiloto. Registro de datos (datalogger)

Llegué a la conclusión de utilizar una tarjeta SD para guardar el registro de vuelo. He tenido que esperar un par o tres semanas hasta recibirlo y llevo un par de ratos intentando que me funcionará, pero no conectaba con el módulo SD.

Módulo tarjeta SD
El problema era un falso contacto que ya he localizado. Ahora el ejemplo CardInfo de Arduino reconoce el módulo aunque no la tarjeta. Según parece hay que formatearla en un formato determinado.


Y esto lo dejo para otro día que hoy toca ver peli.

miércoles, 17 de julio de 2013

Autopiloto. Control de servos

Mientras espero a recibir los módulos de tarjeta SD que he pedido en Ebay me he puesto a investigar como mover servos desde el Arduino. No puede ser más fácil puesto que integra una librería específica para ello.

He modificado el Sketch (programita) del Arduino para mover un servo en función de la diferencia de la altitud y el nivel deseado. De momento no hace más que restar ambos valores y añadir 90 a la diferencia. De forma que, cuando la altitud y el nivel deseado coinciden, el servo va a la posición 90 que es la neutra, y cada metro de diferencia entre el nivel y la altitud se suma o resta un grado a esa posición



La alimentación del servo la hago de los 5 V de la placa de Arduino directamente, aunque en el modelo funcional se alimentará todo de la alimentación del sistema de radio que lleve el avión.

jueves, 11 de julio de 2013

Autopiloto. Problemas de memoria

Pues resulta que la memoria de la copia de Arduino Pro Mini que tengo es una EEPROM de 1kb. Es decir no me sirve que el registro del altímetro que pretendía y menos aún de resto de mediciones cuando termine de integrar todos los sensores.

En este enlace lo explica:

Me he decidido por comprar un par de módulos de tarjeta SD en Ebay:

Mientras espero a recibirlo, paso a la siguiente fase que consiste en mover lo servos.

lunes, 8 de julio de 2013

Autopiloto. Probando el altímetro

Una vez conectado el módulo barométrico y de temperatura, he localizado un código de ejemplo que con unas pequeñas modificaciones ya lo he puesto a andar
Esta es la parte del código que envía la temperatura, presión atmosférica y altitud al PC.
Este es el monitor serial donde puedo visualizar los valores captados por el sensor.
El siguiente paso es la memorización de los datos para su posterior transferencia al PC o movil o lo que sea.
Después, estableceré un limitador para el motor de forma que pare el motor en caso de superar cierta altura. Es decir, parecido al los altímetros de F5J. Por cierto, dejaré uno como altímetro F5J por si vuelvo a competir.


Autopiloto. Componentes para altímetro

Ya dispongo de los componentes básicos para iniciar la experimentación. Se trata de :

  • Una copia de Arduino Pro Mini 328 5v
  • Un módulo de sensor barómetrico y temperatura BMP085
  • Un convertidor serie USB CP2102 USB 2.0 to TTL UART 6PIN
Es esquema del Arduino Pro Mini original es el siguiente:
Espero que coincida con la copia que he comprado
Ya he conectado y probado el Pro Mini 328 con el convertidor serie USB. El convertidor no tiene circuito de reset por lo que hay que mantener pulsador el botón de reset del Arduino Pro Mini antes de iniciar la descarga.



Los pines para comunicar con el convertidor USB los he soldado con salida hacia arriba para que no interfieran con el resto de pines en caso de usar placas de conexión rápida.

El convertidor permite alimentar lel circuito con 3,3 V o 5 V. El reset no lo utilizo, lo reseteo a mano cunado descargo la aplicación.
Módulo Sensor Barométrico y Temperatura BPM085. Vista Superior.

Módulo Sensor Barométrico y Temperatura BPM085. Vista Inferior.
El módulo sensor barométrico y temperatura dispone también de alimentación a 5V

sábado, 6 de julio de 2013

Autopiloto

Hoy empiezo a desarrollar mi autopiloto.

La base es un Atmega 328. He elegido la version de 5V por ser la tensión del sistema de radio. Debo comprobar las tolerancias en ha alimentación.

El primer hito es integrar un sensor barométrico y registrar la altitud de vuelo.

El segundo es accionar la profundidad en base a la altitud para mantener la altura en vuelo. Quizás un simple control PI sea k que necesite.