Doel:€250.00
Donaties:€88.00

Per saldo:€-162.00

Steun ons nu!

Laatst bijgewerkt
op 03-06-2025

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

Rondom Charlois door Alewijn
Vandaag om 10:55:41
Mooi weer om buiten te spelen door hervé
Vandaag om 10:48:17
In 6 uur van Parijs naar Madrid: EU zet in op netwerk van snelle treinen door MaraNCS
Vandaag om 10:48:06
Da's Daz 2 door spoorijzer
Vandaag om 10:44:07
Materieel verzameling van Michiel(NDS) door spoorijzer
Vandaag om 10:43:43
Spoorwegmuseum krimpt collectie in door Eric B
Vandaag om 10:34:36
Ombouw/Pimpen Bolle neuzen door bollen neus
Vandaag om 10:27:04
Lodewickshaven door tothebeach
Vandaag om 10:13:47
Cherteau, fictieve Waals industriedorp door Hans GJ
Vandaag om 09:53:25
Op Zuid (NL H0) door TonM
Vandaag om 09:38:15
ESU locprogrammer door ruudns
Vandaag om 09:34:50
NS-1000 in spoor-1 door FritsT
Vandaag om 09:30:35
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
Vandaag om 09:27:09
US diorama in H0 door Wim Vink
Vandaag om 09:25:34
Vijfhuis (v.h. Frotterdam) door Ben
Vandaag om 09:23:43
Minibaan Visserskaai H0 door Eric B
Vandaag om 08:32:54
Station Roodeschool door spoorijzer
Vandaag om 07:57:16
Bahnstrecke 5867 door spoorijzer
Vandaag om 07:54:48
Toon hier je nieuwe (model-) spooraanwinst(en)... door spoorijzer
Vandaag om 07:53:25
Stalen busjes als lagers voor een Fleischmann rondmotor door Gerrit H
Vandaag om 07:20:02
On30 diorama: Sedona Red Rock Canyon, AZ door g-j
Vandaag om 06:40:45
De overeenkomst tussen een Ovaalramer en een Motorpost. door FritsT
06 November 2025, 23:04:24
Verkoper beurs Houten door Wies
06 November 2025, 22:22:43
Waarschuwing: scam-websites zoals Modellbahnenshop.com door Reinout van Rees
06 November 2025, 21:27:00
Big Scale Trains - NS SLT in H0 door Dave.......
06 November 2025, 21:24:12
Cranicher Altbahn door Arjen52
06 November 2025, 21:16:36
De IJmuider spoorlijn - korte geschiedenis en plaatjes door Jeronimos
06 November 2025, 20:17:41
Onlangs gespot - gefotografeerd, de foto's door Huup
06 November 2025, 19:35:12
Vraag over vervangmotor Lima-locomotief door Arjen52
06 November 2025, 19:18:29
Roco 21026 werkt niet goed door N-Sven
06 November 2025, 19:14:29
  

Auteur Topic: Zelfbouw DCC++ Handregelaar  (gelezen 3517 keer)

Ronald1974

  • Gast
Re: Zelfbouw DCC++ Handregelaar
« Reactie #15 Gepost op: 13 May 2020, 14:14:29 »
Deel 2.1 zelfbouw DCC++ Handregelaar

bij deze het eerste stuk over de functionele tijd en de bediening van de handregelaar.
Ik probeer van het weekend Deel 2.2 af te krijgen.

Specificatie.                                          Op te slaan in
Handregelaar voor DCC++ commands.      EEPROM
Maximaal 16 locomotief adressen.             Nee *
Rijrichting per locomotief.                         Ja
Snelheid.                                                Nee
Functie F0 (FL) t/m F28 per locomotief.     Ja
2 Multitracties.                                        Ja
Actieve locomotief.                                  Ja
Specifieke parameter per locomotief.        Ja

* locadressen zijn constanten in de Arduino code..
 
Toevoegen en of verwijderen locadressen kan via de Arduino code door aanpassen en uploaden.
Pas het aantal aan.
Toevoegen of verwijderen in LocAD, Rijrichting en Snelheid..

const int Aantal = 5;
const int LocAD[Aantal] = {343, 351, 352, 1315, 2218};
byte Rijrichting[Aantal] = { 1, 1, 1, 1, 1};
int Snelheid[Aantal] = {0, 0, 0, 0, 0};

Deze twee variabele zijn ook in de Arduino code aan te passen en uploaden.
RegelaarRijStappen instelbaar tussen 0 tot max 255. default = 50.
byte RegelaarRijStappen = 50;
MaxSnelheid instelbaar tussen 0 tot max 126. default = 100.
byte MaxSnelheid = 100;

Bediening.

Als de Arduino onder spanning wordt gebracht gaat deze eerst de variabelen declareren.
Vervolgens de setup, daar wordt het EEPROM geheugen uitgelezen.
Vervolgens laat de LCD scherm de volgende teksten zien.

DCC++
Rijregelaar


Versie
2.7.0


Nu wordt All to zero uitgevoerd.
Zo wordt er van alle adressen welke in de code staan snelheid 0 (rijstap 0) naar de decoders gestuurd.
Ook wordt de snelheid in de code (programma) van alle adressen op 0 gezet.
Vervolgens verschijnt er tekst op de LCD.
Het kan deze tekst zijn.

Meer dan 16
Locomotieven


Als deze melding komt zijn er meer dan 16 adressen geüpload in de code.
Dan wordt de rijregelaar geblokkeerd.
Pas het aantal aan in de code (maximaal 16 adressen) en upload de code opnieuw.
Als het goed is de handregelaar opgestart in de stop modus met deze tekst op de LCD.

Stop (noodstop)

Na het gebruik van de handregelaar (na te hebben gereden met de locomotieven) kan je de bediening van de functies en rijrichting de laatst gebruikte locomotief en multitractie opslaan van uit de modu stop.
Door op de knop <<<, Aan, Opslaan te drukken de volgende tekst verschijnt op de LCD.

Om op te slaan
Druk op Enter


Vervolgens druk je op de knop >>>, Uit, Enter de volgende tekst verschijnt op de LCD.

Stop (noodstop)

Door op de Aan/Uit (STOP) knop te drukken komen we in de modus rijden en toont het LCD het volgende.

L=343  #1
S=0  >>>


Door op de Aan/Uit (STOP) knop te drukken komen komen we weer terug in de modus stop.
Met de  Aan/Uit (STOP) knop schakelen we de DCC++ Basis Station aan, spanning/DCC singaal op de rails of Uit.

In modus rijden kan je met de knop Keuzeloc de locomotief kiezen met welke loc je wilt gaan rijden.

L= 343      locadres 1-10293
#1            locadres wordt gekoppelt aan een positie in de regelaar 1-16
S=0          snelheid regelaar default 0-50, DCC 128 rijstappen komt overeen op de          
                regelaar met 0 (0%) tot 50 (100%) stappen indien byte MaxSnelheid = 126;
                met byte RegelaarRijStappen en byte MaxSnelheid kan je de rijstappen van de regelaar instellen en de
                maximale uit sturing.
>>>         forward (vooruit) <<< reverse (achteruit).

Overzicht zelfbouw DCC++ Handregelaar.
deel 1 staat in reactie #10 Het aansluitschema
deel 2.1 staat in reactie #15 De functionele tijd en de bediening van de handregelaar.

Mvg Ronald Hofmeester
« Laatst bewerkt op: 13 May 2020, 14:41:22 door Ronald1974 »

bask185

  • Offline Offline
  • Berichten: 5123
Re: Zelfbouw DCC++ Handregelaar
« Reactie #16 Gepost op: 13 May 2020, 16:46:20 »
Die adressen {343, 351, 352, 1315, 2218}; Ik heb daar 2 vraagjes over. Waarom heb je de keuze gemaakt om zo contantes te gebruiken en niet de EEPROM? Zoals je al zei, moet je nu het programma aanpassen als er een 'wijziging in de dienstregeling' komt.

Zijn die hoge adressen je loc nummers? Ik weet dat er op Hoekdam minimaal 1 sik, een 2200 en een 1300 rijden. Ik mis hier 2 hondekoppen en een bakkie ???

Misschien nog een leuk weetje.
const int Aantal = 5;
const int LocAD[Aantal] = {343, 351, 352, 1315, 2218};
byte Rijrichting[Aantal] = { 1, 1, 1, 1, 1};
int Snelheid[Aantal] = {0, 0, 0, 0, 0};
De constante 'Aantal' mag en kan je hier probleemloos weg laten uit de blokhaken[]. De compiler kan aan de hand van het aantal getallen tussen de {} bepalen hoeveel geheugen hij moet reserveren.

const int Aantal = 5;
const int LocAD[] = {343, 351, 352, 1315, 2218};
byte Rijrichting[] = { 1, 1, 1, 1, 1};
int Snelheid[] = {0, 0, 0, 0, 0};
is toegestaan.

Verder goed bezig weer, altijd  (y) voor zelfbouw elektronica.

Mvg,

Bas
Train-Science.com
Train-Science github
It ain't rocket science ;-)

Ronald1974

  • Gast
Re: Zelfbouw DCC++ Handregelaar
« Reactie #17 Gepost op: 13 May 2020, 18:13:34 »
Bas,

De hoge adressen zijn gelijk de loc nummers.
343 en 351 zijn de Hondekoppen ook is er nog een 359 deze moet ik nog een decoder inbouwen.
De 352 is de sik.
Volgens mij hadden de sikken en de Hondekoppen de zelfde nummer in de nummer reeks 300.
En de 1315  en 2218.
Het bakkie 657 moet ik nog voorzien van een faulhaber motor met vertraging en decoder.

Ik heb ze als constante omdat dit al mijn treinen zijn die ik heb, en stel dat er nog 1 bij komt in de toekomst dan moet ik het adres toevoegen en de code opnieuw uploaden.
Zou ik een hoop treinen heb dan zou ik een nummer invoer maken met toetsenbord of ir afstandsbediening en opslaan in de EEPROM.

Mvg Ronald Hofmeester.