El modo de codificación Mancherster (Manchester Encoding) se está volviendo muy popular en los sistemas de transmisión de datos digitales de bajo costo, encontrando aplicaciones principalmente en sistemas de control remoto. Vea en este artículo, basado en la documentación de Maxim como funciona.

   El proceso de codificación Manchester consiste en un método simple de manipulación de frecuencia (Shift-keying) que produce trenes de gran extensión de ceros y unos sin que el reloj de transmisión esté incrustado en los propios datos transmitidos.

   Se trata, por lo tanto, de una forma de modulación BPSK o Binary Phase Shift Keying que, por su simplicidad, permite la elaboración de sistemas de control remoto de bajo costo.

   En esta codificación datos digitales seriales de patrones arbitrarios de bits que no tengan secuencias largas de ceros o unos, pueden ser transmitidos.

    En este sistema, los niveles lógicos 0 y 1 no se definen por estados estáticos, sino por transiciones, como muestra la figura 1. Así, como muestra la misma figura, tenemos transiciones de niveles que definen los valores transmitidos.

 

   Figura 1 - Los niveles lógicos son dados por las transiciones
   Figura 1 - Los niveles lógicos son dados por las transiciones

 

   

También es posible invertir la lógica, como ocurre con la lógica positiva y negativa en el caso de las aplicaciones digitales, como muestra la figura 2.

 

    Figura 2 - Otra posibilidad de transmisión
    Figura 2 - Otra posibilidad de transmisión

 

      

La definición de un bit para los datos codificados por el método Manchester puede ser confusa, porque cada dato binario codificado resulta en dos bits aparentes en la cadena de datos.

   Si se tiene en cuenta que un bit de datos se define como una transición, podemos percibir que no hay datos en las cadenas de datos en la codificación de Manchester.

   Los datos codificados en la cadena no requieren dos niveles para cada transición, pues por la definición la información se codifica en una transición del nivel bajo hacia arriba o en una transición del nivel alto al bajo.

   Así que tomamos dos veces los niveles lógicos para codificar los datos en Manchester. Sin embargo, el uso de la frase "Bits Manchester" persiste y se debe tener cuidado cuando se utiliza el término bit para especificar qué es un bit de datos serial o un bit codificado en Manchester.

    El término chip también se utiliza para describir los períodos de nivel a cada lado de una transición o frente. Por lo tanto, cada codificación de datos Manchester de un bit requiere dos chips. Una corriente de datos serial se muestra en la figura 3.

 

 

Figura 3 - Una corriente de datos codificada en Manchester
Figura 3 - Una corriente de datos codificada en Manchester

 

 

Un punto importante que debe considerarse en este proceso de decodificación es que el nivel del componente DC tiene un nivel medio igual a cero. Además de la amplitud pico a pico de los datos codificados, las transiciones pueden ser identificadas como el punto en que pasan por el nivel medio, por ejemplo, cero.

   Los codificadores de datos de bajo costo utilizan estas características empleando un circuito simple de detector de transición denominado "data slicer".

  En la figura 4 tenemos un ejemplo de este tipo, empleando un comparador para decodificar el "rebanado" (slice) una corriente de datos.

 

Figura 4 - Decodificación de las señales con un comparador
Figura 4 - Decodificación de las señales con un comparador

 

  

Un filtro pasa-bajas, formado por R1 y C1, acompaña la tensión DC media de la corriente de datos, con una constante de tiempo elegida para no ser mucho mayor que la tasa de chips serie.

   La tensión media en C1 establece la referencia negativa de entrada al comparador. La corriente de datos serial se aplica a la entrada del circuito y el resultado es una secuencia de datos de salida donde el comparador tiene su oscilación entre el nivel negativo y positivo de la alimentación.

   En la figura 5 tenemos un ejemplo de una cadena de datos codificados en Manchester aplicada al circuito y la señal de salida resultante.

 

Figura 5 - La señal del decodificador
Figura 5 - La señal del decodificador

 

 

   Tenga en cuenta que en este ejemplo los datos codificados tienen una tensión offset desde el nivel de cero, como ocurre normalmente en los receptores comunes de RF.

   El data-slicer efectivamente convierte la corriente de datos de entrada en una cadena de sados ​​binarios que varían según la tensión de alimentación, como se requiere en los sistemas digitales. Las señales obtenidas pueden entonces ser procesadas por los circuitos digitales comunes.

    El circuito mostrado en la figura 5 tiene aún los resistores R2 y R3 que forman un eslabón de realimentación positiva que añade histéresis al comparador. Esta histéresis reduce las fronteras múltiples que pueden ocurrir con señales lentas o sujetas a ruidos.

   Una vez que los datos enviados se separan en datos seriales digitales con el restablecimiento de las tensiones que representan los niveles lógicos, un decodificador puede ser usado para extraer la señal original,

   Normalmente, para el decodificador se utiliza un microcontrolador que ejecuta algún algoritmo capaz de hacer esto.

   En un sistema, el software puede anticipar el tiempo de transición lógica, conociendo la tasa aproximada de transmisión de los datos. Con ello es posible aprovechar un segundo beneficio: la tasa de transmisión embutida.

   En las situaciones en los datos recibidos están cerca del nivel de ruido (bajas potencias o transmisores distantes) las fronteras de transición pueden ser múltiples en la decodificación.

   Un algoritmo apropiado puede ser utilizado para anticipar los valores válidos de la transición, rechazando los que no deben ser considerados.

    Apear de los microcontroladores pueden ser implementados con la función de decodificación, ellos también deben ser empleados para otras como el control de dispositivos externos y todo lo demás.

   En la figura 6 tenemos un sistema básico de receptor de control remoto.

 

Figura 6 - Receptor básico
Figura 6 - Receptor básico

 

 

     La codificación Manchester se refiere al proceso de la combinación lógica de datos seriales que deben ser codificados y el reloj utilizado para establecer la tasa de transmisión.

   Un ejemplo de circuito transmisor se muestra en la figura 7.

 

   Figura 7 - Un circuito transmisor
   Figura 7 - Un circuito transmisor

 

 

   Se utiliza un circuito como éste para codificar datos seriales de la salida UART de un microcontrolador. El circuito mostrado imita funciones necesarias para evitar la generación de frontales múltiples en las transiciones del reloj y de las entradas de datos que pueden ocurrir con estados lógicos intermedios.

  En la figura 8 tenemos el modo de implementar un transmisor de datos codificado con Manchester y usando software apropiado.

 

Figura 8 - Un transmisor para datos codificados en Manchester
Figura 8 - Un transmisor para datos codificados en Manchester

 

   

De esta forma no es necesario utilizar un microcontrolador con UART y circuitos externos para transmitir los datos codificados en Manchester.

   Un temporizador interno del microcontrolador dispara una subrutina para actualizar la clavija de salida de acuerdo con los datos que se transmiten y luego establece el tiempo de la tasa de datos.

   La base de tiempo del microcontrolador no necesita ser precisa, ya que los datos codificados contienen toda la información sobre datos y el reloj embutidos para el uso del circuito de descodificador.

 

 

Buscador de Datasheets



N° de Componente