Skip to content

06_Decodificador PPM

José Fernando Picó Antolí edited this page Jan 22, 2022 · 39 revisions

Decodificador PPM

  • Vamos a realizar un pequeño circuito digital que se encargará de decodificar los pulsos PPM que se recibirían por ejemplo de un mando de Radio Control, en el ejemplo, haremos la decodificación de una trama de pulsos donde hay 8 canales codificados.

  • En la siguiente figura mostramos una trama de pulsos PPM ( 8 canales ) que recibirá el sistema digital encargado de decodificarlos y haremos una pequeña explicación de dicha trama.

Trama PPM 8 Canales

  • En la parte de arriba podemos ver la trama (8 canales) que se recibirá, como se trata de una trama de 8 canales, tendremos un total de 9 pulsos seguidos de una pausa y luego se repetirá la trama ( 9 pulsos + pausa ... ). La codificación de cada canal viene dada por el tiempo que transcurre entre pulsos, por lo que el primer canal se codifica por el tiempo que transcurre desde el primer pulso al segundo pulso, el segundo canal por el tiempo que transcurre desde el segundo pulso al tercero... y el canal 8 por el tiempo que transcurre desde el 8º pulso al 9º, y tras una pausa determinada se volverá a inyectar otra trama de pulsos nuevos con la codificación de los 8 canales.

  • En la parte del medio vemos la trama invertida, esta suele ser la forma real como se recibirían las tramas ya que es más eficiente la transmisión RC con la señal invertida.

  • En la parte inferior se pretende mostrar que con cada pulso recibido nuestro sistema digital recibirá un pulso de entrada (flanco positivo) con el cual gestionará la máquina de estados adecuada. Se empleará por lo tanto un detector de flancos negativos para crear dichos pulsos.

  • Como la distancia entre pulsos será un valor bajo ( entre [0.8-2.5 ms] en sistemas de radio control normales ), utilizaremos ese tiempo máximo para saber si estamos en la pausa de la trama o no, digamos que lo utilizaremos para sincronizar la señal y saber donde nos encontramos ya que la señal se podría perder momentáneamente, o algún pulso se podría perder y se estaría decodificando el canal incorrecto ( corrimiento de los canales) por lo cual se hará uso de un contador de overflow/sincronismo para detectar cuando hay una pausa mayor de 4 ms y así poder llevar la máquina de estados a su punto de partida inicial y saber que el próximo pulso entrante será el inicio del canal 1. Los pulsos PPM recibidos se usarán a su vez para resetear el contador de overflow/sincronismo de forma que entre los pulsos PPM recibidos nunca se desbordará el contador ya que nunca pasarán más de 4 ms y solo cuando aparezca la pausa entre tramas se reseteará llevando la máquina al estado inicial.

  • En la siguiente figura mostramos un esquema del sistema digital a crear.

Decodificador PPM 8 Canales

Clone this wiki locally