Pages: [1] 2 3   Go Down
Author Topic: Transferir bastantes datos de forma inalambrica.  (Read 6873 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1413
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola a todos, una duda que me ha surgido...

Es posible transferir gran cantidad de datos entre 2 arduinos de forma inalambrica? como medio de transmisión habia pensado usar 2 Xbee+modulos.

la idea es la siguiente, un arduino 'remoto' esta recolectando datos durante 1 o 2 horas, llegado a cierto punto, si tiene el otro Xbee al alcance, le transfiere todos los datos guardados para que el Arduino 'base' procese los datos y los guarde en una memoria usb, los suba a un servidor mysql, o lo que sea.

queria saber si alguno tiene experiencia en algo asi, y si es fiable enviar linea tras linea de datos.

inicialmente las lineas serian asi (aunque quiero usar esto para otro proyecto que no serian asi, pero lo mismo da)

Code:
2011-03-01 05:12:20;1298956340000;391.47;358.36;229.28;1.71;0.92;0.00;0;4
2011-03-01 05:12:30;1298956350000;391.55;358.81;229.16;1.71;0.92;0.00;0;4
2011-03-01 05:12:40;1298956360000;388.74;357.28;229.27;1.70;0.92;0.00;0;4
2011-03-01 05:12:50;1298956370000;386.52;355.68;229.34;1.69;0.92;0.00;0;4
2011-03-01 05:13:00;1298956380000;390.99;358.77;229.32;1.70;0.92;0.00;0;4
2011-03-01 05:13:10;1298956390000;390.43;358.64;229.31;1.70;0.92;0.00;0;4
2011-03-01 05:13:20;1298956400000;389.39;357.74;229.20;1.70;0.92;0.00;0;4

muchas gracias
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Offline Offline
Edison Member
*
Karma: 23
Posts: 1375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Los XBee se basan en el standar ZigBee que establece un sistema de corrección de errores y los paquetes se reenvían hasta que se reciban correctamente en el destino.
No debería existir problema alguno para hacer lo que comentas.
Logged

Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1413
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

gracias chiva!

he visto que existen Xbee con versión 802.14.2 (o algo asi) y otros con version ZB

me recomiendas unos u otros? creo que he visto que los programas con el  802.14.2 parecen mas simples de escribir.

lo que veo tortuoso es que hay que enviar 1 variable por mensaje, y encima he visto que en un ejemplo que lo pasaba a int para transmitirlo.

no se pueden enviar tramas como las de arriba? asi el arduino receptor solo tiene que romperla usando ";" y hacer lo que necesite con los datos.

gracias por tu comentario.
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Offline Offline
Edison Member
*
Karma: 23
Posts: 1375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si lo pones en modo AT puedes mandar datos como si de un cable serie se tratara, independientemente de los serie 1, 2, 2.5, S2B.

Yo te recomiendo los que llevan ZigBee, que son las series 2, 2.5 y S2B y tampoco son mucho más caros que los de la serie 1.
Si de verdad vas a meterte con XBee no estaría mal que te hicieras con una copia de "Building Wireless Sensor Networks" que trata desde qué comprar a cómo usar la Serie 2/2.5, con muchos ejemplos y paso a paso, muy completo la verdad.

Hace un par de días lo estaban sorteando en la página de Digi en Facebook, a lo mejor te podrías haber hecho con uno, ya que no participó mucha gente, si lo hubieras posteado antes... smiley-lol

Un saludo
Logged

Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1413
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

vaya que lastima !!!
bueno a ver si hay otro sorteo pronto jeje
pues pensaba no coger ZB pero porque habia visto codigos de uno y otro, y siempre me parecio mas complejo el de ZB. igual estoy equivocado.
se supone entonces que ZB es mejor o mas actual por lo que dices de las series? bueno eso ya lo puedo mirar yo por internet, sorry.

gracias chiva !!!
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Offline Offline
Edison Member
*
Karma: 23
Posts: 1375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si me dices donde has visto lo que comentas le hecho un vistazo, ya que una vez configurados es sólo hacer Serial.print sin más.
Es que hay varios firmware y cada firmware tiene el modo AT y el API, el AT es el que hace de "cable" serie.

Un saludo y de nada smiley-razz
Logged

Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

0
Offline Offline
Edison Member
*
Karma: 8
Posts: 1040
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Tambien puedes usar el 24L01 de Nordic semiconductor, trabaja en 2,4Ghz



Enlace ebay 2 x 10 Euros
http://cgi.ebay.es/2x-Mini-2-4Ghz-Wireless-NRF24L01-Transceiver-Module-Z-/160485402774?pt=LH_DefaultDomain_0&hash=item255dace896

Code
http://innerqube.com/?p=151
Logged

Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

0
Offline Offline
Edison Member
*
Karma: 8
Posts: 1040
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

y como no en el playground
http://www.arduino.cc/playground/InterfacingWithHardware/Nrf2401
Logged

Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1413
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

flico gracias por el enlace, pero estoy buscando algo que sea lo mas sencillo de programar posible, mis conocimientos no son maximos y como quiero integrarlo en un proyecto bastante grande necesito que cada sección sea lo mas sencilla posible. pero me guardo el link !!

el ejemplo del playground parece muy muy sencillo de implementar,no? y encima el precio es muchisimo mas interesante que comprar 2 Xbee mas sus modulos
la duda es, se puede enviar un String completo como he puesto arriba?
esos modulos son emisores/receptores? porque tendre que conectar uno para enviar en un arduino y otro para recibir en el otro arduino.

chiva pues lo vi en coocking-hacks...
http://www.cooking-hacks.com/index.php/arduino-xbee-zb-2mw-onchip.html
http://www.cooking-hacks.com/index.php/arduino-xbee-802-15-4.html
como ves el coste es el mismo en ambos casos 39euros, el zb pone que son 2mw no se si hara que tenga mayor potencia, aunq esto no deberia ser un problema.
ahora mismo no consigo encontrar los codigos ejemplos que habia visto, solo este tutorial de coocking-hacks que parece que lo usa para ambos tipos.
http://www.cooking-hacks.com/index.php/documentation/tutorials/arduino-xbee-shield#step6

yo tan solo quiero enviar un String con toda la linea de datos, pero parece complicado encontrar ejemplos sencillos que hagan esto, siempre se trata de enviar un numero.
mi objetivo es...que cuando los dos XBee's se encuentren (esten en rango) y pasados 10 minutos...el XBee cliente le envie al XBee servidor todos los datos que ha recolectado durante 1 o 2 horas. es decir preparar una funcion que cuando se cumplan estas dos condiciones se pongo a enviar datos como un loco:
if ((hay conexión con el otro xbee)   &&  (tiempo transcurrido desde conexión> 10 minutos))
{ hacer funcion de volcado de datos
}




p.d. visto lo visto, me he propuesto hacer un minitutorial para megaprincipiantes de cada modulo que aprenda a usar ya que veo que muchos codigos ejemplo no son siempre los mas adecuados. ya estoy realizando uno de como usar el official ethernet shield en modo ethernet y SD en el mismo codigo.

muchas gracias a los dos !!!
« Last Edit: March 02, 2011, 07:18:23 am by Gixxer » Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Barcelona
Offline Offline
Full Member
***
Karma: 0
Posts: 136
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Gixxer,

utiliza dos Xbee, uno configurado como coordinador y otro como router (si no quieres utilizar el Sleep), en la dirección de destino de uno pones la dirección del otro y en el otro pones la del uno. Carga los firmwares más recientes AT (no API) con el XCTU.

Y ya tienes todo lo que necesitas, emulan una conexión serie de forma transparente, puedes mandar las cadenas de una en una o todas juntas a 250Kb.

http://www.zigbe.net/
Logged


0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1413
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gixxer,

utiliza dos Xbee, uno configurado como coordinador y otro como router (si no quieres utilizar el Sleep), en la dirección de destino de uno pones la dirección del otro y en el otro pones la del uno. Carga los firmwares más recientes AT (no API) con el XCTU.

Y ya tienes todo lo que necesitas, emulan una conexión serie de forma transparente, puedes mandar las cadenas de una en una o todas juntas a 250Kb.

http://www.zigbe.net/


gracias zigbe, vaya pedazo web que tienes, me acabo de enganchar a leerla !!

entonces tu me recomiendas la versión ZB o la version 802.15.4 ??? algun motivo en especial?

la opción que puso flico es muy atractiva por precio, porque los dos modulos XBee se suben a 80 eurazos !!! pero creo que los de flico ambos son receptores. si alguien me soluciona esta duda y por 10e es 'posible' crear una red con ellos, seguramente los compre tambien para ver que tal, aunque el proyecto usaria XBee.
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Offline Offline
Edison Member
*
Karma: 23
Posts: 1375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Es lo que tiene comprar todo hecho, si estás dispuesto a sacar el soldador y buscar unos pocos componentes te lo puedes sacar por unos 40€.

Los XBee:
http://www.seeedstudio.com/depot/xbee%C3%82%C2%AE-rf-modules-znet-25-1-mw-chip-antenna-p-226.html?cPath=139_142&zenid=a1c96526e81f00fc9f72571728fc7264
Las shields:
http://iteadstudio.com/store/index.php?main_page=product_info&cPath=19_21&products_id=298&zenid=uu00d391n7sm2rqh6kv5lrb8s3

Creo que merece un poco la pena por 40€ de diferenci, no?
Logged

Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

Barcelona
Offline Offline
Full Member
***
Karma: 0
Posts: 136
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Gixxer,

que sean de un tipo o otro simplemente determina el protocolo de la red, es algo que gestionan los firmwares de los Xbee y que en el modo AT es prácticamente transparente. Al final que sean ZB unicamente añade una capa encima del protocolo 802.15.4 que permite toda una serie de cosas interesantes para redes con muchos nodos.

Dicho de otra forma para hacer una comunicación punto a punto es suficiente con los 802.15.4, tienes todas las prestaciones que necesitas, pero si pones unos módulos ZB puedes ir añadiendo más nodos y comunicando entre ellos, una de las ventajas es que puedes crear una red mesh, ampliando la cobertura, que busque caminos alternativos para llegar al coordinador si se "muere" un nodo, etc.

No hay demasiada diferencia de precio entre unos y otros (si la hay)

He visto que hay otro hilo en el que preguntas como mirar si un equipo está encendido, te pongo algo de info en ese hilo.

http://www.zigbe.net
Logged


0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1413
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hola zigbe, me has aclarado mucho en tu ultimo mensaje.

me decido por tanto hacia los XBee ZB ya que por lo que veo despues de configurarlos correctamente (la red que comentas), la forma de enviar y recibir datos es igual de sencilla. pensaba que eran mas complicados. es tipo esto,no? ->  Serial.print("hola mundo");

he visto esto, seria lo que necesito,no?
http://www.seeedstudio.com/depot/xbee%C3%82%C2%AE-rf-modules-znet-25-1-mw-chip-antenna-p-226.html?cPath=139_142#productReview
http://www.seeedstudio.com/depot/xbee%C3%82%C2%AE-shield-v11-by-seeedstudio-p-419.html?cPath=132_134

lo que no entiendo con esto de la RED de Xbee, es que si tu envias   Serial.print("hola mundo");   entonces todos los que esten en la red lo reciben?? no se supone que con los ZB le puedes decir quien tiene que recibir el mensaje?
yo quiero tener un XBee router que cuando el XBee cliente este cerca se encuentren y el cliente le envie los datos recogidos.
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Barcelona
Offline Offline
Full Member
***
Karma: 0
Posts: 136
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Gixxer,


no es bien bien así, independientemente de que elijas los 802.15.4 o los ZB (es bastante trasparente a nivel de aplicación) puedes configurar los módulos en el modo AT o en el modo API.

Lo primero es elegir la función en la red, por lo menos uno debe de ser coordinador (que es el que se encargará de formar la red de modo casi tranparente para ti), el otro debe de ser router o end node (solo un coordinador por red). El router está siempre encedido y puede hacer de repetidor con otros nodos para incrementar la distancia, el end node puedes ponerlo en modo sleep si necesitas una solución de bajo consumo. La función de uno o de otro depende de la versión de firmware que le cargues, con una aplicación que se llama XCTU.

Lo segundo es elegir el idioma que hablarán los Xbee con tu Arduino, puede ser el modo AT o el modo API, también se hace con la versión de firmware, si te decides por el modo AT deberás de cargar el firmware Coordinador AT en un módulo y router AT en el otro.

Independientemete del modo puedes configurar toda una serie de parámetros desde el XCTU, uno de ellos es el Destination Address, tu módulo siempre va a hablar con el destination address que tenga configurado, habitualmente en una red zigbee la dirección 0000000000 siempre es el coordinador (independientemente de su dirección real). Ten en cuenta que las direcciones vienen en dos parámetros DH destination Address Higth y DL Destination Address low, para saber la dirección de un módulo tienes que ver el SH y el SL. En un Xbee tienes que poner en el destino el origen del otro y viceversa.

Si has elegido el modo AT los Xbee se comunican con tu Arduino con cadenas de texto, es decir, una vez hecho o que te indico arriba si tu haces un Serial.print ("Hola mundo") por uno te saldrá por el puerto serie del otro y al revés.Los Xbee se pueden poner en modo comando enviando la cadena "+++" , despues de esa cadena podrías enviar con comandos At un comando para (por ejemplo) cambiar el nodo de destino.

Sigo en oro mensaje porque esel forum no va muy bien....
Logged


Pages: [1] 2 3   Go Up
Jump to: