Decoder DCC per servocomandi
Moderatore: Seba55
-
- TrenoDigitale
- Messaggi: 90
- Iscritto il: sabato 13 novembre 2004, 20:47
- Scala: H0
- Ho il plastico: Si
- La mia centrale digitale.: Analogico
- Località: Prato
- Contatta:
Decoder DCC per servocomandi
Ciao a tutti,
ho completato lo sviluppo di un decoder DCC capace di pilotare 7 servocomandi per l'azionamento "lento" degli scambi completamente originale e autocostruito sia per l'hardware sia per il firmware del microcontrollore.
Le caratteristiche abbastanza originali di questo decoder sono la possibilita' di settare le CV dell'indirizzo e la posizione dei 7 servocomandi senza DCC e per la precisione con solo 3 tasti e un LED e la gestione dell'impulso ai servocomandi generato da un singolo PWM hardware e quindi che non porta via tempo alla CPU che riesce a gestire il tutto senza "buchi" di funzionamento.
La gestione dell'indirizzo e della posizione dei servocomandi viene fatta con due tasti (+) e (-) che incrementano o decrementano l'indirizzo o fanno ruotare in senso orario o antiorario di un piccolo angolo il servocomando, fino al raggiungimento del corretto posizionamento sia per la posizione di corretto tracciato sia per la deviata.
La gestione dei 7 segnali di controllo ai servocomandi viene fatto con un singolo PWM a frequenza 7 volte superiore 50Hz*7=350Hz e cambiando ad ogni slot temporale il valore del duty cycle: questo segnale "composito" viene poi demultiplexato (azz... parolona!) ai singoli servocomandi dando l'alimentazione alle singole resistenze sui collettori dell'ULN2803 nei momenti "opportuni". Mi sono inventato questo modo per avere 7 PWM da un singolo PWM... e questo fa capire perche' non era possibile fare un pilotaggio del genere per piu' di 7 servocomandi e rispettare il ciclo di 20ms (infatti 2.8ms*7=20ms, mentre con 8 servocomandi si arrivava a 25ms o 40Hz..)
E' compatibile con tutti i servocomandi piu' diffusi in commercio (Futaba, Hitec..), queste sono le sue caratteristiche principali:
<<Hardware>>
* Ingresso DCC optoisolato, max 5mA di carico sulla linea DCC
* Ingresso di alimentazione separato in corrente alternata (min 5VAC - max 18VAC) o in corrente continua (7VDC - 24VDC)
* Corrente erogata dal decoder 4A - 5A totali continuativi
* Pilotaggio di 7 uscite per servocomandi analogici, max 1A continuo per uscita
* ...
Visita questo link, per un approfondimento sull'hardware
<<Firmware>>
* Decoder per accessori standard, indirizzo da 1 a 510 (9 bit)
* Programmabile sul "main track" o sul binario di programmazione
* Ogni uscita del decoder controlla un singolo servocomando, ultima uscita non usata
* Programmazione 7+7 CV per gestione posizioni dei servocomandi
* Programmazione 7 CV per gestione velocita' di rotazione
* ...
mentre per avere un riferimento sulle funzioni del firmware il link e' questo.
Ciao,
Davide
Una foto del decoder:
ho completato lo sviluppo di un decoder DCC capace di pilotare 7 servocomandi per l'azionamento "lento" degli scambi completamente originale e autocostruito sia per l'hardware sia per il firmware del microcontrollore.
Le caratteristiche abbastanza originali di questo decoder sono la possibilita' di settare le CV dell'indirizzo e la posizione dei 7 servocomandi senza DCC e per la precisione con solo 3 tasti e un LED e la gestione dell'impulso ai servocomandi generato da un singolo PWM hardware e quindi che non porta via tempo alla CPU che riesce a gestire il tutto senza "buchi" di funzionamento.
La gestione dell'indirizzo e della posizione dei servocomandi viene fatta con due tasti (+) e (-) che incrementano o decrementano l'indirizzo o fanno ruotare in senso orario o antiorario di un piccolo angolo il servocomando, fino al raggiungimento del corretto posizionamento sia per la posizione di corretto tracciato sia per la deviata.
La gestione dei 7 segnali di controllo ai servocomandi viene fatto con un singolo PWM a frequenza 7 volte superiore 50Hz*7=350Hz e cambiando ad ogni slot temporale il valore del duty cycle: questo segnale "composito" viene poi demultiplexato (azz... parolona!) ai singoli servocomandi dando l'alimentazione alle singole resistenze sui collettori dell'ULN2803 nei momenti "opportuni". Mi sono inventato questo modo per avere 7 PWM da un singolo PWM... e questo fa capire perche' non era possibile fare un pilotaggio del genere per piu' di 7 servocomandi e rispettare il ciclo di 20ms (infatti 2.8ms*7=20ms, mentre con 8 servocomandi si arrivava a 25ms o 40Hz..)
E' compatibile con tutti i servocomandi piu' diffusi in commercio (Futaba, Hitec..), queste sono le sue caratteristiche principali:
<<Hardware>>
* Ingresso DCC optoisolato, max 5mA di carico sulla linea DCC
* Ingresso di alimentazione separato in corrente alternata (min 5VAC - max 18VAC) o in corrente continua (7VDC - 24VDC)
* Corrente erogata dal decoder 4A - 5A totali continuativi
* Pilotaggio di 7 uscite per servocomandi analogici, max 1A continuo per uscita
* ...
Visita questo link, per un approfondimento sull'hardware
<<Firmware>>
* Decoder per accessori standard, indirizzo da 1 a 510 (9 bit)
* Programmabile sul "main track" o sul binario di programmazione
* Ogni uscita del decoder controlla un singolo servocomando, ultima uscita non usata
* Programmazione 7+7 CV per gestione posizioni dei servocomandi
* Programmazione 7 CV per gestione velocita' di rotazione
* ...
mentre per avere un riferimento sulle funzioni del firmware il link e' questo.
Ciao,
Davide
Una foto del decoder:
Gli unici progetti che meritano di essere intrapresi sono quelli a cui non si e' sicuri di arrivare in fondo
-
- TrenoDigitale
- Messaggi: 56
- Iscritto il: giovedì 19 febbraio 2004, 14:22
- Scala: H0
- Ho il plastico: Si
- La mia centrale digitale.: DR5000 e relativi accessori vari
- Località: Savona
Ciao Davide -- e compèlimenti per i progetti tutti interessanti.
ti ho risposto anche sul software e ti ho mandato un messaggio dal tuo sito.
Ma non ho ricevuro risposte. Se puoi mandaùmi una e mail grazie. Ciao Gianni
ti ho risposto anche sul software e ti ho mandato un messaggio dal tuo sito.
Ma non ho ricevuro risposte. Se puoi mandaùmi una e mail grazie. Ciao Gianni
Ultima modifica di cig il giovedì 21 agosto 2008, 14:26, modificato 1 volta in totale.
-
- TrenoDigitale
- Messaggi: 90
- Iscritto il: sabato 13 novembre 2004, 20:47
- Scala: H0
- Ho il plastico: Si
- La mia centrale digitale.: Analogico
- Località: Prato
- Contatta:
Daniele, non so se il Paoletti li abbia (ma ne dubito ), comunque te li puoi fare inviare come campioni gratuiti dalla Microchip, in fondo il servizio di campionatura lo fanno proprio per far provare i loro prodotti... Se hai una e-mail non adatta allo scopo (di tipo free) dimmelo che te li posso inviare direttamente io. Se invece li ordini (pagamento CC) alla Microchip ti consiglio anche di acquistare il PICkit2 per programmarli: programma TUTTI i devices e costa 25€...leggera ha scritto:La collana dei progetti si arricchisce..........
Davide una dritta dove trovare questi PIC ??
Paoletti li ha ?
Daniele
Per me non c'e' nessun problema... anzi la pubblicazione sul sito e' fatta proprio per permettere ad altri di costruirlo, provarlo, modificarlo e, perche' no, anche venderlo!Daniele ce l'hai già sotto occhio per fartelo
Ciao,
Davide
Gli unici progetti che meritano di essere intrapresi sono quelli a cui non si e' sicuri di arrivare in fondo
-
- PlasticoDigitale
- Messaggi: 259
- Iscritto il: domenica 24 febbraio 2008, 12:21
- Scala: N H0
- Ho il plastico: Si
- La mia centrale digitale.: Roco+Lokmaus2+Minimaus autocostruito+NanoX autocostruita
- Località: Trieste
Li vendono direttamente a privati?Davide ha scritto:Se invece li ordini (pagamento CC) alla Microchip ti consiglio anche di acquistare il PICkit2 per programmarli: programma TUTTI i devices e costa 25€...
Ma come lo si collega? Non ha zoccolo: bisogna prevedere dei piedini sul PCB finale?
Paulus Tergestinus Experimentator
-
- TrenoDigitale
- Messaggi: 90
- Iscritto il: sabato 13 novembre 2004, 20:47
- Scala: H0
- Ho il plastico: Si
- La mia centrale digitale.: Analogico
- Località: Prato
- Contatta:
Programatore PIC
Si, vendono a tutti (non come in Italia...) e accettano il pagamento con carta di credito. Se invece vuoi un rivenditore Italiano lo trovi su Futura Elettronica che dovrebbe spedire anche in contrassegno (dove pero' costa 56€!!!). Per programmare i dispositivi a pin passante mi sono costruito su un pezzo di millefori un adattatore con i 5 pin di programmazione (VCC, GND, MCLR, ICSP_DAT, ICSP_CLK) connessi su uno zoccolo a 8 pin, uno a 18 pin, uno a 28 pin e uno a 40 pin (l'idea non e' mia la ho copiata da qui, ma funziona). Se ci fai caso i pin di programmazione per tutti i dispositivi con un certo package hanno la stessa posizione, quindi il gioco e' fatto!!!
Per i PIC SMD, si deve ovviamente prevedere un connettore sul PCB a meno di non possedere uno zoccolo SMD per programmazione come ad esempio questo....
Ciao,
Davide
Per i PIC SMD, si deve ovviamente prevedere un connettore sul PCB a meno di non possedere uno zoccolo SMD per programmazione come ad esempio questo....
Ciao,
Davide
Gli unici progetti che meritano di essere intrapresi sono quelli a cui non si e' sicuri di arrivare in fondo
-
- PlasticoDigitale
- Messaggi: 521
- Iscritto il: lunedì 2 febbraio 2004, 17:50
- Scala: H0
- Ho il plastico: Si
- La mia centrale digitale.: Analogico
- Contatta:
si, devi farti un connettore ICSP sul pcb finale, oppure ti fai un minipcb con su uno zoccolo ZIF e il connettore ICSP
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning
-
- TrenoDigitale
- Messaggi: 90
- Iscritto il: sabato 13 novembre 2004, 20:47
- Scala: H0
- Ho il plastico: Si
- La mia centrale digitale.: Analogico
- Località: Prato
- Contatta:
Se ti puo' aiutare un riferimento "grafico" la connessione e' questa...experimentator ha scritto: Ma come lo si collega? Non ha zoccolo: bisogna prevedere dei piedini sul PCB finale?
Ciao,
Davide
Gli unici progetti che meritano di essere intrapresi sono quelli a cui non si e' sicuri di arrivare in fondo
-
- PlasticoDigitale
- Messaggi: 259
- Iscritto il: domenica 24 febbraio 2008, 12:21
- Scala: N H0
- Ho il plastico: Si
- La mia centrale digitale.: Roco+Lokmaus2+Minimaus autocostruito+NanoX autocostruita
- Località: Trieste
-
- TrenoDigitale
- Messaggi: 90
- Iscritto il: sabato 13 novembre 2004, 20:47
- Scala: H0
- Ho il plastico: Si
- La mia centrale digitale.: Analogico
- Località: Prato
- Contatta:
Ecco la connessione degli zoccoli di programmazione al PICKit2...
e per chi interessa ecco gli schemi del PICKit2, non e' difficile cambiare i componenti SMD in altri che si trovano nel negozio sotto casa.... il fw per il PIC e il software di programmazione sono distribuiti gratuitamente da Microchip....
Ciao
e per chi interessa ecco gli schemi del PICKit2, non e' difficile cambiare i componenti SMD in altri che si trovano nel negozio sotto casa.... il fw per il PIC e il software di programmazione sono distribuiti gratuitamente da Microchip....
Ciao
Gli unici progetti che meritano di essere intrapresi sono quelli a cui non si e' sicuri di arrivare in fondo
-
- PlasticoDigitale
- Messaggi: 259
- Iscritto il: domenica 24 febbraio 2008, 12:21
- Scala: N H0
- Ho il plastico: Si
- La mia centrale digitale.: Roco+Lokmaus2+Minimaus autocostruito+NanoX autocostruita
- Località: Trieste
-
- PlasticoDigitale
- Messaggi: 259
- Iscritto il: sabato 26 aprile 2008, 6:25
- Scala: N
- Ho il plastico: Si
- La mia centrale digitale.: NanoX
- Località: Genova
Chiedo aiuto non solo ai geni dell'elettronica ma anche a chi sa un po' più di me di inglese..o trovato questo sito http://www.mcuhobby.com/articles.php?ar ... rowstart=0 in cui si presenta il clone del pickit 2.da quanto o capito sono state omesse alcune parti poichè servivano a...cosa inoltre o letto male(pag4)o il software è aggiornabile come quello di microkit???grazie a tutti