Home Commandstation
Basis boards Powersupply
Stack boards  
Prijslijst 2023 English
 

Bouwinstructie stack modules

 

Basis board 'DCC-EX'

 


Klik voor vergroten

 

Functionaliteit

Het basis board DCC-EX seriële centrale is een 14 of 16-kanaals1 input en output device voor uitgaande (DCC-) commando's of binnenkomende terugmeldingen. Deze seriële DCC-EX centrale wordt via een USB-kabel (niet meegeleverd) met de besturings-PC verbonden.

1 Afhankelijk van de uiteindelijke configuratie zijn er 14 of 16 pinnen beschikbaar voor input of output via een stack board. Indien de treinbesturingssoftware die je gebruikt bij 'Baanstroom Aan' slechts 1 centrale die opdracht geeft dan heb je 16 vrije pinnen, stuurt de software die opdracht naar alle USB-centrales dan heb je 14 pinnen beschikbaar (pin 3 en 11 vallen dan af). Het is ook mogelijk om de pinnen 3 en 11 beschikbaar te maken. Dan zijn er 16 vrije pinnen. Verderop op deze pagina wordt dat besproken bij 'DCC-EX centrale zonder motorshield'.

Te gebruiken met de stack boards: wissels, ontkoppelen, servo's, DC-outputs, relais en pins, seinen LED, stroomdetectie, sensoren, test en debug, DCC-monitor.

 

Begrippen

  • Stack modules: dit modulaire systeem om digitale modelspoorbanen te besturen. Stack modules is een geregistreerd handelsmerk.
     
  • Basis board: een stack module basis board verzorgt het protocol van en naar de besturingscentrale en/of de PC (DCC-EX, DCC-decoder, LocoNet).
     
  • Stack board: een stack module die op een basis board geplaatst kan worden en die de aansturing van de accessoires regelt (wissel, servo, ontkoppelaar, DC-output, sein, relais, baanuitlichting, sensoren, etc) of die de terugmeldingen van het spoor kan ontvangen (stroomdetectie, massadetectie, andere sensoren).
     
  • Arduino IDE: dit is het programma (ontwikkelomgeving) waarmee je Arduino boards kunt programmeren in de programmeertaal C++.
     
  • PCB: print circuit board, een printplaat voor elektronische onderdelen.
     
  • Accessoires: daarmee bedoelen we de onderdelen van de modelspoorbaan die je wilt aansturen. Zoals bv wissels, servo's ontkoppelaars, DC-outputs, seinen, leds's, relais, pinnen, etc.
     
  • Header: een rijtje female pinnen (2.54mm pitch).
     
  • Pin header: een rijtje male pinnen (2.54mm pitch).
     
  • Footprint: de voetafduk (afbakening) van een component op het PCB. Een footprint geeft vaak ook informatie over montagerichting, polariteit, etc.

 

Stuklijst

Controleer even of je alles compleet hebt:

PCB basis board DCC-ex. Nano V3 ATmega328 mini-USB. Header 15P female (4). Header 2P male. Led 3mm groen. Schroefterm. KF301 2P 5.0mm. Weerstand 220Ω.

 

Codering weerstanden

Er bestaan 2 veel gebruikte versies van kleurcodering voor weerstanden. Je zult veelal beige of blauwe weerstanden tegenkomen:

 


Klik voor vergroten

 

Support

Mocht je ergens niet uitkomen of heb je nog vragen? Stuur dan een e-mail met je vraag naar stackmodules@ziggo.nl. Wellicht kunnen we je per e-mail helpen, of anders maken we een afspraak voor een telefoontje (ook beeldbellen) of een skype-meeting.

 

Volgorde montage

  1. Let op: bij het monteren en solderen van elektronica, en dan mn chips (Nano's), gebruik je altijd een antistatisch polsbandje dat geaard is. Statische elektriciteit kan chips gemakkelijk onherstelbaar beschadigen.
     
  2. Begin eerst met de kleinste en platste delen zoals weerstanden, diodes, etc.
     
  3. Monteer vervolgens de hogere componenten zoals IC's, transistoren, led's, etc.
     
  4. En plaats dan de hoogste delen op het PCB, zoals pinheaders, schroefterminals, etc.
     
  5. Deze werkwijze monteert vaak het prettigst omdat de onderdelen dan op hun plaats blijven zitten als je het PCB omdraait en neer legt om te solderen.
     
  6. Tip: je kunt onderdelen die je wilt solderen ook tijdelijk op hun plaats houden met een klein stukje isolatietape, dat je er daarna weer afhaalt.

 

Het bouwen

  1. Alle onderdelen worden op de zichtzijde van het board geplaatst en aan de onderzijde gesoldeerd.
     
  2. Monteer eerst de weerstand 220Ω op R1.
     
  3. Plaats dan de led. Het lange pootje van de led (+) moet links en het korte pootje van de led (-) moet rechts (- is de zijde met de witte verdikte rand in de footprint).
     
  4. Plaats de 2-polige header pins (-5v+).
     
  5. Soldeer nu de schroefterminal en de 4 15-polige female headers op het PCB.
     
  6. Plaats tot slot de Nano in de daarvoor bestemde headers, met de USB aansluiting aan de linker zijde (zie onderstaande afbeelding).
     
  7. Controleer je soldeerwerk nog even visueel op slordigheden, onbedoelde kortsluitingen tussen 2 soldeerpunten of niet gesoldeerde contacten.
     
  8. Aansluiten: verbind de Nano via een USB-kabel met de PC. De KF301 schroefterminal wordt dan niet gebruikt, de voedingsspanning voor de Nano komt dan immers via de USB-kabel vanuit de PC of vanuit een USB-hub.

 


Klik om te vergroten (nieuw tabblad)

 

Testen met een testsketch

  1. Het board is nu klaar voor een eerste test.
     
  2. Zorg ervoor dat er een CH340 (of CH341) driver op de PC geïnstalleerd is. Deze kun je bv hier downloaden. Deze driver zorgt voor de verbinding tussen het Arduino board en de PC met de Arduino IDE.
     
  3. Is de Arduino IDE (V2, Integrated Development Environment) op je PC geïnstalleerd? Zo niet, dan kun je die downloaden vanaf Arduino.cc. Download de versie voor jouw systeem en start vervolgens de installatie.
     
  4. Verbind de Nano via een USB-kabel met de PC.
     
  5. Start de Arduino IDE op de PC.
     
  6. Selecteer in de Arduino IDE het juiste board (Nano) en de juiste COM-poort.
     
  7. Download deze testsketch en unzip het bestand in je map met Arduino projecten. Open daarna de file met de Arduino IDE.
     
  8. In regels 21-23 van de code van deze sketch staan 3 pinmappings. Uncomment (dus zonder //) de pinmapping voor je board (DCC-EX, DCC-decoder of Loconet client) en zorg ervoor dat de andere 2 pinmappings wel // ervoor hebben staan in de code (C++ code met // ervoor wordt niet uitgevoerd).
     
  9. Controleer in de Arduino IDE de instelling bij:

    [Tools]
    [Processor]
     
    Daar moet ATmega328p of ATmega328P (Old Bootloader) geselecteerd zijn.
     
  10. Upload de sketch vervolgens naar de Nano.
     
  11. Indien de sketch niet naar de Nano upload, controleer dan de volgende dingen:
     
    1. Is er een CH340-driver op de PC geïnstalleerd (USB)?
       
    2. Is de USB-kabel oké? Probeer eens een andere kabel. Sommige USB-kabels hebben maar 2 aders en zijn alleen geschikt om iets op te laden. Normale USB-kabels hebben 4 aders (2 datalijnen, 5V en gnd).
       
    3. Is het juiste board geselecteerd in de Arduino IDE (Nano)?
       
    4. Is de juiste COM-poort geselecteerd in de Arduino IDE?
       
    5. Switch in de Arduino IDE bij...:
       
      [Tools]
      [Processor]
       
      ...eens van ATmega328P naar ATmega328P (Old Bootloader) of andersom.
       
  12. Indien je beschikt over een stack board test en debug, dan kun je dat nu op het basis board DCC-EX plaatsen in H1 en H2. Heb je geen stack board test en debug dan kun je ook losse led's (met een weerstand van minimaal 220Ω) of een multimeter gebruiken om de outputs te testen.
     
  13. Als alles goed is gemonteerd en geïnstalleerd dan loopt er nu een testprogramma op de Nano dat poorten 1 tm 16 (op het PCB D2 tm D11 en A0 tm A5) steeds kort aan/uit schakelt. Op het stack board test en debug knipperen de led's 1 tm 16 één voor één en in de seriële monitor van de Arduino IDE verschijnt een melding dat alles goed werkt.
     
  14. Algemene informatie over de werking van Arduino boards en de verschillende modellen kun je op deze pagina raadplegen. En mocht je meer willen leren over het programmeren van Arduino boards in C++ dan kun je bv terecht op deze website (Bas on Tech).

 

DCC-EX centrale zonder motor shield

Pinnen 3 en 11 worden gebruikt door het motor shield van het commandstation. Maar een losse DCC-EX unit zonder motor shield heeft deze pinnen daarvoor niet nodig. Je kunt ze op de volgende wijze beschikbaar maken als inputs of outputs:

  1. Maak een kopie van de map met de DCC-EX sketches (zodat het origineel beschikbaar blijft).
     
  2. Open de gekopieerde DCC-EX software in de Arduino IDE.
     
  3. Selecteer de file MotorDrivers.h.
     
  4. Pas bij de definitie van het standaard motor shield de volgende regels aan. Originele code:
     
    new MotorDriver(3, 12, UNUSED_PIN, UNUSED_PIN, A0, 2.99, 2000, UNUSED_PIN)
     
    new MotorDriver(11, 13, UNUSED_PIN, UNUSED_PIN, A1, 2.99, 2000, UNUSED_PIN)
     
    Moet worden:
     
    new MotorDriver(20, 21, UNUSED_PIN, UNUSED_PIN, A0, 2.99, 2000, UNUSED_PIN)
     
    new MotorDriver(20, 21, UNUSED_PIN, UNUSED_PIN, A1, 2.99, 2000, UNUSED_PIN)
     
  5. Sla de file MotorDrivers.h op en upload de nu aangepaste commandstation sketch naar de Arduino.

 

Upload de definitieve DCC-EX sketch

  1. Installeer eerst (als je dat nog niet gedaan hebt) de DCC-EX library in de Arduino IDE.
     
  2. Download die library hier: Github DCC-EX.
     
  3. Start vervolgens de Arduino IDE en voeg de zojuist gedownloade library (zip) toe aan de IDE via:

    [Sketch]
    [Include Library]
    [Add .Zip Library]
     
  4. Open nu de DCC-EX sketch CommandStation-EX (deze staat in de library-map van de DCC-EX library) in de Arduino IDE en upload die sketch naar het Nano board.
     
  5. In de seriële monitor van de Arduino IDE verschijnt een melding dat alles werkt.

 

Instellen modelspoorsoftware

Stack modules werken prima samen met alle bekende softwarepakketten. Je stelt dit globaal als volgt in:

  1. Maak een nieuwe centrale aan, type DCCpp. Kies een logische en herkenbare naam voor de unit (bv 'DCC-EX wissels 1').
     
  2. Kies de juiste COM-poort via welke het basis board DCC-EX met de PC verbonden is.
     
  3. Start de software opnieuw op.

 

Er zijn best veel verschillende programma's voor digitale modelspoorbesturing. In deze bouwinstructie vermelden we de settings voor Rocrail. Maar andere programma's wijken daar niet zo veel vanaf.

Aanmaken centrale (in Rocrail in dit geval):

 


Klik voor vergroten

 


Klik voor vergroten

 

De volgende stap is het configureren van accessoires in de software voor de treinbesturing op de PC (in dit voorbeeld is dat Rocrail):

  1. Maak een nieuw accessoire aan (wissel, ontkoppelaar, sein, servo, etc).
     
  2. Selecteer daarbij de naam van de centrale die je wilt aansturen (in dit voorbeeld 'DCC-EX wissels 1').
     
  3. Vul bij 'Adres' de juiste pin in volgens de pinmappingtabel die iets verder op deze pagina genoemd staat.
     
  4. Vul eventueel nog andere van toepassing zijnde parameters in (welke dat eventueel zijn verschilt per softwarepakket).

 


Klik voor vergroten

 

Adressering

Basis boards DCC-EX werken direct via een USB-kabel met de treinbesturingssoftware. Bij de adressering van accessoires zoals wissels, ontkoppelaars, seinen, DC outputs, servo's, etc, gebruiken stack modules een pinmapping.

DCC-EX basis boards worden dus direct aangestuurd op de pinnen.

Let op: Het adres van een accessoire dat je moet instellen in de modelbaansoftware (bv Rocrail) is dus de pin van de desbetreffende Nano (D2 tm D11 en A0 tm A5).

De stack modules hebben meestal 16 kanalen (1 tm 16).

Voor DCC-EX geldt op stack modules de volgende pinmapping:

Aan te sturen
Nano pin
Kanaal op het
stack board
0 niet in gebruik  
1 niet in gebruik  
2 1
3 soms niet bruikbaar, zie 1 2
4 3
5 4
6 5
7 6
8 7
9 8
10 9
11 soms niet bruikbaar, zie 1 10
12 niet in gebruik  
13 niet in gebruik  
14 A0 11
15 A1 12
16 A2 13
17 A3 14
18 A4 15
19 A5 16

 

Dus, als je kanaal 1 op het stack board wilt schakelen dan stuur je op het basis board DCC-EX pin 2 aan (= adres 2 in Rocrail).

En voor een accessoire op stack board kanaal 16 stuur je Nano pin 19 aan (= adres 19 in Rocrail). Et cetera...

 

Het eindresultaat

 

Aansluitingen

Dit basis board heeft de volgende aansluitingen:

  • Mini-USB (Nano), deze wordt aangesloten op de USB-poort van de PC.
     
  • Schroefterminal KF301, hier kun je 5v DC (niet meer!) voedingsspanning aansluiten als de Nano niet met USB verbonden is. De polariteit is vermeld op het PCB.
     
  • 2 male pins (direct achter de schroefterminal), deze zijn verbonden met de schroefterminal voor de voedingsspanning. De polariteit is vermeld op het PCB.
     
  • H1 en H2, hier plaats je een stack board naar keuze.