Modulos de RF y PIC (RUIDO)

Holas saludos a todos.

Estoy realizando un proyeto con los modulos de radio frecuencia, los comunes que se encuentran en cualquier electronica, pero tengo un gra problema y hasta ahora no le encuentro solucion. Justo cuando dejo de transmitir, el receptor comienza a recivir ruido, y esto le afecta al receptor que es hecho con un micro, el cual maneja interrupcion por recepcion, el micro interpreta al ruido como que fuera un dato, aunq invalido pero a la final dato y cuando efectivamente quiero enviar un dato este no se sincroniza entre recepcion y trasnmision, no se como hacerlo o si debo poner algun filtro o algo....

Es decir para mi es como que lee mitad de ruido y mitad del dato valido, el micro no diferencia el inicio de la transmision verdadera vs el ruido

O si me dan otra solucion muchas gracias

Jairo
 
No se que tipo de señal transmites, pero una solucion posible es que uses un pll, para que cuando dejes de transmitir este se active y envie un tono de audio en la frecuencia que tu quieras, y sintonices el receptor a ese tono de audio con otro pll, de esa forma, el sin datos transmitidos tenes el tono unico y facilmente reconosible, lo otro es que uses un trigger smith (creo que se escribe asi), para eliminar ruidos. cualquier cosa detalla mas lo que queres hacer para ayudarte. Saludos
 
hola

Primero que es un pll, no lo conozco y lo que quiero hacer es lo siguiente...
Un micro esta conectado al transmisor de radiofrecuencia, la forma en la en envio es como transmisión serial, es mas utilizo pic basic para hacerlo, es decir, simplemente en vez del cable que se utiliza para comunicacion entre dos micros, utilizo los modulos de radio frecuencia, entonces en el receptor esta conectado otro micro y este intenta leer la transmision como si fuera por un cable, pero ahi tengo problemas con la sincronizacion porque no sabe cuando empieza a transmitir....y todo esto por el ruido

espero que este un poco mas claro, mi segunda opcion que voy a intentar es con los decodificadores haber si con eso funciona, cualquier ayuda muchas gracias

Saludos Jairo
 
Bien, un pll es un chip que puede ser usado para modular por tonos de audio una portadora y tambien demodularla , dando un alto o un bajo cuando esta esta presente o no en el recptor, si queres saber mas sobre pll busca la hoja de datos del LM567 que es bastante comun, pero no se si ne tu caso te serviria. Tal vez funcione enviando esta señal cuando no trasmitas datos, en este caso el receptor no estara recibiendo basura sino el tren de pulsos que a travez del LM567 te permitira habilitar o deshabilitar la lectura le micro con un alto o un bajo que te entrega el pll. Por experiencia propia conviene que no dejes que el receptor quede sin recibir nada, por que ese ruido puede hacer cuelquier cosa. En cierta forma lo que te proponia es lo que vos llamas segunda opcion, osea codificacion por tonos por pll. Saludos
 
Hola q tal, me intereza mucho tu proyecto! q pics usas ? q modulos de RF usas?
me gustaria conocer tu diagrama y el codigo q utilizaste para ambos pics.

Saludos desde acapulco mexico!


Jairo dijo:
Holas saludos a todos.

Estoy realizando un proyeto con los modulos de radio frecuencia, los comunes que se encuentran en cualquier electronica, pero tengo un gra problema y hasta ahora no le encuentro solucion. Justo cuando dejo de transmitir, el receptor comienza a recivir ruido, y esto le afecta al receptor que es hecho con un micro, el cual maneja interrupcion por recepcion, el micro interpreta al ruido como que fuera un dato, aunq invalido pero a la final dato y cuando efectivamente quiero enviar un dato este no se sincroniza entre recepcion y trasnmision, no se como hacerlo o si debo poner algun filtro o algo....

Es decir para mi es como que lee mitad de ruido y mitad del dato valido, el micro no diferencia el inicio de la transmision verdadera vs el ruido

O si me dan otra solucion muchas gracias

Jairo
 
Hola Jairo,
intenta incluir al inicio y al final de cada transimision un codigo, tal que el receptor sepa cuando tomar en cuenta los datos y cuando no.

Estoi trabajando en lo mismo , con pic 16F877 y modulos rf de 400 Mhz.
 
Tuve un problema parecido y lo solucioné de la siguiente manera:
Utilice el pic 16f877 ( en transmisión y recepción), con cristal de 4 MHz. Configuré el protocolo de transmisión serial ( USART)en los dos pic. Con este protocolo los pics se encargan de validar los datos haciendo la comunicación transparente (para nosotros).
Para probar la comunicación puedes conectar el pin de transmisión directo al pin de recepción, estando eso bien, conectas el transmisor y el receptor.
Debes asegurarte de que los anchos de pulso de los datos transmitidos estén dentro del rango que acepta el transmisor y receptor. Si son pequeños, no se alcanzara a leer y si son muy largos el transmisor cortara el ancho del pulso al valor máximo que acepta. Es por esto que en mi caso los datos de recepción eran distintos al transmitido.
Espero haberte ayudado
 
Bueno, entonces si te referis al ancho de los pulsos, estas haciendo referencia a la frecuencia de trabajo o a la cantidad de baudios, me podrias decir a que velocidad configuraste la usart para lograr una correcta comunicacion? Saludos
 
la frecuencia de trabajo es 4Mh
y la velocidad de transmsion 9,6 Kb

eso lo haces modificando el registro SPBRG, con el valor 25, (ejemplo)

bcf TRISC,6 ;Configuras el pin de salido (RC6/TX )
movlw d'25' ;25=9,6 Kb para un xtal de 4Mhz ( existe una tabla en el manual)
movwf SPBRG
bcf TXSTA,BRGH ;para probaj a baja velocidad o bsf para alta velocidad
bcf TXSTA,SYNC ;seleciona modo asincronico

obviamente te pones el el banco corespondiente.
 
va a depender de la cantidad de datos que quieras enviar.
para un par de bit esta bien, pero si quieres enviar mas canales lo mejor es trabajar
a la maxima velocidad

intenta ir subiendo la velocidad gradualmente y observa si tienes perdida de datos.


suerte!
 
Bueno yo estube practicando con unos de estos modulos y tambien tube problemas con el ruido y lo que encontre en un foro es que se suele mandar un dato de "sincronizacion" antes del se quiere ejecutar, este dato de "sincronizacion" normalmente es 55h o AAh (en dinario son 01010101 y 10101010) y despues de este dato se manda el dato que se va a utilizar, es decir que el programa de tu receptor tiene que reconocer si recibio el dato de "sincronizacion" y si lo recibio tiene que esperar el siguente codigo para realizar la tarea que se desae e ingnorar cuarquier otro dato que reciba sin el codigo de "sincronizacion" antes del dato. Otro aspecto que me cauzo problemas es que no se puede mandar una sola vez el paquete de datos, se tiene que mandar varias veces, en mi caso lo mandaba 10 veces cada vez que precionaba un boton y me funciono bien.

Otro dato, los modulos de RF mas usados son los que trabajan a 434 Mhz o 315Mhz y hay unos que tienen como maxima velocidad de transferencia 4800 Bps y otros 2400 bps, por lo cual si no saben cual de los dos modelos tienes les recomiendo que comiencen probando con 1200 bps y luego que comprueben que su programa funciona suban la tasa de transferencia.
 
No se si tienes un osciloscopio para que pruebes que es lo que pasa en el pin de recepcion de datos en el receptor al momento que mandas algun dato con tu emisor, de esta formas veras si tu receptor esta captando lo que tu mandaste con tu emisor, porque yo tube el mismo problema, cuando mi emisor no estaba mandando nada el recepto solo recivia basura, pero al momento que ponia a funcionar mi emisor desaparecia la basura y se notaba como los datos empezaban a llegar al receptor, cuando hice esta pueba fue cuando me di cuenta que tenia que mandar el mismo dato mas de una vez pq normalmente la primera vez que recive el dato enviado lo ingnora, por dicha razon debes mandarlo mas de una vez.

Saludos y espero haberte ayudado.
 
Hola que tal soy nuevo en el foro, nose si ya resolvieron este problema pero pues me gustaria una pequeña ayuda tambien me encuentro con el mismo problema y segun mi caso esto se deveria resolver con una major codificacion de los datos, navegando me encontre esta pagina sobre envio en rf y seria con codigo manchester, pero no encuentro no entiendo bien el codigo nose si alguno de ustedes lo aya corregido de otra manera mas eficiente aqui les dejo el vinculo http://www.picbasic.co.uk/forum/showthread.php?t=198
 
La solucion es como la dice @alfonso82 tienes que crear un byte de validación al inicio y despues envias el dato. yo trabaje con esos modulos, especificamente con los Laipac y se les mete ruido, pense que era un problema de fuente o un ruido por calentamiento, pero no era así, despues cree una rutina como lo indica @alfonso82 de la siguiente forma


1 byte validacion Colocas un valor que reconozca el pic y si es correcto sigue recibiendo datos, sino no lo acepta y queda en modo espera.
2 byte de datos, la informacion que queres transmitir
y 1 byte de finalización,

por ultimo debes tener configurado el modulo usart del pic para trasnmitir datos....
 
Última edición:
Buenas noches, me podrías indicar de que forma generar o hacer la rutina para el código de validación, ya que estoy tratando de enviar un dato desde un pic12f629, a un pic 16f84a, el dato lo logro enviar desde el pic12f629, pero a la hora de recibir el dato en el pic16f84a es donde tengo problemas, te agradecería cualquier ayuda....
 
hola soy nuevo en el foro:

conrepecto al ruido yo lo mejore haciendo una serie con una resist 10o ohm y un condensador de 10 micros entr los pines vcc y gnd

a la salida del receptor coloque un comparador para asi tener los nieveles de voltaje o y 5 voltios

yo uso los modulos tws44
 
Para codificar pueden usar la codificacion "Manchester" y para los ruidos usen capacitores de 100nf en la alimentación de cada componente, lo mas cerca de cada componente.
Tienen un receptor y un PIC; entonces usan un capacitor para la fuente, otro para el receptor y otro para el PIC.
A mi paso algo parecido trabajando con Rfid, la emision de la antena volvía loco al 16 f648A con el que recibía los datos...
 
Atrás
Arriba