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

US diorama in H0 door Frank 123
Vandaag om 20:56:10
Bentheimer Eisenbahn, gisteren, vandaag en morgen. door Hans Reints
Vandaag om 20:52:47
Rondom Charlois door Alewijn
Vandaag om 20:23:21
Aachenau West door puntenglijder
Vandaag om 20:13:37
Stalen busjes als lagers voor een Fleischmann rondmotor door Deetrein
Vandaag om 20:13:18
Nederland jaren 50 op basis van mijn roots door 741230
Vandaag om 20:01:27
Spoorwegmuseum krimpt collectie in door Quinzeedied
Vandaag om 19:57:53
Toon hier je nieuwe (model-) spooraanwinst(en)... door Kees-Jan
Vandaag om 19:23:53
Big Scale Trains - NS SLT in H0 door Sebastiaan Pot -- Big Scale Trains
Vandaag om 19:19:30
ESU locprogrammer door saskia
Vandaag om 19:17:34
Vraag over vervangmotor Lima-locomotief door Albert de Heer
Vandaag om 19:15:54
Nightjet rijtuigen Zuri-Amsterdam door Servé
Vandaag om 19:06:52
Bauarbeiten im gange door 741230
Vandaag om 18:26:21
Alt-Wutachtalbahn 2025 door Eric v C
Vandaag om 18:15:02
Au bord de la Cèze door 741230
Vandaag om 18:07:29
Onlangs gespot - gefotografeerd, de links door Jeroen Water
Vandaag om 17:32:00
Ombouw/Pimpen Bolle neuzen door bollen neus
Vandaag om 16:33:03
Mijn eerste H0-modeltreinbaan in aanbouw door Jelmer
Vandaag om 16:31:31
Bahnstrecke 5867 door Wim Vink
Vandaag om 16:20:02
Toon hier je (model)treinfoto's door R1954
Vandaag om 16:17:39
Frans loodsje et cetera door Hans GJ
Vandaag om 16:15:37
Da's Daz 2 door Huup
Vandaag om 15:57:16
Mooi weer om buiten te spelen door sncf231e
Vandaag om 15:29:00
Baanplan Belkamp H0 door jdk
Vandaag om 14:15:36
BMB-Module: “Corfe Castle Station” door Hans van de Burgt
Vandaag om 13:03:13
De IJmuider spoorlijn - korte geschiedenis en plaatjes door R1954
Vandaag om 12:58:24
Cranicher Altbahn door Arjen52
Vandaag om 12:41:19
Digikeijs DR4024 gedeeltelijk defect? door bellejt
Vandaag om 12:09:31
Vijfhuis (v.h. Frotterdam) door SvenW
Vandaag om 11:45:51
Roco 21026 werkt niet goed door Gabriël Bergsma
Vandaag om 11:40:43
  

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