Ayuda proyecto GPS+brujula por Xbee

Hola buenas a todos.
Estoy realizando mi PFC con un cuadracoptero y me gustaria añadirle un GPS+ brujula que mande las señales a traves de Xbee a un PC. Soy totalmente novato en el tema de microcontroladores y demas, aunque llevo unas semanas leyendo para intentar introducirme un poco en el mundo de arduino. Asi pues me gustaria saber si los componentes que he seleccionado son los adecuados para que el sistema funcione correctamente. Os detallo a continuacion los mismos:

Microcontrolador: Arduino Fio-->http://www.bricogeek.com/shop/arduino/268-arduino-fio.html
GPS:EM-406A SiRF -->http://www.bricogeek.com/shop/modulos-radiofrecuencia/149-receptor-gps-em-406a-sirf-iii-con-antena.html
Brujula:HMC6352-->http://www.bricogeek.com/shop/sensores/275-compas-hmc6352.html
Xbee explorer USB-->http://www.bricogeek.com/shop/modulos-radiofrecuencia/156-xbee-explorer-usb.html
Modulo Xbee:XBee Pro 60mW -->http://www.bricogeek.com/shop/modulos-radiofrecuencia/223-xbee-pro-60mw-con-antena.html
Bateria de alimentacion: Lipo 1000 mAh-->http://www.bricogeek.com/shop/baterias-lipo/135-bateria-lipo-1000mah.html

Me gustaria que me confirmarais que los componentes son 100% compatibles y que no tendre problemas.

Un saludo y gracias por vuestra respuesta!

Aquí depende mucho de la aplicación que quieras embarcar.

Usar un Arduino Fio, dependiendo de lo que quieras controlar abordo puede que se quede un poco corto. Me explico, si tu intención es hacer una aeronave autónoma estabilizada, es muy posible que el lazo de guiado-navegación-control + lectura de sensores se quede un poco corto de memoria.

Con respecto al módulo GPS, los módulos SiRF son bueno, no conozco la placa pero es relativamente simple de controlar vía UART.

El módulo de la brújula, me sucede un poco lo mismo, no lo conozco, pero es relativamente simple de programar usando el I2C.

El módulo Xbee de 60mW depende del alcance que quieras conseguir. Necesitarás 2, uno embarcado y otro en el PC para recibir la telemetría.

Lipos bien, aunque supongo que serán solo para alimentar a la electrónica de control. En este sentido, en todos los datasheets que encontrarás en los enlaces, puede ver las tensiones a las que trabajan todos los dispositivo: asegúrate que pueden trabajar a 3.3V.

Por ejemplo, mirando los datasheets - el módulo GPS trabaja a 4.5-6.5V, con lo que no los vas a poder alimentar con una lipo tal cual (4.2V - 3.2V agotada), ni sacar la tensión de alimentación del regulador de la Fio. Aquí, tendrás que diseñarte una fuente conmutada para sacar una tensión de 5V por ejemplo para alimentar al GPS. El resto de los módulos te los dejo para que los revises.

También podrías necesitar un adaptador USB - UART o programar la Fio via Xbee (mola más).

Como el 328p sólo tiene 1 sola UART que está dedicada al interfaz Xbee, vas a tener que leer la información del GPS con una librería que hace "bit-banging" (aka SoftSerial); esto puede ser un problema, dependiendo de la frecuencia con la que quieras leer el GPS.

Sin tener más información, poco más puedo ayudar.

Buenas
Gracias por contestar. Lo que quiero hacer simplemente es obtener la lectura de un GPS y brujula y enviarla por Xbee. Si sabes alguna forma mas y con otros componentes indicamela por favor.
EL tema de los voltajes no habia caido la verdad.. lo que me extraña que he visto una pagina donde usa ese mismo GPS a 3,3 no se come le funcionara :s

Como solucion del voltaje he pensado lo que has dicho, colocar en paralelo a la bateria uno de estos: http://www.bricogeek.com/shop/baterias-lipo/363-conversor-dc-lipower.html
y de ahi alimentar el GPS, no deberia dar problemas no? con una bateria de 1000mah me dara para unos 20 minutos de autonomia?
Escogi el arduino fio por la facilidad pagar cargar la bateria y disponer de del adaptador para el xbee,etc.

Otra solucion seria irme al arduino pro mini a 5 v , en este caso ademas necesitaria un explorer para el xbee que va a bordo http://www.bricogeek.com/shop/modulos-radiofrecuencia/155-placa-xbee-explorer-regulada.html
ademas el xbee va alimentado a 3.3, por lo que tendria que bajarlo a esa tension no?

Que solucion ves mas factible y facil?
Un saludo y gracias

Cualquiera de las dos opciones son igualmente válidas. En ambas vas a tener que añadir algo de electrónica (bien para subir la tensión, bien para bajarla). No hay solución mágica. Siempre te puedes arriesgar y conectar el GPS directamente y si lo necesitas comprar la fuente conmutada. Aquí tendrás que hacer un buen ejercicio de filtrado, pero no creo que para tu aplicación sea ningún tipo de problema.

De cara a las lecturas de los sensores va a depender mucho de la frecuencia de muestreo. Para hacer pocas lecturas por segundo (1, 2) no deberías tener problemas.
Creo que el módulo GPS tiene un consumo de unos 70mA, el módulo Xbee, cuando está transmitiendo tiene un consumo de unos 215mA (este siempre puedes ponerlo a dormir cuando no lo uses) y el AVR que si no lo mandas a dormir te va a consumir unos 6mA a 3.3V.

En total tendrás aproximadamente un consumo inferior a los 300mA. Por lo tanto una batería de 1000mAh debería darte una autonomía de algo más de 3h.

Creo que voy a optar por la solucion inicial por simplicidad en componentes y diseño mas compracto. El tema referente al softserial no tengo ni idea, ya que soy nuevo en estos temas. Por lo tanto , quitando el tema de los voltajes, deberia de funcionar todo no? Es para pedirlo lo antes posible ya que estos de bricogeek se quedan sin stock cada dos por tres. Una duda, el cable que trae el GPS deberia cortar un extremo y soldarlo al micro no?

Un saludo y gracias

En principio no veo nada raro para que no funcione. No se si se me ha escapado algo...

Un saludo

Gracias, ya dare la tabarra cuando tenga que programar todo jeje.

Un saludo

Buenas
Me ha surgido una duda respecto al tema de la comunicacion serie. Es complejo implementar el bit- baning? Podria quitarme ese problema usando un conversor a spi de la señal serie del GPS?

Un saludo

Usa la librería softserial y listo.

fm:
Usa la librería softserial y listo.

Ok, probare con la libreria.
Gracias!