te comento, tengo un walky que me sube a 433 Mhz, con lo cual puedo escuchar las señales. Con el VirtualWire cuando transmitia solo transmitia la informacion y paraba. Asi asi todas las veces que transmite solo hace la portadora necesaria para enviar la info.
Con el pin TX no sucede asi, hace portadora continua, y cada tiempo indicado en el delay envia la informacion, pero sigue haciendo portadora.
En la jerga HAMRADIO te diria que hace PTT continuo y cada tiempo envia la informacion.
Imaginatelo asi, tienes un walky y cada vez que hablas (en este caso envias la info) pulsas un boton (se llama PTT) no? Asi seria la forma correcta, hablas y sueltas el boton. Bien con el virtualwire me lo hace asi, que pasa cuando no utilizo el virtualwire y lo pongo directo al TX para hacerlo por serial, pues imaginate, quieres hablar por el walky, y SIEMPRE tienes el boton pulsado, pero hablas cada tiempo. Con lo cual siempre estas emitiendo portadora, pero cada tiempo emites la info como modulacion por decirlo de algun modo. Si quiero ponerlo remoto, el consumo de bateria aumentara considerablemente, etc etc....
No se si me he explicado bien jejeje
Saludos!
soy radio aficionado LU4HNE, el ptt es push to talk.
Me parece raro que transmita todo el tiempo, porque esos bichitos son en AM y emiten solo con el bit alto, salvo tengan algun otro metodo de emision como manchester que el 0 y 1 siempre hay bits altos.
Haz la prueba de conectar solo sin arduino el transmisor en un protoboard +5, gnd y data conentado a una resistencia de 10k a gnd.
Y prueba de ponerlo en transmision manualmente con un pulsador, no sea que tenes ruido y emite por eso todo el tiempo y escuchas con tu walky.
Y no es mala idea poner un par de capacitores de desacople de 100nf y 10uf en la alimentacion.
Hay algunos modelos que tienen un 4to pin para habilitar la transmision, con lo que poner un mosfet pequeño que lo prenda antes de enviar no seria mala idea
Perdon, corregi el grafico por que sino no va a funcionar.
Otra cosa que puede ser que virtualwire tenga un protocolo, y este se encargue de leer datos validos y descartar el ruido.
Que para esto puedes usar librerias como messenger, hay muchos mas por ahi dando vuelta. playground.arduino.cc/Code/Messenger
Puedes hacer tu protocolo esperando por ejemplo un valor b01111110 para seguir leyendo el resto y ese tambien puede ser el terminador. trama 01111110 + datos + 01111110
si eres radioaficionado entonces me habras entendido
Que bueno el circuito que me has pasado, lo acabo de montar y es asi como deberia funcionar mas o menos en el Arduino, cada vez que pulsas el boton hace portadora y deberia de enviar la info. Me lo guardo para cualquier invento jejeje
Al montarlo en el pin 1 TX siempre hace portadora, y cada tiempo (el que indico con el delay) manda los datos pero siguiendo la portadora continuamente.
Este modulo el transmisor FS1000A solo tiene 3 pins, el receptor si que tiene 4 pins, gnd, vcc, y 2 data.
Ok, buscare informacion sobre la libreria "Messenger" a ver si encuentro alguna pista mas.
Pero con el circuito manual emite portadora?
Con arduino sin enviar datos emite portadora?
Leiste con un multimetro si no hay tension?, recuerda que es cmos y con 2 voltios ya toma como 1.
Probaste de pones un capacitor de 10uf en la alimentacion del modulo?
Probaste de poner la resistencia entre el data y gnd con arduino? Esto te asegura el 0.
Si, emite portadora cada vez que pulso, cuando no no hace portadora.
Con arduino sin enviar datos emite portadora?
Si, con o sin datos solo poniendolo en el pin 1 TX ya se pone en portadora.
Leiste con un multimetro si no hay tension?, recuerda que es cmos y con 2 voltios ya toma como 1.
Probaste de pones un capacitor de 10uf en la alimentacion del modulo?
No a las dos cosas, buscare en el baul de trastos a ver si puedo sacar algun capacitor de 10uf.
Probaste de poner la resistencia entre el data y gnd con arduino? Esto te asegura el 0.
No, no lo he llegado a probar, en el esquema que lo tenia montado en el Arduino es como el equema que puse en el anterior post.
bueno por lo que respondes si no estas transmitiendo nada, es que tienes mucho ruido.
Si pones una resistencia como pulldown como te mencioné antes y un capacitor electrolitico se te soluciona el problema.
no es que sea brillante sino que son cosas basicas que debe tener cualquier circuito.
No olviden que arduino es para prototipado rapido, y mucas cosas que se agregan carecen de ciertos cuidados como este.
Una consulta maxid
Siguiendo la idea de la resistencia en pull down hicie lo siguiente.
Puse el transmisor directamente al FTDI Basic, sin la resistencia los datos que salen en el serial monitor son muchos y sin sentido, en el mundo de los radios ruido supongo, al poner la resistencia pull donw continua el ruido. exactamente igual por que?
Por la imagen que pones me parece que no coinciden las velocidades (ambos tienen que estar a la misma velocidad 1200baud,9600baud, etc). Aconsejo para pruebas velocidades bajas.
Pero tampoco imagino como haz puesto el modulo rx o tx.
Tampoco se como los estas allimentando, si directamente del usb, u otra fuente. Por eso insisto en poner capacitores de filtrado.
he estado buscando y no encontre ningun capacitor, y hasta que baje a la ciudad, pueden pasar unos dias, asi que he ido buscando informacion a posibles alternativas y saneando un poco el sketch que tenia sin ethernet.
Bien, hasta llegar a la ethernet todo funciona bien, podria conectar otro Arduino con la ethernet y que tubiesen los 2 comunicacion por serial TX -RX?
Es decir el receptor con el virtualwire y ese le pasaria la informacion a otro Arduino por el pin 1TX y pin 0RX con la ethernet shiel?
Ya no deberia dar problemas por pins verdad? Como podria conseguir leer la informacion tal cual?
Si claro se puede pero seria un exceso, no crees...
La información la puedes obtener por medio de "Serial.read()" los dos ardinos deben funcionar a la misma velocidad el baudrate del serial.
Me refieria a que es mucho poder de procesamiento para algo tan simple, no crees?
es decir, un solo chip podría hacer eso y mas mucho mas....
... y por mucho menos.
En fin estuve probando el virtualwire y ahora lo veo claro, que no tiene nada de ruido como si lo tiene el Serial, ahora estoy usando dos arduinos pro mini y la señal es clara y sin interrupciones sin comprobaciones de datos, bueno la librería se encarga de todo, supongo, salvo de darle formato a los datos que envía o recibe.
//-------------------------------------------------------------------------------------------------------
Tengo planeado agregarle un anemómetro, una flecha de dirección del viento y mas adelante un pluviómetro.
la verdad que si es demasiado para tan simple proyecto, pero si es funcional y no me da problemas tampoco me importaria utilizar los 2 Arduinos. De momento todo son pruebas que voy haciendo para ver si puedo hacerlo funcionar como servidor sin conflictos ni nada por el estilo.
De momento ya he dado un paso mas, y es que el Arduino que tiene la ethernet lee la informacion del serial que le manda el otro (el conflictivo jejeje) que esta como receptor de las sondas.
Por serial lo lee tal cual, texto + valores, he probado ha que salga por la ethernet y me sale a digitos o letras sueltas de lo que esta leyendo. Es decir un 2, refresco me sale el 6, refresco de nuevo el navegador y me sale la T, etc etc... De momento ando trabado ahi, pero por lo que puedo ver ya no se queda en cargando el navegador, ya funciona pero me sale solo 1 digito de toda la info.
Sigo buscando info!
Si, la verdad que virtualwire simplifica un poco todo, y es mas limpio por lo que parece, pero como todo tendra sus pros y sus contras. De momento hasta que no me agencie un capacitor, seguire con estas pruebas a er que sale.
Vamos que vas hacer una estacion completa! Animo! y espero que este hilo te vaya sirviendo tambien como lo esta sirviendome a mi.