Informazioni preliminari, caratteristiche elettriche e struttura dei pacchetti DCC. 

Il Dcc da Zero (Parte 1)

 
 

Funzionamento e Codifica Sistema DCC a norme NMRA

Premessa

In questo articolo verrà trattato in modo abbastanza semplice il DCC, partendo da zero, quindi comprensibile per tutti. Verranno tralasciate, in questa prima parte del Dcc da Zero, le funzioni avanzate di controllo e di programmazione dei decoder.

Spiegazione di alcuni termini tecnici

La spiegazione dei termini seguenti e stata fatta nel modo più elementare possibile.

DC = (Direct Current) Corrente Continua

PWM = (Power Wave Modulation) Alimentazione con Modulazione d’Onda

Onda quadra = Segnale che varia nel tempo da un valore min a un max ciclicamente senza passare per valori intermedi.

Ciclo = rappresenta un segnale che passa da un valore iniziale ad un’altro e torna nuovamente a quello di partenza (es. ruota che esegue un giro completo).

Semi Onda = la Semi Onda Positiva (alta) e quella Negativa (bassa), compongono un ciclo.

Frequenza = Numero di cicli eseguiti in un secondo, la sua unita di misura è l’Hertz (Hz).

 

Differenza tra il DCC è il DC classico e PWM

La differenza tra i due sistemi, anche se entrambi sfruttano segnali in Corrente Continua, è che nel sistema classico (no PWM) il segnale e continuo mentre nel DCC viene modulato (segnale onda quadra), cioè si fornisce su una rotaia la tensione di +15V e dopo un certo periodo 0V e così via, molto simile ad alimentazioni PWM.

  • Nel sistema classico il binario viene alimentato con un segnale in DC che varia, tramite un regolatore di tensione, tra lo 0 e un massimo +12V che equivale alla massima velocità del locomotore. Per far cambiare il senso di marcia del rotabile, basta invertire l’alimentazione sul binario tramite deviatori o brutalmente invertendo i fili collegati sul binario.

  • Nel sistema PWM si manda sul binario un onda quadra con un ciclo costante, composto da una semi onda alta (+12) e una bassa (massa). Per far variare la velocità nel modello non si agisce sul voltaggio, ma si cambia la durata della semi onda positiva. Più lunga è la durata della semi onda positiva, minore sarà la durata di quella negativa che comporterà un aumento di velocità del locomotore. Anche in questo caso per far invertire il senso di marcia si devono invertire i collegamenti elettrici come sopra detto per il sistema classico di alimentazione.

  • Nel sistema DCC il segnale inviato alle rotaie e sempre un’onda quadra, in questo caso però non si agisce sulla durata delle semi onde ma sulla durata del ciclo intero(semionda positiva + negativa). Un ciclo più lungo rappresenta un bit con valore 0 e un ciclo corto un bit con valore 1, in pratica sul binario ci sarà una serie di dati 1 e 0 (dati serializzati) che compongono i comandi dcc, i quali indicano alle locomotive cosa fare.

Specifiche Elettriche del DCC

L’alimentazione DCC presente sul binario, onda quadra con ciclo variabile, deve essere compresa da un minimo di +/- 7Volt e un massimo di +/- 22 Volt, di solito si utilizza un tensione di circa +/- 13-15 Volt. La tensione presente sul binario, prendendo come riferimento la Rotaia1 rispetto alla Rotaia2, deve essere, durante la semi onda positiva Rotaia1 > Rotaia2 (Rot.1=+15V Rot.2=0V) e durante la semi onda negativa Rotaia1 < Rotaia2 (Rot.1= 0V Rot.2=+15V). Cosi facendo si fornisce sul binario oltre ai pacchetti (comandi) DCC una tensione DC invertita ciclicamente, che viene utilizzata dalle locomotive in base al senso di marcia impostato. Per viaggiare in una direzione la loco sfrutta solo la semi onda positiva e per la direzione inversa utilizza solo la tensione della semi onda negativa.

 

Codifica Bit a 1 o a 0

Come detto in precedenza l’alimentazione DCC e composta da una serie di cicli di durata variabile. La durata dei cicli server per determinare quando viene inviato un bit a 1 o i bit 0 che poi uniti tra loro in determinate sequenze, impartiscono comandi ai decoder DCC.

Ora vediamo quale deve essere la durata dei cicli per interpretare il valore dei Bit.

  • Bit = 1. La Centralina DCC deve generare un ciclo con una durata compresa tra 110-122 micro secondi (55-61 per semi onda positiva e 55-61 per quella negativa), mentre un decoder deve essere in grado di leggere come bit a 1 un ciclo compreso tra 114-128 uS. Di solito si utilizza una durata intermedia 58uS per ogni semi onda, quindi un ciclo complessivo è di 116uS.

  • Bit = 0. La Centralina DCC deve generare un ciclo con una durata compresa tra 190-19800 uS (95-9900 per ogni semi onda), mentre un decoder deve essere in grado di leggere come bit a 0 un ciclo compreso tra 180-20000 uS. Di solito si utilizza una durata di 116-118 uS per ogni semi onda, quindi un ciclo complessivo è di 232-240 uS. In questo caso ogni singola semi onda non deve superare i 12000 uS.

Riassumendo il tutto si utilizzano 58uS per semi onda (mezzo ciclo) per rappresentare un bit a 1 e 118uS per rappresentare un bit a 0.

Formato pacchetti base DCC

Come detto in precedenza i vari bit trasmessi sui binari andranno a comporre i comandi DCC, qui di seguito vediamo come è composto un pacchetto base di 3 Byte (1Byte=8Bit):

111111111111 0 0AAAAAAA 0 CCCDDDDD 0 EEEEEEEE 1

  • Un preambolo composto da un minimo di 11 bit, prima dell’inizio pacchetto DCC

  • Il pacchetto DCC inizia con un bit a 0, chiamato bit di start.

  • 1° byte contenente l’indirizzo del decoder da impostare, seguito da un bit a 0

  • 2° byte contenente il comando da far eseguire al decoder, seguito da un bit a 0

  • 3° byte contenente il controllo d’errore, risultante dallo XOR tra il 1° e il 2° byte

  • Infine il pacchetto dcc si conclude con un bit a 1, bit di stop.

Significato 2° byte pacchetto di controllo base

Il 2° byte che contiene le informazioni sul comando da far eseguire al decoder, è suddiviso in due parti. la prima parte è costituita da 3 bit mentre la seconda parte da 5 bit. I primi 3 bit specificano il tipo di comando da eseguire, mentre i restanti 5 contengono i dati relativi al comando selezionato. Vediamo ora il comando per gestire direzione e velocità e quello per comandare le funzioni f1-f4 e la funzione luce.

Comando per controllo velocità e direzione 14/28 Step

Per poter impartire ad una locomotiva un comando relativo al senso di marcia e direzione, al solito si invia un pacchetto DCC composto da 3 byte, dove i primi 3 bit del 2° byte del pacchetto DCC siano i seguenti:

  • 011 per gestire verso/velocità direzione normale

  • 010 per verso/velocità con direzione inversa

Dopo questi primi 3 bit i 5 bit restanti servono per regolare la velocità.

Comando per controllo velocità e direzione 128 Step

Per comandare un decoder settato con 128 step bisogna inviare un pacchetto dcc avanzato composto da 4 byte (non da 3 byte). In pratica il 2° byte del pacchetto si sdoppia in altri due byte sempre divisi tra loro da un bit a 0:

  • Il primo dei due è sempre composto da 00111111 che informa il decoder che si sta inviando un comando per verso e velocità a 128 step.

  • Il secondo byte e composto da un primo bit relativo alla direzione e i restanti 7 bit servono per indicare lo step.

Ricapitolando l’intero pacchetto DCC a 4 byte è il seguente:

111111111111 0 0AAAAAAA 0 00111111 0 DVVVVVVV 0 EEEEEEEE 1

Dove le A stanno per indirizzo decoder, D la direzione, V per indicare lo step ed E controllo Errore.

Comando per controllo le Funzioni F1-F4 e Funzioni Luce

Per poter impartire ad una locomotiva un comando relativo al controllo delle funzioni da 1 a 4 più le luci, bisogna che i primi 3 bit del 2° byte del pacchetto DCC siano i seguenti:

  • 100 per funzioni F1-F4 e FL

Dopo questi primi 3 bit i 5 bit restanti servono per attivare/disattivare FL F1-F4:

Comando per controllo decoder accessorio con indirizzo a 9bit (es. Decoder x 4 Scambi)

Per poter governare in dcc un decoder scambi per esempio, si utilizza sempre un pacchetto dcc base da 3Byte, ma con il seguente formato:

11111111111 0 10AAAAAA 0 1AAACDDD 0 EEEEEEEE 1

  • Al solito il preambolo di almeno 11 bit a 1

  • 1 bit a 0, bit di start

  • 1° byte contenente i 6 bit bassi dell’ indirizzo del decoder (totale. 9 bit indirizzo)

  • 2° byte 3bit alti indirizzo decoder invertiti (101 -> 010), DDD sta per numero uscita e C per on off

  • 3° byte controllo errore XOR tra primi due byte

  • 1 bit a 1, bit di stop

Per il momento abbiamo visto le cose essenziali per capire il funzionamento del DCC. In questa prima parte é stata riportata una infarinatura, nella prossima parte vedremo meglio i pacchetti DCC.

Articolo realizzato da Alessandro Tardioli (tardioli.alex@libero.it)

  Ultima Revisione 18-11-2002

Indietro