OpenDCC OpenDecoder - un décodeur DCC pour accessoires à faire soi-même


Vue d'ensemble


    Sur les mêmes principes que le projet station de commande en open source,vous trouverez dans cette page des décodeurs DCC à faire soi-même.
    Ces décodeurs sont basés sur le microcontrôleur AVR d'Atmel. Il en existe trois versions différentes + une animat, l'une simple avec ATtiny2313 (version 1), un circuit un peu plus élaboré avec ATmega8515 (version 2 standard) et un circuit avec ATMEGA162 offrant la capacité BiDi (version 3). Toutes les versions sont écrits en C, mais diffèrent bien sûr en taille de la mémoire sur la puce, et donc aussi dans la variété des fonctions mises en œuvre.
    Depuis 2009, une ramification avec des capacités considérablement améliorées a été ajouté (Animat). Ainsi que des décodeurs dérivés avec d'autres processeurs, par exemple avec atmega8.

    Ces décodeurs sont programmés en C, ce qui est un avantage car il est ainsi aisé de créer un décodeur complétement spécialisé pour des applications particulières. Nous utilisons ces décodeurs en grand nombre dans le réseau de notre club.

    Platine OpenDecoder Platine OpenDecoder2
    Décodeur Version 1 Décodeur Version 2

Matériel

    Il existe quatre plates-formes matérielles différentes:
  • Matériel 1:
    Cette plate-forme matérielle simple est basée sur ATtiny2313 (2k flash) aux dimensions 50 * 80mm en circuit imprimé simple face. Elle utilise des grands borniers à vis, un bouton de programmation, une LED d'état, un cavalier supplémentaire et une alimentation séparée, l'entrée DCC est opto-couplée. Les composants à piquer sont utilisés, Il existe également une version en CMS (Composants Montés en Surface).

    En fonction du logiciel utilisé, différents décodeur peuvent être réalisés:

    Type Application
    Décodeur aiguillage et interrupteur commande d'aiguillage ou de signaux
    longueurs d'impulsions programmables
    commande de signaux simples
    commande des feux de signalisation
    Décodeur pour signaux Commutation de signaux lumineux, jusqu'à 7 aspects
    y compris gradation et phase sombre intermédiaire
    feux routier clignotant avec contrôle pour les voitures Faller
    feux de carrefour avec contrôle de l'aimant d'arrêt pour les voitures Faller
    Décodeur pour lumière illuminations jusqu'à 8 rue ou bâtiments
    simulation des tubes néon
    Contrôle aléatoire des transitions jour-nuit
    Décodeur lampe à sodium éclairage public avec simulation de lampes à vapeur de sodium, y compris commande aléatoire d'une lampe défectueuse
    Décodeur créant des effets Lumière clignotante signalant des travaux, lumière circulante
    colonne lumineuse pour publicité et parc d'attraction, comprenant des transitions progressives
    Décodeur pour moteur décodeur spécial pour le contrôle d'un ferry avec contrôle de moteur (pwm) et boutons de commande locale
    Décodeur chien de garde Réglage du temps avant arrêt du réseau en cas de panne de l'ordinateur ou de la station centrale.

    Une variante de ce décodeur aux dimensions 18 * 200mm sert de lien de signalisation pour la gare cachée. Cette variante a déjà intégré les LEDs rouge-vert pour quatre pistes.


  • Matériel 2:
    Ce décodeur est basé sur ATmega8515 (8k flash, 512 octets de RAM et 512 octets d'EEPROM). Pour des raisons de coût cette plateforme utilise des CMS, mais l'implentation n'est pas serrée autorisant ainsi une soudure manuelle.
    Il existe également une version avec des composants DIL, ainsi qu'une version réduite utilisable pour le contrôle d'asservissement.

    La carte a pour dimensions 80*50mm en circuit imprimé double face, de grands borniers à vis et les mêmes trous de fixation que la version 1. Il y a 8 sorties ou entrées configurables. Une impulsion d'acquittement peut-être envoyé en retour. L'interface DCC est entièrement opto-couplée et selon le positionnement des cavaliers d'option soudés, le décodeur est alimenté par une alimentation externe ou par le signal DCC.
    Il est prévu deux connecteurs servos et comme variante une interface DMX peut être adapté (émission et réception). Le contrôle de moteurs est possible avec une carte d'extension.
    Il existe également une version du matériel 2 sans CMS et une version réduite seulement pour servo control.
    Le décodeur peut être programmé avec CV et fournit une impulsion d'acquittement, afin qu'il puisse agir pleinement comme un décodeur d'accessoire compatible NRMA (mais ce n'est pas obligatoire :-).

    En fonction du logiciel utilisé, différents décodeur peuvent être réalisés:

    TypeApplication
    décodeur servos double mouvement de constituants d'accessoires sur le réseau
    par exemple drapeaux, barrières, balançoires, portes
    courbes de mouvements librement définissables en temps et espace, donnant des mouvements réalistes.
    Des précautions particulières ont été prises pour obtenir un mouvement du servo sans saccades. On peut connecter deux servos.
    Décodeur pour servo multiposition mouvement de constituants d'accessoires sur le réseau
    jusqu'à 8 positions définies, pas d'arrêt intermédiaire, opération sans à coup (soit linéaire, soit avec accélération puis freinage). Le fonctionnement en mode manuel est possible.
    Décodeur d'aiguillage avec rétroaction Commande d'aiguillage avec contrôle de la position réelle
    information de la station centrale en retour en cas d'aiguillage non fonctionnel avec frein d'urgence si nécessaire. durée d'impulsion des signaux de commutation programmable.
    Décodeur DMX décodeur polyvalent pour lumières de la salle avec Interface DCC vers DMX et macro-programmation souple, semblable au contrôle de la lumière ambiante de la station centrale. Inclus un contrôleur chien de garde.
    Décodeur pour kermesse décodeur polyvalent comprenant contrôle de moteurs et de lumières, spécialement pour les rond points et parcs de loisirs.
    différentes vitesses pour les lumières, contrôle moteur par PWM (Modulation de Largeur)
    décodeur pour sémaphore et lumière programmation libre de sémaphores jusqu'à 16 aspects;
    Les panneaux de signalisation (feu rouge, passage à niveau, clignotant en alternance);
    Effets de lumière comme colonne d'éclairage, feux, Night Rider, flash, flash doubles etc également des signaux avec des commandes adaptées pour la Belgique. Fondu réglable.

  • Matériel 3:

    Ce décodeur utilise l'ATmega162 (8k Flash, 1024 octets RAM and 512 octets EEPROM). Le circuit imprimé utilise essentiellement des CMS, mais toujours avec des composants assez grand permettant ainsi une soudure manuelle. Ce circuit sera disponible monté dans le commerce.

    Le circuit a comme dimension 73*82mm en double face, grand borniers à vis sur une face et au choix DMX Easynet ou XpressNet sur l'autre face. Loconet sera également disponible (après clarification des questions de licence). Il est prévu deux sorties d'asservissement, 4 sorties relais et 4 entrées. Une impulsion d'acquittement et NMRA BiDi peuvent être retournés. L'interface DCC est entièrement opto-couplée et il y a des cavaliers d'option à souder pour choisir entre une alimentation externe ou alimentation par DCC.
    Le décodeur peut être programmé avec CV et fournit une impulsion d'acquittement, afin qu'il puisse agir pleinement comme un décodeur d'accessoire compatible NRMA (mais ce n'est pas obligatoire :-). BiDi (RailCom) sera disponible.
    Depuis 2008-02 ce décodeur est disponible commercialement. Tams propose deux versions: SD-22 (décodeur pour servo) et DMX-1 (Décodeur DMX).

    Les logiciels suivants existent pour la version 3:

    TypeApplication
    Décodeur servo double mouvement de parties d'accesoires sur le réseau
    par exemple drapeaux, barrières, balançoires, portes
    courbes de mouvements librement définissables en temps et espace, donnant des mouvements réalistes.
    Des précautions particulières ont été prises pour obtenir un mouvement du servo sans saccades. On peut connecter deux servos.
    incluant le noyau polarisation dans les commutateurs
    Décodeur servo multi-positions Déplacement d'accessoires sur le réseau.
    Jusqu'à 8 positions différentes cibles directement accessible, sans arrêt intermédiaire; contrôle en douceur, que ce soit directement ou avec départ / freinage en douceur.
    Le mode manuel existe.
    Décodeur DMX (prévu) décodeur polyvalent pour lumières de la salle avec Interface DCC vers DMX et macro-programmation souple, semblable au contrôle de la lumière ambiante de la station centrale. Inclus un contrôleur chien de garde.
    sorties pour relais Commutation indépendante de 4 sorties relais, également avec mode manuel. (Inclus dans chacun des logiciels ci-dessus)

  • AniMat:

    Cet ensemble peut être utilisé en tant que décodeur. Il utilise un AT90can128 (128k Flash, 4096 octets RAM and 4096 octets EEPROM). Cette carte utilise des CMS de petites tailles et demande de l'expérience pour sa réalisation.

    Le circuit a comme dimension 80x50mm en double face. Il fournit 2 sorties servo, 8 sorties générales de commutation et 8 entrées. Deux ponts-H sont pour la commande de moteurs avec contrôle de charge. Les sons peuvent être joués avec un chip MP3, une carte microSD et un amplificateur audio. Du côté de DCC une impulsion d'Acquittement et BiDi (RailCom) peuvent être retourné. L'interface DCC est opto-couplée et il y a les cavaliers d'option pour choisir entre alimentation externe ou apr le signal DCC.

Logiciel:

  • Décodeur aiguillage et interrupteur:
    (pour le matériel V.1)
    Ce logiciel implémente un décodeur quadruple (4 sorties) pour stimulations d'aimant (comme roco 40295 / 40296) ou pour signaux lumineux. La durée de l'impulsion est paramétrable parmi: 0.25s, 0.5s 1s and 2s. D'autres modes sont pris en charge pour le décodeur signaux ayant 2 aspects, signaux ayant 3 aspects et 4 aspects et le contrôle d'un feu de circulation.
    Le téléchargement contient des versions précompilées pour des horloges à 10MHz et 8MHz.

  • Décodeur aiguillage et interrupteur:
    (pour le matériel V.2)
    Ce logiciel a les mêmes fonctionnalités que celui ci-dessus à l'exception des signaux à plus de deux aspects, mais ajoute la programmation des CV et toutes les commandes NRMA. La position réelle des aiguillages est détectée, les aiguillages en défaut sont affichés.

  • Décodeur pour signaux:
    (pour le matériel V.1)
    Avec ce logiciel on obtient un décodeur spécifique pour les signaux lumineux. Presque tous les types de signaux peuvent être contrôlés (2 aspects ou plus). Les signaux pour la DB (Deutsche Bahn) sont actuellement implémentés avec une correcte gradation et de courte phase sombre entre les aspects de signaux de la DB.
    Vous trouverez une bonne présentation des signaux sur le site www.stellwerke.de
    Si me signal principal et les signaux d'annonce (d'alerte) sont sur le même mât, le signal d'alerte doit rester sombre lorsque le signal principal affiche stop (HP00) ou du trafic de manœuvre (SH1).

  • Décodeur pour lumière:
    (pour le matériel V.1)
    Avec ce logiciel on obtient un décodeur spécifique pour le contrôle de la lumière. Chaque sortie peut être contrôlée soit individuellement soit par groupe avec un délai aléatoire pour allumer ou éteindre. Par exemple lors du passage de la nuit au jour les lumières peuvent peu à peu s'allumer dans des maisons ou s'éteindre à nouveau. C'est particulièrement intéressant en simultané du contrôle de la lumière de la pièce avec OpenDCC. Une autre mode simule le fait d'allumer les tubes fluorescents d'une rue y compris le vacillement caractéristique des tubes au néon lors de la mise en marche.

  • Décodeur créant des effets:
    (pour le matériel V.1)
    Avec ce logiciel on obtient un décodeur spécifique pour des effets lumineux, essentiellement pour des chenillards et des colonnes lumineuses. Tous les modes utilisent un chronomètre souple, qui réalise la gradation entre différentes sorties selon une courbe prédéfinie. Une application typique est celle des Feux flash comme ceux utilisés sur les chantiers routiers.

  • Décodeur DMX:
    (pour le matériel V.2 et V.3)
    Décodeur pour les lumières de la salle avec interface DCC vers DMX souple et macro-programmable, similaire au contrôle de la lumière de la salle dans la station centrale. Entrées additionnelles pour contrôle manuel et chien de garde.

  • Décodeur chien de garde:
    (pour le matériel V.1, V.2 et V.3)
    Avec ce logiciel on obtient un décodeur spécifique pour la surveillance du système.
    A l'initialisation l'alimentation du système est activée. Si une commande de commutation est envoyée, le système reste allumé pour 2s. Si la commande de commutation est répétée, le temps sera prolongé de 2S. Le relais de sortie est maintenu en permanence par appel cyclique de cette adresse de commutation, ainsi le système reste en marche. Si cette adresse n'est pas utilisée pendant 2 sec (parce que le PC ou la centrale n'ont pas réussi), le relais retombe et le système passe en arrêt d'urgence.
    Ensemble avec Railware ou "Traincontroller" le bon fonctionnement du PC et de la station centrale peuvent être contrôlé. En plus une entrée de déclenchement externe peut être utilisée pour connecter un arrêt d'urgence séparé, qui agit en parallèle du contrôle normal.
    Si un arrêt d'urgence est émis, les actions suivantes se produisent:
      le courant rail est coupé
      un message est envoyé au PC
      une alarme (soit une lumière clignotante soit un klaxon) est activée pour un court laps de temps.
  • Décodeur pour moteur:
    (pour le matériel V.1)
    Ceci est un exemple d'un décodeur spécial dédié à une tâche particulière. Un moteur à courant continu déplace un objet (par exemple un ferry) entraîné vers l'arrière et vers l'avant entre les deux points d'extrémité. Le moteur est accéléré ou freiné avec une modulation de largeur d'impulsion à haute fréquence PWM, des cellules photoélectriques sont utilisés pour enregistrer la position et des touches pour la commande manuelle.
    téléchargement : Motordecoder Programm V0.2
    Outre les exemples ci-dessus, il n'est pas difficile de construire son propre décodeur pour des besoins particuliers. OpenDecoder est écrit en C et clairement organisé en module: récepteur DCC, décodage et code d'action. La fonctionnalité de base pour la gradation et le clignotement peut également être utilisée.

    J'ai également eu des rapports sur l'utilisation modifiée du décodeur: sorties inversées, sorties de commutation relais, avec ponts H pour moteurs d'entraînement et comme décodeur accessoire avec 8 sorties.

    gcc (WinAVR) a été utilisé comme plateforme de développement. Les outils nécessaires sont open source et peuvent être utilisé gratuitement. Ici vous trouverez des informations sur la mise en route. Et cette page donne quelques explications sur le logiciel.

Copyright:

    Le logiciel est publié sous GNU Public License. Si quelqu'un met au point un nouveau décodeur, je tiens à le publier ici.

    Et si quelqu'un utilise la conception, je considère comme correct d'aider le projet (par exemple en traduisant la page Web ou en écrivant un tutoriel), de participer aux frais avec un don ou de me payer une bière;-).
    Vous pouvez me contacter par Mail ( ) ou payer avec paypal.

Documents / Links