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

Acme nieuwe ICNG door hmmglaser
Vandaag om 23:09:54
Modelspoorbaan van Einte door Wim Vink
Vandaag om 23:04:10
Raadplaatje door RikM
Vandaag om 23:03:16
20 21 september Ritten met Mat '46 tijdens Open Trein Festival NSM door Ronald A.
Vandaag om 22:59:08
Portland ID, OR; een 2-turnout Inglenook door Ronald door Ronald Halma
Vandaag om 22:45:43
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
Vandaag om 22:40:02
Veevervoer ss/ ns door klusser
Vandaag om 22:23:06
Betere grip voor Bedroevend locomotiefje door Robert vh Prutsert
Vandaag om 22:16:47
Da's Daz 2 door Huup
Vandaag om 21:54:14
La vie...Sud-Est; zolderbaan met thema zuidoost Frankrijk door Paulus
Vandaag om 21:29:51
0n30 diorama: Sedona Verde River Canyon door Hans1963
Vandaag om 21:24:36
Am Ende der Strecke, modulebaan op 1 M2 door Frank 123
Vandaag om 21:13:31
Spoor op industrieterrein Lage Weide door Gouda
Vandaag om 20:23:34
Aachenau West door einte
Vandaag om 20:11:21
Minibaan Visserskaai H0 door Frits C
Vandaag om 19:38:42
Onlangs gespot - gefotografeerd, de foto's door timtrein
Vandaag om 19:23:47
Exact-Train 2025 door ModelWessel
Vandaag om 19:05:17
Rhätische Bahn in 0m; van Filisur naar Stuls door markuspetter
Vandaag om 18:51:19
[3D/IG] RET (R)SG3: De Rotterdamse Metro (& Randstadrail) in H0 door Ben
Vandaag om 18:49:39
Mijnbouw Indonesië door puntenglijder
Vandaag om 18:36:27
Kibri station CALW ingekort als NS station door Petertje
Vandaag om 18:21:59
Toon hier je (model)TRAM foto's. door Keska
Vandaag om 18:21:53
Länderbahn en Reichsbahn locomotieven. door puntenglijder
Vandaag om 18:19:22
De Projecten van RetroJack door RetroJack
Vandaag om 17:54:55
Toon hier je nieuwe (model-) spooraanwinst(en)... door Robert vh Prutsert
Vandaag om 17:09:16
Lekker vervuilen volgens de Simplex-methode door Wim1969
Vandaag om 16:39:15
De IJmuider spoorlijn - korte geschiedenis en plaatjes door IJmc
Vandaag om 16:37:31
Stalen rijtuigen van NS door spoorijzer
Vandaag om 16:23:11
Br 38 Piko Superen. door puntenglijder
Vandaag om 15:51:31
Fleischmania Nostalgia door Sikko
Vandaag om 15:34:29
  

Auteur Topic: Zelfbouw DCC++ Handregelaar  (gelezen 3403 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: 5026
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.