Go Down

Topic: MiKuadricoptero en ESPAÑOL y Libre (Read 16923 times) previous topic - next topic

tuto2002

Saludos a todos.

Acabo de incorporarme al foro y quiero presentaros mi proyecto.

Mi objetivo es realizar un Kuadricoptero basándome en un ARDUINO

Ya se que hay varios equipos comerciales y software desarrollado (Ingles / Aleman), pero me gusta buscar y experimentar con mis propias ideas.

Mi intención es que sea en ESPAÑOL , en código ABIERTO y partiendo de cero.

Estimo que la duración puede del proyecto puede ser UNA AÑO.

He comenzado creando una Web en la que colgare explicaciones, imagenes , enlaces y el codigo.

Os invito a visitarla y os agradeceré todas vuestras sugerencias.
Espero que haya algún loco más que se una al proyecto

tuto2002

Faltaba el enlace:
http://sites.google.com/site/mikuadricoptero/

Outl4w

Hola, aún no he leído todo, pero pinta muy interesante.
Estamos en contacto.
Salu2.

tuto2002

#3
Sep 28, 2009, 01:13 pm Last Edit: Sep 28, 2009, 02:43 pm by tuto2002 Reason: 1
Un paso más :)
He añadido a la Web un nuevo Modulo: Prueba Motor
Permite a través del teclado del ordenador gobernar un motor Brushless.
Creo que merece la pena verlo/probarlo y que puede ser de aplicación en otros proyectos.

Por favor informarme de cualquier error que detectéis
Tíos preguntar algo que parece que ahí detrás no hay nadie :-/
Saludos

Pakoff

Hola tuto2002!!!

He leido tu proyecto y quiero que sepas que me parece muy interesante.

Lo seguiré de cerca aunque no me atrevo a ponerlo en marcha.

Soy aeromodelista y programador desde hace varios años, pero en electrónica estoy completamente pez.


Saludos.

tuto2002

Pakoff

Si te gusta el aeromodelismo y sabes programar. Tienes el 90% hecho
La electróica se limita a soldar los componentes
ANIMATE ;)

Pakoff

Je,  je, je....

Yo no lo veo tan sencillo, pero prometo seguir el proyecto lo más de cerca que pueda.

Así de pronto se me está planteando una duda:

Para un modelo normal de aeromodelismo, se necesita un receptor, un variador, la batería y el motor (brushless).

En tu proyecto, la placa arduino hará las funciones de 4 variadores no? Es decir variará la velocidad de cada motor por separado no?

Conforme voy leyendo me va gustando más la idea...

Creo que lo voy a intentar.

Bye.

tuto2002

Lo siento ARDUINO  NO puede hacer todo.

Son necesarios 4 ESC para controlar los motores.

Ten en cuenta que los ESC:
  • Convierten la corriente contiunua (2 fases) a alterna y trifasica

Un ESC controla y regula una potencia de hasta 250 w (vatios), mientras que la potencia total (todos los pines)) de ARDUINO estimo que es de unos 2 w.
Por otra parte se necesita: el equipo de radio (emisor y receptor) y diferentes sensores (acelerometros, giroscopos, etc.)


Pakoff

Ok.

Huy...., he leido 4 giroscopos?

Eso vale una pasta no?

Bye

Johnny Hoyo

¡Uff!! Que proyecto mas guapo.
Estaremos pendientes.

Aprovecho para hacer una pregunta de novatillo.
En las rutinas de lectura y escritura de la eeprom se utiliza "union" que explicas que sirve para disponer de una misma variable en varios tipos a la vez.
Esto es propio de C++ pero, ¿se puede usar en el código de Arduino?

Saludos,
Johnny

Johnny Hoyo

Me respondo.

Lo he probado y es estupendo. Me ha venido al pelo.

Un saludo,
Johnny

tuto2002

He abierto una nueva Sección en la Web con el nombre:  "Notas Programación"

Para poder aligerar los programas y de hacerlos más fáciles de leer, pasando toda los comentarios a la nueva sección.

Las Notas no tienen ningún orden /clasificación (las añadiré según vayan apareciendo).

NO pretendo que sea un curso de programación, pero si que nos ayude a todos a mejorar y avanzar.

Os invito a visitarla ::)

http://sites.google.com/site/mikuadricoptero/home/6---notas-programacion

tuto2002

Estaba inquieto por conocer la precisión/fiabilidad de los datos, que el programa de "control de vuelo" recibe, en comparación con los que el piloto le envía a través del equipo de RC.

Para salir de dudas he modificado el programa  "Leer Radio" , para que una vez "centrado" e "inicializados motores" y  sin mover los sticks,  tomar una "muestra" de 50 lecturas  y ver que resultados obtengo.

He añadido tres nuevas subrutinas para calcular los valores "estadísticos" que utilizaremos para evaluar la precisión del sistema:

mediayrecorrido();
desviacion();
moda();

Que naturalmente se pueden utilizar en otros programas.

Os invito a visitarla

http://sites.google.com/site/mikuadricoptero/home/descripciones/1-06-precision-leer


tuto2002

#13
Oct 11, 2009, 08:14 am Last Edit: Oct 11, 2009, 08:17 am by tuto2002 Reason: 1
NO me he quedado satisfecho  la "precisión" obtenida con el programa que Lee el ancho de los "pulsos" (PWM) .

Para comprobar los "errores / diferencias "que se producen en la "cadena", la  he dividido en dos partes:

[/list]Emisor + Ondas Hertzianas + Receptor
[/list]Arduino + Programa.

Y he medido las del último tramo, midiendo el PWM de un solo canal
http://sites.google.com/site/mikuadricoptero/home/descripciones/1-07-calibrar-leer?pageMoved=1-Descripciones


SORPRESA ahora los datos son perfectos. :-/
La solución parece ser que es leer los canales por separado.
Pero aun no se cual es el error en el planteamiento del Leer Radio-01

¿Alguien me puede echar un mano?

tuto2002

Por desconocimiento de la función, en los programas yo estaba utilizando una subrutina para calcular el ancho de los pulsos de la radio, hasta que un "colega" me indico que utilizando "pulseIn" podía ahorrarme un montón de líneas.

Inmediatamente cambie el programa pero empecé a obtener resultados extraños.

Después de volverme loco descubrí que: cuando esta función trabaja conjuntamente con "ServoTimer2"  las lecturas de "pulseIn" son unos 100 microsegundos inferiores a las normales  :(

En la Web he traducido lo que dice "referente" y mis experiencia.
También adjunto un pequeño programa para que lo comprobéis.

Nota-005.-  Función  pulseIn
http://sites.google.com/site/mikuadricoptero/home/6---notas-programacion/6-03-nota-005

Go Up