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

Toon hier je nieuwe (model-) spooraanwinst(en)... door Ronald Halma
Vandaag om 19:24:49
Länderbahn en Reichsbahn locomotieven. door Silvolde
Vandaag om 19:18:42
Sfeer op je modelbaan door Frits C
Vandaag om 19:12:42
Onlangs gespot - gefotografeerd, de foto's door Eric v C
Vandaag om 19:00:31
Toon hier je pas gereed gekomen (model-)spoorbouwsels ... door Gert Arkema
Vandaag om 18:49:15
Piko 51916 NS 1100 blauw botsneus door Corné81
Vandaag om 18:17:53
De Projecten van RetroJack door RetroJack
Vandaag om 17:59:17
De bouw van 'Ommelanden' (H0) door Torikoos
Vandaag om 17:48:40
Ronald doet de Fork Challenge! door Torikoos
Vandaag om 17:34:00
Zelfbouw draaischijf 3D printer - Rocrail WIO Raspberry Pico (W) door Peter.v.L
Vandaag om 17:17:00
S88n bus splitsen door Dave.......
Vandaag om 17:06:53
Licht op Roco BR52 is niet (ana)logisch.. door Martijn1974
Vandaag om 16:59:03
Mijn eerste H0-modeltreinbaan in aanbouw door MOVisser
Vandaag om 16:35:18
Roco 290 digtaliseren door Herb73
Vandaag om 16:31:45
Klein baantje 1200x1200mm door Prutsert
Vandaag om 16:21:39
Vreemd probleem door RobVille
Vandaag om 15:51:36
PB Models, ICR-rijtuigen door Ralf Wittkamp
Vandaag om 15:45:47
Hengelo in 1981-1982, maar dan anders: Kassenberg in N door Mispoes
Vandaag om 15:40:46
Yet Another Servo Decoder door bask185
Vandaag om 13:54:47
Lagers vervangen DJH NS 3300 door orientexpress
Vandaag om 13:17:15
Philotrain NS6001-6006 (niet kijken als je blij met jou philotrain bent) door orientexpress
Vandaag om 13:07:13
Philotrain 3737 rijeigenschappen verbeteren door Rico [momfer]
Vandaag om 13:00:33
Spoor- en tramweg parafernalia door Eelco Storm
Vandaag om 12:16:43
Toon hier je (model)treinfoto's door R1954
Vandaag om 12:04:32
Lima IRM pimpen door 008200
Vandaag om 09:21:16
Piko 2025 door Benelux795
Vandaag om 08:44:21
Roco Plan T door grossraumwagen
Vandaag om 08:33:30
Bahnstrecke 5867 door Jelmer
Vandaag om 08:33:24
Rhätische Bahn in 0m; van Filisur naar Stuls door Jelmer
Vandaag om 08:22:47
365 "Het is weekend foto's" door Wim Vink
Vandaag om 08:15:28
  

Auteur Topic: Volautomatische universele bidirectionele goedkope keerlus controller  (gelezen 16799 keer)

Erik84750

  • Offline Offline
  • Berichten: 56
Hi, ik weet niet of "omloopspoorbesturing" de juiste benaming is voor wat ze in het engels "autoreversing track controller" noemen.

Ik heb de voorbije week een controller ontwikkeld die in staat is om volautomatisch de polariteit van het DCC (of gewoon de DC voeding voor analoge sporen) om te wisselen bij een keerlus en dit doet:
- zonder de trein te stoppen
- zonder kortsluitstroomdetectie
- met om het even welk type detector, zolang die bij "geen detectie" een LAAG signaal, en bij "detectie" een HOOG signaal geeft (en indien het omgekeerd moet kan dat ook: een kleine software aanpassing is dan nodig)
- in beide richtingen
- ook voor treinen die in de loop stoppen en achteruit terug rijden
- voor om het even welk type of vorm van omloopspoor
- de lengte van het omloopspoor moet minimaal maar niet meer dan één keer de lengte van de langste trein zijn

Ik heb daarover een topic gestart in http://www.trainboard.com/highball/index.php?threads/cheap-and-universal-automatic-bidirectional-reversing-loop-controller.105591/ in het engels, de vertaling is me teveel werk maar ik wil gerust hier de tekst kopiëren, als dat mag.

- De controller kan om het even welke Atmega zijn (Arduino Uno of Mega, Pro Mini, ATtinyxx,..), ik gebruik een ATtiny85 van 2 euro.
- De detectoren mogen om het even wat zijn: LDR, laser, phototransistor, infrarood sensor, inductief, capacitief,..
- Het relais is een 2-polige double throw type. Opgelet: gebruik relais die minder dan 25mA verbruiken (max microcontroller uitgangsstroom) of gebruik anders eerst een klein relais dat op zijn beurt een groter aanstuurt (zie ook link hierboven voor meer details).

Laat maar weten wat jullie ervan vinden.

Grtn,
Erik

Mijn code:
const byte Relay = 3;
const byte LDRa = 1;
const byte LDRb = 2;
const byte LDR1 = 0;
boolean A = LOW;
int stateLDRa;
int lastStateLDRa = LOW;
int stateLDRb;
int lastStateLDRb = LOW;
int stateLDR1;
int lastStateLDR1 = LOW;
unsigned long lastDebounceTimeLDRa = 0;
unsigned long lastDebounceTimeLDRb = 0;
unsigned long lastDebounceTimeLDR1 = 0;
unsigned debounceDelay = 1000;

void setup() {
  pinMode(Relay, OUTPUT); //setting the pin mode to Output
  digitalWrite(Relay, LOW);
}

void loop() {
  // read LDRa and debounce
  int readingLDRa = digitalRead(LDRa);
  //digitalWrite(ledPin, readingLDRa);
  if (readingLDRa != lastStateLDRa) {
    lastDebounceTimeLDRa = millis();
  }
  if ((millis() - lastDebounceTimeLDRa) > debounceDelay) {
    if (readingLDRa != stateLDRa) {
      stateLDRa = readingLDRa;
    }
  }
lastStateLDRa = readingLDRa;
  // read LDRb and debounce
  int readingLDRb = digitalRead(LDRb);
  if (readingLDRb != lastStateLDRb) {
    lastDebounceTimeLDRb = millis();
  }
  if ((millis() - lastDebounceTimeLDRb) > debounceDelay) {
    if (readingLDRb != stateLDRb) {
      stateLDRb = readingLDRb;
    }
  }
lastStateLDRb = readingLDRb;
  // read LDR1 and debounce
  int readingLDR1 = digitalRead(LDR1);
  if (readingLDR1 != lastStateLDR1) {
    lastDebounceTimeLDR1 = millis();
  }
  if ((millis() - lastDebounceTimeLDR1) > debounceDelay) {
    if (readingLDR1 != stateLDR1) {
      stateLDR1 = readingLDR1;
    }
  }
lastStateLDR1 = readingLDR1;
   if (stateLDRa == HIGH && stateLDR1 == LOW && stateLDRb == LOW)  //condition 1; clockwise
  { digitalWrite(Relay, HIGH);
    A = HIGH;
  }
  if (stateLDRa == LOW && stateLDR1 == HIGH && stateLDRb == LOW && A == HIGH) //condition 2; clockwise
  { digitalWrite(Relay, LOW);
  }
  if (stateLDRa == LOW && stateLDR1 == LOW && stateLDRb == HIGH) //condition 3; clockwise and counterclockwise: set relay low
  { digitalWrite(Relay, LOW);
    A = LOW;
  }
  if (stateLDRa == LOW && stateLDR1 == HIGH && stateLDRb == LOW && A == LOW)  //condition 4; counterclockwise: set relay high
  { digitalWrite(Relay, HIGH);
  }
}

Het schema:




« Laatst bewerkt op: 09 May 2017, 18:39:17 door Erik84750 »

Te 2/2

  • Offline Offline
  • Berichten: 1004
  • Metrop-Märklin
Re: Volautomatische universele bidirectionele goedkope omloopspoorcontroller
« Reactie #1 Gepost op: 09 May 2017, 18:30:49 »
Mag het ook gewoon een keerlus controller heten?
Mooi werk trouwens !  (y)

Zie http://encyclopedie.beneluxspoor.net/index.php/Keerlus

Duitstalig heeft ook wel wat: kehrschleife
b.v.
http://k.f.geering.info/modellbahn/technik/kehrschleife.htm
« Laatst bewerkt op: 09 May 2017, 18:38:58 door Te 2/2 »
Jan Willem

analoog hybride DC baan (2-rail+3-rail),
CH, peco, piko, roco, k-rail

Erik84750

  • Offline Offline
  • Berichten: 56
Re: Volautomatische universele bidirectionele goedkope omloopspoorcontroller
« Reactie #2 Gepost op: 09 May 2017, 18:33:56 »

@Mag het ook gewoon een keerlus controller heten?
Mooi werk trouwens !  (y)

Zie http://encyclopedie.beneluxspoor.net/index.php/Keerlus

Bedankt! Aangepast.
« Laatst bewerkt op: 10 May 2017, 00:08:33 door NS264. Reden: direct citaat verwijdert »

Erik84750

  • Offline Offline
  • Berichten: 56
Re: Volautomatische universele bidirectionele goedkope omloopspoorcontroller
« Reactie #3 Gepost op: 09 May 2017, 18:40:41 »

Duitstalig heeft ook wel wat: kehrschleife
b.v.
http://k.f.geering.info/modellbahn/technik/kehrschleife.htm

Mijn programma is niet voor duitstalige microcontrollers  ;D

Bert Mengerink

  • SPOOR1HOBBY
  • Offline Offline
  • Berichten: 490
  • Het liefste stoom in module vorm
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #4 Gepost op: 09 May 2017, 19:24:58 »
Als er gebruik gemaakt wordt van stroom- of massadetectoren, zijn er nog twee extra cuts nodig net na de wissel. Dit wordt in de meeste keerlus modules zo gebruikt.
Groeten,
Bert Mengerink

Er is altijd tijd om iets nieuws te beginnen.
Veel succes met de hobby.

Erik84750

  • Offline Offline
  • Berichten: 56
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #5 Gepost op: 09 May 2017, 20:34:06 »

Inderdaad. En: ..net na de wissel en vòòr de geïsoleerde lus.
« Laatst bewerkt op: 09 May 2017, 21:44:27 door Bert van Gelder. Reden: Citaat verwijderd »

jowi

  • Offline Offline
  • Berichten: 2375
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #6 Gepost op: 09 May 2017, 20:53:47 »
Een volledig uitgekauwd aansluitschema zou wel fijn zijn. Dus waarin de arduino etc te zien is, waar en hoe sluit je daar het relais op aan, hoe en waar sluit ik de boel aan op mijn detectie? Ik vind het een beetje summier zo.

Tulpendaal

  • Offline Offline
  • Berichten: 3580
  • Westlandbaan-Delft
    • DELFT
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #7 Gepost op: 10 May 2017, 06:38:39 »
Goedenmorgen
Ziet er zeer interessant uit. Daar je het getest hebt, heb je ook fotos van een testbaan met de komponenten? Ik kan met bij de komponenten niets voorstellen. Ben een elektroleek, maar heb een T keerdriehoek voor mijn tram nodig.
Alternatief is het mogelijk een komponenten pakketje samen te stellen?
Gr. Joke

Erik84750

  • Offline Offline
  • Berichten: 56
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #8 Gepost op: 10 May 2017, 08:14:20 »
Een volledig uitgekauwd aansluitschema zou wel fijn zijn. Dus waarin de arduino etc te zien is, waar en hoe sluit je daar het relais op aan, hoe en waar sluit ik de boel aan op mijn detectie? Ik vind het een beetje summier zo.
Hoi jowi, goed idee. Hetgeen ik hierboven gepost heb is het gevolg van één week nadenken over en werken aan een oplossing voor courant aspect van modeltreinbanen.
Ik zal een apart blad maken met een gedetailleerd elektrisch schema en hier posten.

Voor wie dit reeds kan gebruiken: kijk op Aliexpress voor "Digispark" of "Digistump" of "ATtiny85".

Ik kopieer hieronder even een deel van mijn publicatie op Trainboard.com (http://www.trainboard.com/highball/index.php?threads/cheap-and-universal-automatic-bidirectional-reversing-loop-controller.105591/) .
Weliswaar in het engels, met daarin wat meer details over de microcontroller en het gebruikte relais:

If needed I can program the controller for you, just send me 2 units: one for return programmed and one to cover postage; just pm me.

The ATtiny I used has following connections (see also the code):

PB0 = LDR1 (the one inside the loop)
PB1 = LDRa
PB2 = LDRb
PB3 = Relay output (EDIT: beware: a controller supplies a max of about 10 to 20mA safely per output: use a high impedance relay https://www.aliexpre...d-58936f8fd807 which in turn drives the power relay).

Make sure you cut the trace to the LED connected to PB1 or the voltage divider used for the LDR will not work properly. But best of all is to use an LDR driving a comparator, no need for calibration.

This is the controller I use: https://tinyurl.com/k47e2pn


Alles wat je nodig hebt zijn microcontroller, een relais en 3 treindetectoren.

Je kan dit programma uiteraard ook testen op een Arduino Uno en de 3 detectoren simuleren met draadjes verbonden tussen de inputs en ofwel 0V ofwel 5V.
Je verbindt dan de 2 detectoren die buiten de keerlus moeten worden aangebracht met pin 1 (DET-a) en pin 2 (DET-b).
De detector die binnen de lus moet komen (DET-1) verbind je met pin 0 en de uitgang is pin 3.
Op uitgang pin 3 kan je een LED met weerstand in serie van ongeveer 300ohm naar 0V aansluiten. De waarheidstabel heb ik ergens liggen en zal die ook publiceren.
De werking is als volgt:
1. loco over DET-a: DCC signaal keerlus in lijn met track onder DET-a (pin3=H)
2. loco rijdt lus binnen, rijdt over DET-1: enkel als DET-a vrij komt keert het relais (pin3=L)
3. loco rijdt lus buiten over DET-b: niets verandert (pin3=L)
4. omgekeerde zin: loco rijdt over DET-b, pin3=L
5. loco rijdt verder over DET-1: enkel zodra DET-b vrij is keert het relais: pin3=H
6. loco rijdt over DET-a: pin3=H
7. DET-1 = vrij en DET-a = bezet: pin3=H
8. DET-a is vrij: pin3=H
Met andere woorden: pin3 blijft op de status waar de laatste trein hem gelaten heeft.

Op een frans forum (http://forums.lrpresse.fr/trains/viewtopic.php?f=3&t=84123&sid=60db161af5c62faae8a126c2387bd8df kreeg ik de vraag of het mogelijk is om treinen op parkeertracks binnen de loop te zetten.
Met andere woorden: met meerdere treinen de loop binnen te rijden, en los van elkaar terug buiten te laten.
Antwoord: ja dat kan op voorwaarde dat de keerlusdetector DET-1 niet wordt geactiveerd zolang er nog treinen komen binnenrijden, en op voorwaarde dat alle treinen in dezelfde richting de lus buitenrijden.

Een andere vraag was over het gebruik van dubbele crossovers: ja dat kan ook. Een dubbele crossover wordt door de software gezien als twee keerlussen in één, en dan moet je de setup gebruiken zoals getoond in drawing 5: 2x DET-a en 2x DET-b, met de uitgangen van de detectorparen over een forward biased diode laten lopen (vermijden dat de detectorpaar uitgangen elkaar zouden beïnvloeden.
« Laatst bewerkt op: 10 May 2017, 09:38:11 door Erik84750 »

Erik84750

  • Offline Offline
  • Berichten: 56
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #9 Gepost op: 10 May 2017, 08:22:49 »
Maar effecteif en voor een zelfverklaarde 'elektroleek' als Joke misschien toch handiger. Of een gewone Lenz.
Het lijkt wel of met het voortschrijden der techniek de keerlusautomaten steeds ingewikkelder worden.  ;D
Oh ja, dat heet hobby.  :)
Ik kan me voorstellen dat dit inderdaad ingewikkeld lijkt maar het is eigenlijk niet zo moeilijk, op voorwaarde dat je iets afweet van microcontrollers. Maar zelfs dan: het enige wat je nodig hebt is een geprogrammeerde controller, een relais en 3 detectoren.
Als je wilt programmeer ik de controller wel voor jou, en alles wat je dan nog moet doen is 3 detectoruitgangen aansluiten, een relaismodule (bijvoorbeeld: link) aansluiten op pin 3.
En dan de keerlusrails op de 2 "common" contacten aansluiten, en het DCC booster output signaal op de NC contacten en het DCC signaal, omgewisseld, op de NO contacten aansluiten.
Baseer je op de aansluitingen zoals ik die reeds getekend heb ik mijn bijlage in de eerste post.
« Laatst bewerkt op: 10 May 2017, 08:55:31 door Reinout van Rees. Reden: Link visueel minder lang gemaakt »

oudebiels

  • Offline Offline
  • Berichten: 436
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #10 Gepost op: 10 May 2017, 08:42:39 »
Omdat we ons hier internationaal orienteren en ondanks de GB-uitgang:

"Hi Erik,

Thank you for sharing this project!"

Groet van keerlusloze oudebiels

Erik84750

  • Offline Offline
  • Berichten: 56
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #11 Gepost op: 10 May 2017, 08:48:29 »

Bedankt!

Mijn objectief is om hetgeen ik leer uit dit forum terug te geven onder de vorm van eigen ideëen.

Voor dit project ben ik bereid iedereen die met vragen zit hierover te helpen en ondersteuning te geven, dus laat maar weten!
« Laatst bewerkt op: 10 May 2017, 09:28:25 door Bert van Gelder. Reden: Citaat verwijderd »

Reinout van Rees

  • Team forummoderators
  • Offline Offline
  • Berichten: 7750
  • Forummoderator
    • Persoonlijke website + weblog
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #12 Gepost op: 10 May 2017, 08:54:44 »
oei, plots zijn mijn berichten heel breed uitgesmeerd: hoe los ik dat op?

Dat komt waarschijnlijk door het code blok. Dat gebruikt de hele breedte die je erin stopt. Dus die commentaren aan het eind van een paar regels zijn de dader.

Soms komt het ook door een lange link. Edit: ja, het was een link. In dit bericht heb ik de ellenlange aliexpress url vervangen door het woordje "link" :)

Reinout
« Laatst bewerkt op: 10 May 2017, 08:56:48 door Reinout van Rees »
Bouw v/d EifelBurgenBahn (h0, zijlijn in de Eifel)
Eifelgeschiedenis (verhalen en video's over de Eifelburgenbahn)

jowi

  • Offline Offline
  • Berichten: 2375
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #13 Gepost op: 10 May 2017, 08:56:28 »
Is een mechanisch relais wel snel genoeg om de polariteit te wisselen?
Gaat een rijdende trein daar geen hikje ofzo van krijgen als dat gebeurt?

Erik84750

  • Offline Offline
  • Berichten: 56
Re: Volautomatische universele bidirectionele goedkope keerlus controller
« Reactie #14 Gepost op: 10 May 2017, 09:16:09 »
Dat komt waarschijnlijk door het code blok. Dat gebruikt de hele breedte die je erin stopt. Dus die commentaren aan het eind van een paar regels zijn de dader.

Soms komt het ook door een lange link. Edit: ja, het was een link. In dit bericht heb ik de ellenlange aliexpress url vervangen door het woordje "link" :)

Reinout
Bedankt! Zal ik ook nog aanpassen.