quarta-feira, 26 de julho de 2017

COMO FUNCIONA O DCC++ Parte 1

Hoje não é mais um mistérios no mundo do ferromodelismo a possibilidade de ter uma central DCC utilizando o Arduino o famoso DCC++.

Objetivo destes artigos é apresentar de forma prática como funciona o sistema DCC++.




Partes do sistema DCC++: 






1. Sketch DCC++: É o programa que será executado pela placa Arduino. Esse programa foi desenvolvido por Gregg E. Berman e permite tanto gerar o sinal DCC para os Decoders como também ler a sua programação (Valor dos CVs). 


2. Driver de Potencia: Este é o Calcanhar de Aquiles de quem se aventura a montar um sistema DCC++, ouso dizer que 99% dos que tiveram problemas em montar a central DCC++ tiveram problemas aqui.

A placa do Arduino gera um sinal elétrico de 5V de baixa potência, que não pode ser ligado diretamente aos trilhos da maquete, precisamos de um circuito eletrônico para gerar o sinal elétrico para os trilhos com 12V a 15V com vários Amperes para alimentar nossos trens.

O driver mais utilizado é a placa Shield Motor Versão R3. Esta placa pode ser facilmente conectada a uma placa Arduino Uno ou Mega e possui duas saídas, uma para o trilho principal e outra para o trilho de programação dos Decoders.


O maior problema é que poucas placas de potência (módulos) são compatíveis com um circuito DCC com Arduino, por isso muitos que tentam montar um sistema DCC não tem sucesso e acabam desistindo dessa alternativa.


3. Interface de Controle: Interface de Controle: O Arduino com o DCC++ gera a codificação DCC, mas você precisará de alguma coisa para dizer a esta placa o que fazer. Esta interface pode ser um computador, um celular ou mesmo outro Arduino, claro que é necessário rodar um programa compatível com o DCC++ nesses dispositivos.

A interface mais utilizada com o DCC++ é o software JMRI em um computador. Este software dispõe muitos recursos para controle e programação dos decoder's.




Eletricidade do sinal DCC

Antes de falar sobre o Arduino e o DCC++ vamos entender como funcionam os sinais elétricos do DCC para então compreender como o Arduíno irá gerar esse sinal:


1) Geração do Sinal DCC:

O sinal DCC tem a tensão da fonte é invertida em vários ciclos por segundo conforme o comando enviado da Central para os Decoders:




Para que o sinal seja válido é necessário que os pulsos se alternem de positivo para negativo sem nenhum intervalo com tensão zero na transição.

Se entre os pulsos positivos e negativos ocorrem intervalos com zero volts o sinal DCC será inválido. 


Em resumo para gerar o sinal DCC, a central DCC precisa inverter a polaridade da alimentação dos trilhos conforme a codificação sem intervalo de transição da polaridade;


Na eletrônica existe um circuito chamado Ponte H que faz essa "alternância de polaridade" necessário para gerar o sinal DCC. Ele funciona como duas chaves duplas S1 e S2 que vamos chamar de Direção:



Situação 1: Quando o circuito está desativado as chaves S1 e S2 estão desligadas;










Situação 2: Quando é acionada a chave S1, vamos dizer Direção 1, a energia flui através da chave S1a, em direção a chave S1b geram um sinal Positivo na Saída.










Situação 3: Quando é acionada a chave S2, vamos dizer Direção 2,o sinal de a energia flui através da chave S2b em direção a chave S2a, gerando um sinal Negativo na Saída;








Para que o sistema DCC funcione, precisamos de um Driver de Potencia (Placa) que utilize um circuito de Ponte H em que as chaves S1 e S2 sejam alternadas simultaneamente. Se isso não ocorrer teremos um intervalo entre o Sinal Positivo e Sinal Negativo que ira invalidar a codificação DCC.

Isso só é possível se o Driver de Potencia (Placa) tiver um único pino para controle da Direção (Chaves S1 e S2).



2) Leitura de Corrente


A leitura de corrente consumida nos trilhos tem duas finalidades: a) Proteção do Circuito b) Retorno Valor de CVs de Decoders.


a) No trilho de Operação a leitura de corrente que está sendo consumida serve para proteger o circuito de sobrecargas que poderiam queimar a fonte ou o Driver de Potencia.

b) Retorno Valor de CVs de Decoders: Conforme norma da NMRA, os Decoders conversao com a Central DCC com pequenos pulsos de consumo de energia, conforme esses pulsos a Central consegue entender o valor que está gravado em determinado CV do decoder.


Para que estes dois recursos funcionem é necessário que a Driver de Potencia (Placa) tenha esse recurso de retorno de corrente consumida.




SHIELD MOTOR R3


Placa Shield Motor R3


A placa Shield Motor R3 é o Driver de Potência recomendado para DCC++. Ela foi a placa escolhida pelo criador do DCC++ Gregg E. Berman por atender aos requisitos citados acima: 1) Um único pino para controle da Direção e 2) Retorno da Corrente consumida na saída e poder ser conectada diretamente as placas Arduino UNO e Arduino MEGA.


No próximo post vamos ver como enviar comandos DCC diretamente do Arduino com DCC++






3 comentários:

  1. Olá, excelente todo teu material e tutoriais, está de parabéns com louvor! Construí um DCC++, ficou muito bom! Gostaria de sugerir que fizesse também um tutorial de como fazer um controle de mão ou painel, para não ser necessário o uso do JMRI, note nem nada mais, deste modo o DCC++ ficaria completo. Se souber onde tem um tutorial já pronto também ajudaria. Grato e saudações. OBS: sou ferromodelista aqui em São José dos Campos - SP

    ResponderExcluir
  2. Muitos controladores DCC tem o sinal de relógio, como capturar esse sinal no Arduíno para identificar o horário simulado pelo controlador, pois é passível simular no controlador um relógio rápido, a ideia e colocar um Arduino para ler esse sinal e colocar um display mostrando esse relógio.

    ResponderExcluir