Doel:€250.00
Donaties:€130.00

Per saldo:€-120.00

Steun ons nu!

Laatst bijgewerkt
op 24-04-2024

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

Schrootplaats door ruudns
25 april 2024, 23:48:05
Bouw NS C 8605, BC 6012 en C 6820 door prutser
25 april 2024, 23:33:55
EifelBurgenBahn door Reinout van Rees
25 april 2024, 23:09:03
NS 6000 (in schaal 0) door FritsT
25 april 2024, 23:04:33
diorama, voor lange treinen. door Wim Vink
25 april 2024, 23:01:07
Toon hier je pas gereed gekomen (model-)spoorbouwsels ... door Bob R.
25 april 2024, 22:40:14
Kleine Baan in H0 (≤ 0.5m²) door Jack Black (NS1220)
25 april 2024, 22:31:45
Nederland jaren 50 op basis van mijn roots door defender
25 april 2024, 22:23:03
hoe diep is de kuil van een 23 meter draaischijf door peterha
25 april 2024, 22:20:53
Ijzeren Rijn: militair transport door ijzeren rijn
25 april 2024, 22:10:05
Baan 'begroenen', hoe, wat en waarmee? door Frank 123
25 april 2024, 21:56:33
Mallnitzer Tauernbahnstrecke ÖBB N Spoor door Schachbrett
25 april 2024, 21:39:10
Toon hier je nieuwe (model-) spooraanwinst(en)... door DavidNS400 Grote sik
25 april 2024, 21:38:25
Mijn eerste H0-modeltreinbaan in aanbouw door Schachbrett
25 april 2024, 21:09:44
Pfarrerwinkel bahn door Schachbrett
25 april 2024, 21:08:37
Bahnbetriebswerk "Altendorf" door basjuh1981
25 april 2024, 20:53:29
Station Roodeschool door Torikoos
25 april 2024, 20:52:40
US diorama in H0 door basjuh1981
25 april 2024, 20:51:10
Bouw van tijdperk 1 HSM en SS rijtuigen door MathynK
25 april 2024, 20:11:23
Les Billards du Vivarais door Frank 123
25 april 2024, 20:07:55
Piko lok digitaal rijdt direct weg door Ronaldk
25 april 2024, 19:59:22
Gewoon wat busfoto's door Keska
25 april 2024, 19:20:28
Aachenau West door wob
25 april 2024, 19:10:24
Modelbaan schaal H0 niet geheel sluiten in pc prog door MartinRT
25 april 2024, 19:04:37
19 Toen door defender
25 april 2024, 19:01:10
20 en 21 april MobExpo door class 37
25 april 2024, 18:16:26
Bouw van postrijtuig P 7911-7920 (plan C) van FRIE door Rob Bennis
25 april 2024, 17:45:39
Al mijn goede ideeën... door maartenvdb
25 april 2024, 17:22:59
Raadplaatje door Benelux795
25 april 2024, 17:18:39
18 t/m 21 april Intermodellbau '24 Dortmund door Ronald Halma
25 april 2024, 15:58:27
  

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

Ronald1974

  • Gast
Re: Zelfbouw DCC++ Handregelaar
« Reactie #15 Gepost op: 13 mei 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 mei 2020, 14:41:22 door Ronald1974 »

bask185

  • Offline Offline
  • Berichten: 4066
Re: Zelfbouw DCC++ Handregelaar
« Reactie #16 Gepost op: 13 mei 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 mei 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.