PPM – Breve explicação

Fóruns Específicos Base de conhecimento PPM – Breve explicação

  • Este tópico está vazio.
  • Post

    Bom, como existem muitas dúvidas, resolvi fazer este post para tentar explicar o que é um sinal PPM. Quero deixar bem claro que nao sou tecnico em eletrônica e nem trabalho na área, é apenas um hobby….entao qualquer besteira dita aqui, por favor me corrigir! Mas, vamos lá.

    PPM – Pulse Position Modulation – É uma forma de `codificar` os canais do seu rádio em uma frame, ou pacote de dados. Imagine como o código morse: vc tem apenas uma linha de comunicação (um som ou uma luz) e precisa passar vários dados por ela…como fazer isso? Criando uma sequencia pré-definida de dados!

    Quando o seu rádio enviar o sinal PPM para o transmissor (seja ele interno ou externo), ele envia um pacote com a posição atual dos canais (sticks) em um formato pré-definido. Um exemplo do que estou falando é esta figura:

    Esta imagem eu gerei pelo meu osciloscopio, capturando o sinal do meu rádio Futaba no modo de 8 canais PPM. Esta é a sequencia PPM que o rádio envia para o módulo. Se você reparar, existe uma linha e certos `quadrados` nesta linha. Cada quadrado deste é chamado de pulso e este representa um canal. Repare no número “1” do lado esquerdo da imagem. Imaginem que existe uma linha horizontal neste numero 1, esta linha representa 0v (zero volts). A linha amarela (o sinal do rádio), possui uma amplitude de 2,72v, como é informado no gráfico. Agora você me pergunta: como isso funciona? Simples: o sinal PPM nada mais é do que a variação entre 0v e 2.72v, no caso do meu rádio. Se você reparar, vai perceber que o rádio mantem SEMPRE o sinal como alto, ou seja, 2,72v. Quando vai começar a inserção de um canal especifico, o rádio baixa o sinal para 0v por exatamente 300us (micro-segundos, ou 0.3ms) e sobe novamente para 2,72v, mantendo este sinal `alto` de acordo com a posição do stick…..por esse motivo cada pulso da imagem tem um tamanho diferente.

    Vamos supor que o primeiro pulso da imagem acima seja do canal 3, stick do acelerador. Cada vez que eu mexer o stick, o `tamanho` do pulso será alterado. Isto é, a duração do pulso será maior ou menor. Na imagem, eu coloquei dois marcados para medir a duração do pulso. Neste caso, estava medindo 700us (micro segundos). A duração máxima de um pulso (contando os 300us de separação) é de 2ms, ou 2000us.

    Nesta outra imagem é possivel ver o mesmo pulso, agora com 1.540ms de tempo (sem contar o separador).  Para que o receptor saiba qual canal é qual canal e nao confunda tudo, existe um tempo maior de separação entre cada pacote, como é possível verificar na primeira imagem (a linha fica um tempo em nivel alto no começo e no fim do frame). A partir deste tempo o receptor sabe que esta começando ou terminando um pacote e na proxima oscilação de 0 para 1 (0v para 2.72v), já é o primeiro canal.

    Para facilitar a compração, coloquei essas duas imagens com o mesmo sinal, porém com os sticks do rádio em posições diferentes, mudando a posição dos servos.

    Esta já é uma imagem do mesmo rádio (Futaba 12FG), porém no modo de 12 canais. Reparem que a mudança já é presente no indicador de inicio/fim do frame. Ao invés de ser nivel alto constante e baixar o nivel apenas quando inicia o canal, em 12 canais nao funciona assim…..ele já alterna entre nivel lógico 0 e 1 mesmo antes dos canais.

    O tamanho total do frame também é maior, o que causa um problema de compatibilidade com os módulos UHF (DragonLink, ChainLink, etc), fazendo com que eles nao possam identificar o sinal. O tamanho total deste frame da imagem é de 17.6ms, mas conforme os canais sal alterados, este frame pode aumentar ou diminuir o tamanho.

    Um outro detalhe importante é que trabalhando em 12 canais, ao modificar um canal (acelerador, por exemplo), nao é apenas a parte `positiva` do pulso que é modificada, mas sim a parte positiva E negativa também, conforme a figura. Qd eu altero a posição do stick, tanto a porção positiva é alterada como também a porção negativa, ou nivel lógico 0.

    Reparou? E se você reparar nas informações no canto inferior da tela, poderá ver o tamanho do pulso positivo e da parte negativa, no canto direito da tela de informações (+wid e -wid), somando os dois vocês tem 960us, conforme é exibido na informação do canto superior direito. No modo de 8 canais, apenas a parte positiva é alterada quando movimentamos um stick.

    O que o receptor que esta no aeromodelo faz é simplesmente quebrar este pacote e enviar cada um desses pulsos para o servo correspondente. Se o canal 1 estiver com um pulso de 1.500ms, este é o tempo que o servo irá receber e processador. Internamente, o servo sabe que se o pulso é de 1.500ms, ele TEM que ir para posição X….se o pulso for de 800ms, ele tem que ir para posição Y…e assim por diante.

    Aqui, uma demonstração de um sinal no modo 8 canais, onde estou alterando o valor de um canal (mexendo no stick):

    http://www.youtube.com/watch?v=lfEIdroYI0s

    Aqui, o mesmo teste…porém, em 12 canais. Repare que a parte positiva e negativa sao alteradas proporcionalmente:

    http://www.youtube.com/watch?v=OIKEcGQQ1ps

    Bom, é isso ai…..espero nao ter confundido mais ainda!! hehehehe

Visualizando 11 respostas - 1 até 11 (de um total de 11)
  • Replies
    JuvertoKR
    Membro
    none

    Excelente!

    Mto bom. Matou uma curiosidade minha de uma forma mais tranquila que as explicações que já vi na net. Valeu!!!!

    Franco
    Membro
    none

    No modo 8 canais o tamanho do frame é fixo independente da posição dos sticks, já no modo 12ch é variável?

    O tamanho no modo 8 canais é o 20ms clássico? abraços

    Boa explicação!

    Exato Franco, no modo 12ch o tempo total é variavel. Qt ao tempo em 8ch, eu nao me lembro o valor exato agora.

    Eu acredito que não seja o tempo total o maior problema com os modulos UHF, mas sim como é feita a divisão dos frames. No modo de 8 canais, repare que o sinal fical em nivel alto por um certo tempo, só depois ele baixa o nivel e ‘pulsa’ os canais. Já no modo 12 canais, esta separação é totalmente diferente. Da pra perceber que metade do tempo o sinal fica em nivel baixo depois do ultimo pulso e metade do tempo o sinal fica em nivel alto…..e só depois disso ele começa a modular os canais. Não é nada e outro mundo, mas precisa de um algoritmo totalmente diferente pra tratar estes dois tipos de frames.

    Franco Ripoll Leite disse:

    No modo 8 canais o tamanho do frame é fixo independente da posição dos sticks, já no modo 12ch é variável?

    O tamanho no modo 8 canais é o 20ms clássico? abraços

    Eu sei dizer que certa vez tive um contratempo, acostumado com o 2.4 que é só ir ligando, esqueci e fui ligando meu 72, tudo normal, teste de alcance normal, e fomos pra vôo. algum tempo depois um colega pediu ajuda a outro  porque o aero dele estava com “algum problema” (em solo) na preparação pra vôo. Resumindo o assunto, estávamos na mesma frequência, sendo que eu já voando tranquilo em PCM,  ele na bancada cheio de problemas em PPM.

    Outro incidente foi que estando acostumado com o 2.4 que não tem antena, fui voar num outro dia com o tal PCM, voei a mais ou menos uns 500metros, por uns 10 minutos antes de ir pro FPV. Ao descer fui fechar a antena e levei um susto, ela já estava fechada, voei sem a antena do rádio e não aconteceu nada, sorte que eu tenho o costume de dobrar a antena do receptor, mas mesmo assim foi muito longe, imagine com a antena.

    Eu ia criar um topico perguntando sobre o sinal PPM, mas vou aproveitar o seu.

    Alguém poderia me explicar qual a função do canal PPM nos receptores UHF como DragonLink, RangLink/ChainLink?

    A saida PPM SUM dos receptores é pra uso em sistemas OSD. Ao invez de ligar 8 ou 12 canais do Rx no OSD, vc liga só um fio, que passa todos os canais. É claro, o OSD (ou outro dispositivo) tem quer aceitar entrada PPM. Outro exemplo de uso são as placas controladoras para multi rotores…..vc nao liga todos os canais com uma extensão por canal, basta ligar só o PPM SUM e todos os canais sao passados por ali….é claro, a placa tb tem q ser compativel.

    O DragonOSD é um ótimo exemplo. Ele só tem uma entrada (conector) de canal, só aceita PPM SUM….se o seu receptor nao tem esse tipo de sinal, nao é possivel usar o DragonOSD com todos os recursos (piloto automatico, return to home, estabilização, etc…)

    Excelente explicação. Saberiam me dizer qual é a tolerância de entrada de sinal PPM no DragonLinf, me referindo a voltagem? Meu Turnigy 9x oferece uma tensão de +4V para o sinal PPM e funciona muito bem com o DragonLink. Tenho um JR 72MHz, que gostaria de usar com o DragonLink, mas percebi que ele fornece +9V na saída PPM. Daí a necessidade de eu saber a tolerância do DragonLink. Obrigado.

    Boa noite , somente um adendo , o pulso não altera de tamanho, somente de posição PPM (pulse position modulation), veja no seu osciloscopio somente a parte negativa , vera que ela se mantem constante alterando somente a posição.
    Moust
    Membro
    none

    Explicação muito completa!

    Uma pergunta: o que acontece quando o sinal do TX está fraco (o aeromodelo está muito distante)?

    Queria saber se é possível usar um canal livre do RX para medir o sinal do rádio, se está bom ou quase sendo perdido. Seria algo parecido com o RSSI. Como meu rádio Turnigy 9X não tem essa função (até tem conforme um tutorial aqui no forum, mas tenho medo de estragar o CI com o ferro de solda), estava pensando em alguma solução

    Abssssssss!

Visualizando 11 respostas - 1 até 11 (de um total de 11)
  • Você deve fazer login para responder a este tópico.