Mando a distancia de 4 canales por RF con HT12

En este post realizaremos un mando a distancias que puede ser de 1 a 4 canales simultáneos, esto quiere decir que podremos realizar (según la necesidad de cada uno) un mando a distancia configurable. 
En el circuito que les presentare estoy realizando la opción con 4 canales ya que es la mas completa y tal vez sera mas útil.
El corazón de este proyecto se basa en el circuito integrado de la firma Holtek HT12, que sera HT12E o HT12D en base a la función que realiza, para la letra "E" sera Encoder (sera nuestro emisor) y para la letra "D" sera Decoder (sera nuestro receptor).
Este integrado posee también 8 bit de encriptación, ya que tiene 8 pines externos que serán para configurar la encriptación del dato a enviar. Como sabemos, 8 bit corresponden a 256 combinaciones posibles, es decir de 0 a 255 combinaciones que podremos elegir, claramente el mismo código debe estar en el emisor y el receptor sino no se podrá realizar el link entre ambos y no funcionara el enlace.
Pero esto no es lo único que tendremos que sincronizar, también sera la velocidad de transferencia de la trama o el paquete de datos, que sera ajustando el oscilador interno VCO.
Luego nos quedara el medio por el cual vamos a enviar el paquete de datos, que en este caso sera mediante RF (pero podría ser mediante algún medio diferente). 
En cuanto al enlace de RF podría ser cualquiera, es decir necesitamos un enlace simplex de emisor y receptor que claramente tienen que estar sintonizados y modulados en la misma forma para que funcione.
Podríamos usar enlaces HF, VHF, UHF, etc... en este caso he implementado unos módulos de datos modulados en ASK (Amplitude Shit Key), estos módulos funcionan en UHF a una frecuencia que puede variar según el modelo o marca que compremos, pero hay que tener en cuenta que tanto el transmisor como el receptor deben estar apareados, es decir el Tx debe tener la misma modulación y frecuencia que el Rx.
En mi caso he conseguido unos módulos que funcionan a 433.92MHz en modulación ASK.
Sin entrar mucho en el tema de los módulos, tendremos un transmisor muy sencillo en base al filtro SAW que funciona de forma similar a un cristal piezoeléctrico que realizara la portadora en un transistor que cuando tenga un nivel alto en la entrada de datos enviara esa frecuencia y luego con un nivel bajo extraerá esa portadora de frecuencia. Esa es la diferencia mas sencilla para diferenciar un sistema AM de un ASK, luego en el caso del transmisor tenemos otro transistor con un filtro y balun para amplificar un poco el nivel de señal. 
En el caso del receptor, el que he conseguido es un receptor de simple conversión o conversión directa que luego de acoplar la frecuencia portadora, detectar y filtrar la señal, es ingresada a un comparador en base a un Amplificador Operacional que me discriminara la mayor parte del ruido y RF para que pueda ser una salida cuadrada.
Claramente tanto para el transmisor (TWS) como para el receptor (RWS) debemos realizar una antena, un sistema de radio sin antena es como un sistema de sonido sin parlantes. Es muy importante que la antena tenga las dimensiones correspondientes y podríamos hacer un calculo simple que nos dará aproximadamente unos 35cm para una frecuencia de 433MHz, pero lo ideal es buscar el datasheet del modulo transmisor y receptor donde mostrara todos sus valores incluyendo las dimensiones de la antena que el fabricante aconseja.

El circuito Transmisor:



Como podremos ver en este diagrama tenemos el HT12E junto con un DipSwitch de 8 canales que utilizaremos para setear la codificación de la trama.
Luego encontraremos la resistencia de oscilación de 680k que podría variar en función de la tensión de alimentación y frecuencia.
Los 4 pulsadores del tipo tac-switch que tienen su pullDown y por ultimo el modulo TWS que en el caso de los módulos que he conseguido el pinout se encuentra como en el diagrama y la antena se suelda en el modulo, pero podría ser diferente el que encuentren ustedes, lo importante es que tenemos dos pines de alimentación y uno de entrada de datos que sera el que sale del HT12E en el pin 17 (DOUT).
El sistema se encuentra alimentado con una batería de 9V, pero podría ser otro nivel de tensión (hasta 12V).

El circuito Receptor:


Aquí podremos ver el circuito receptor, que es muy similar al transmisor, el circuito integrado sera el HT12D junto con los DipSwitch para la codificación (recordemos que debe ser la misma en ambos), luego tenemos en la salida VT un transistor con un LED, esto podría ir solamente con una resistencia y un LED pero la salida esta negada, por ello usamos un transistor como inversor. Esta salida VT es para indicarnos que se ha creado el link, cuando el transmisor y el receptor estén encendidos y conectados mediante los módulos inalámbricos, se encenderá el LED5 avisando que se ha realizado el Link entre ambos integrados, si como prueba cambiamos alguno de los DipSwitch cambiara el código y se apagara el LED5 ya que se perderá el Link. Luego quedaran las cuatro salidas que pueden funcionar de forma simultanea entre ellas (podríamos conectar un decodificador de 16 salidas ya que son 4 bit, pero habrá que ver el uso que le daremos), por ultimo el modulo RWS en mi caso tiene cuatro pines donde los dos centrales están unidos en el mismo modulo y es la salida de datos.


NOTA: Es importante saber que las salidas no tienen retención, es decir una vez que pulsamos cualquiera de los 4 botones del transmisor, se encenderá el LED correspondiente en el receptor, pero cuando soltemos el botón el LED en el receptor se apagara.
Si van a usar este sistema como un control remoto para un auto de juguete o robótica, posiblemente sirva esta configuración pero si quieren manejar la salida como una retención deberán agregar algún flipflop a la salida, por ejemplo un 4013 que es un doble flipflop tipo D que sera muy útil para crear una retención, es decir, presiono botón y enciendo salida, presiono botón y apago salida.
En este caso para 4 canales necesitamos 2 integrados 4013 y ahí tenemos cubiertas las 4 salidas con retención.
Luego podríamos también pensar en temporizadores, por ejemplo para prender una luz o hacer sonar una alarma, podríamos usar un timer en base a un 555 como mono-estable o algún otro método. Esto quedara a elección del diseñador.


Segunda actualización con la retención en base a los FlipFlop tipo D con el integrado CMOS 4013.





Aquí otro vídeo sobre los módulos de RF:


7 comentarios:

  1. Hola Sebastian.
    Interesantes estos módulos, por el precio que tienen. Yo los he usado, pero con dos Arduino, y he logrado hasta 9 metros y no he podido medir más por falta de espacio.

    Lo único es que cuando le construí las antenas, después de leer por ahí, en la mayoría de páginas apuntaban que 1/4 de onda de 433 MHz corresponde a 16.5 cm (17 cm en otras). También recomendaban que la del emisor fuera helicoidal y la del receptor tipo látigo. En la del receptor le coloqué finalmente una de 32 cm, siguiendo un tutorial que encontré, y con la que obtuve buenos resultados.
    ¿A qué corresponden entonces esos 16.5 cm de antena?

    Comentar también que compré unos módulos similares a éstos, pero que el transmisor viene dentro de un llavero con 4 botones y su respectivo encoder (PT2272), y el receptor igual al del vídeo pero con el decoder incluido. Si llegó a 2 metros fue mucho (un fraude). Ni cambiando la pila, ni con antena ni nada. Obtuve mejores resultados con los módulos simples como los del vídeo.

    Saludos.

    ResponderEliminar
    Respuestas
    1. Buenas! como estas?, 9 metros me parece poco yo logre sacarle hasta 1 cuadra en ciudad con pic, haciendo la trama a mano con buenos tiempos y una buena distancia entre bits, con los módulos HT le saque unos 30metros nada más, lo cual es bueno para el uso que tengo en mente.

      En cuanto a la antena, son todos monopolos ya que el plano de masa se lo "olvidan", la realidad es que mientras menos fraccionada este la longitud de la antena (1/2, 1/4, 5/8, etc...) mejor será el enlace, recorda que para longitudes de onda de 1/2, o 1/4 (lo que se suele usar en esto) están haciendo uso de los armónicos del transmisor que son siempre de menor potencia que la fundamental. No te digo que andes con un dipolo de 70cm pero bueno, es para tener en cuenta nada más.

      Si usas una antena helicoidal en el emisor, después tenes que recibir la onda de la misma forma polarizada, sino la polarización se va para cualquier lado y el enlace no es óptimo.

      En los casos que te menciono que la estuve usando fue siempre con dos monopolos omnidireccionales.

      Esos 16.5 o 17cm es para la configuración a 1/4 de onda.

      Si los conozco esos que traen el encoder y decoder, pero me parece poco 2m, tal vez tengas algún problema con eso, es muy poco 2m.

      Saludos!!!

      Eliminar
  2. Hola de nuevo.

    Cometí un pequeño error. El llavero trae el PT2264 (SCT2262) y el receptor el PT2272.

    Saludos.

    ResponderEliminar
  3. Gracias Sebastian.

    Aquí en España no se suele usar la medida "cuadra", pero entiendo que rondará los 100m. Yo conseguí esos 9m dentro de mi casa, y por eso no pude medir todo el alcance con aquella configuración. No creía que se pudiera tanto con estos minúsculos módulos.

    Probaré a ponerle antena de 32cm también al transmisor y hacerlo en exteriores.

    Volví a probar el llavero con el encoder y su receptor y obtuve los mismos resultados. La pila de 12V que trae está perfecta, y tan solo alargando la antena emisora con un trozo de cable se lograba algún metro más, pero muy lejos de los 9m de sus hermanos.
    Siempre puedo desoldar los integrados y usarlos en otra cosa, pues el problema vendrá del transmisor o del receptor.

    Gracias de nuevo y saludos.

    ResponderEliminar
    Respuestas
    1. Como estas?, perdón la demora!, Sos de España? jeje no tenia idea! ahí debes conseguir todo mas fácil que acá por suerte. Como le dicen ahí a las "cuadras" o "blocks", acá son 100m efectivamente.
      Si, efectivamente la antena es una de las partes mas importantes de un sistema de radio, en cuanto al modulo que tenes, no se cual sea el problema, por ahí podes probar bajando la frecuencia de operación de los encoder y decoder para que sea mas sencillo para el enlace.
      Tal vez probar desmontando el Encode y Decoder, y probar solo en enlace con un micro o con un HT, para ver que podrá ser.
      Saludos!!!

      Eliminar
    2. Hola Sebastian.

      Bueno, soy de Canarias, y sí, la verdad que se puede comprar casi cualquier componente, aunque a veces hay que mandarlo a pedir al distribuidor nacional.

      Aquí no usamos "cuadras". A todo caso, el término manzana, pero tampoco mucho que digamos. Pero San Google lo soluciona todo.

      Lo que comentas de bajar la frecuencia de operación de los encoder/decoder ¿cómo se haría?

      Gracias y saludos.

      Eliminar
    3. Bueno bien, algún día espero poder darme una vuelta por Europa, lo mas lejos que pude hacer acá es a 500km :S jeje es todo muy costoso acá.
      Claro acá también creo que le se llaman Manzanas, pero bueno también le dicen cuadras.
      Lo de bajar la frecuencia tiene que ver con que la trama de datos se envié mas lenta, por ejemplo el HT12 tiene una resistencia externa para darle la velocidad a esa trama, en mi experiencia con estos módulos de RF y esos integrados, mientras mas baja sea la frecuencia de la trama mas alcance me da, por ejemplo cuando lo uso con micrcontroladores con trama UART, la configuro a 600bps como para que sea algo lento, pero cuando hago la trama a mano y por ejemplo le doy una velocidad de 100Hz o algo así, es realmente bueno el alcance del sistema.
      En tu caso debes tener algún método de darle velocidad a tus integrados, claro que ya todo esta montado en ese modulo y hacer esa modificación seguramente involucra usar el soldador... pero es a modo prueba. a menos que esos los dejes así para alguna aplicación hogareña donde no necesitas distancia, y uses otros módulos.
      Estos que probaste son los únicos que usaste? o probaste otros iguales y te dan el mismo resultado? tal vez estén en mal estado.
      Saludos!

      Eliminar