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

Esu Ecos - Aansluiten en verdelen spanning over meerdere boosters door Peter.v.L
Vandaag om 01:03:51
Piko 2025 door KNed
Vandaag om 00:10:30
Toon hier je nieuwe (model-) spooraanwinst(en)... door Roy van Dijk
30 June 2025, 23:53:36
BR-18.6 Schaal-0. door FritsT
30 June 2025, 23:46:15
De IJmuider spoorlijn - korte geschiedenis en plaatjes door hervé
30 June 2025, 23:24:45
Bentheimer Eisenbahn, gisteren, vandaag en morgen. door puntenglijder
30 June 2025, 23:18:39
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
30 June 2025, 22:23:52
Reizigersmaterieel Twentelijn in de jaren '70 door 1200blauw
30 June 2025, 22:14:08
Br 41 Weinert, loop of sloop ? door AP3737
30 June 2025, 22:08:22
meer wissels invoeren in Z21 door Frank 123
30 June 2025, 21:30:51
Set met 2 VAM GFT en 1 VAM potgrond exclusief MTE door Mug
30 June 2025, 21:02:21
Time-of-flight module door janvanbemmel
30 June 2025, 20:31:48
Gekke/vreemde/rare filmpjes en video's met treinen erin. door prutser
30 June 2025, 20:27:32
Werkt de Yamorc software op Ubuntu? door reinderlf
30 June 2025, 20:10:28
Mijn Ned. N. Spoorbaan ''Echthoven'' door raymond erdtsieck
30 June 2025, 20:04:58
US diorama in H0 door Frank 123
30 June 2025, 20:00:16
Onlangs gespot - gefotografeerd, de foto's door Modellbahnwagen
30 June 2025, 19:43:42
Vijfhuis (v.h. Frotterdam) door Ronald Halma
30 June 2025, 19:13:34
keerlusproblemen door astrantia
30 June 2025, 18:04:38
De Projecten van RetroJack door RetroJack
30 June 2025, 17:07:25
Bauarbeiten im gange door spoorijzer
30 June 2025, 16:31:53
De modeltreinen van Spoorijzer door spoorijzer
30 June 2025, 16:30:43
Een nieuw begin door dreezy
30 June 2025, 16:23:56
Ombouw/Pimpen Bolle neuzen door Montanbahn
30 June 2025, 15:19:31
Bouw NTM Stationsgebouw Lemmer door Dave.......
30 June 2025, 15:05:55
Gelders Smalspoormuseum / Gelderse Smalspoor Stichting stelt zich voor door spoorijzer
30 June 2025, 14:26:22
Modules van Kees Gorter (vervolg) door ca.gorter
30 June 2025, 14:18:38
Aanluiting tussen tender en stoomlok door Klaas Zondervan
30 June 2025, 12:44:13
Klein baantje 1200x1200mm door spoorijzer
30 June 2025, 12:38:46
20 jaar BNLS door Hans Reints
30 June 2025, 12:31:00
  

Auteur Topic: Ali-lichtsluisjes en overwegaansturing met arduino  (gelezen 21648 keer)

bask185

  • Offline Offline
  • Berichten: 4933
Re: Ali-lichtsluisjes en overwegaansturing met arduino
« Reactie #105 Gepost op: 29 September 2022, 10:52:22 »
Citaat
Ik zal die zo even testen of die nog werkt
Done!. Er zaten nog wat issues in, zou nu weer gelikt moeten zijn  (y) https://github.com/bask185/ahob/

In mijn code heb ik alle IO gecentraliseerd in een bestandje io.h. Die kan je niet openen via de arduino ide omdat hij in de src sub-folder staat. Gelukkig heeft elke computer kladblok  ;D
#define detector1 2
#define detector2 3
#define detector3 4
#define detector4 5
#define servoPin1 6
#define servoPin2 7
#define led1 10
#define blinkLed1 12
#define blinkLed2 13
Geschikt voor 1 tot oneindig veel sporen en werkt in beide richtingen. Omdat deze code voor een AHO was gemaakt, zit er ook code in voor servo's maar als je die gewoon niet aansluit, heb je een prima werkende AKI  ;)

#include "src/io.h"
#include "railCrossing.h"
#include "track.h"

const int trackPins[][2] =                                                      // pin numbers for the track objects
{
    { detector1, detector2 } ,                                                  // track 1
    { detector3, detector4 } ,                                                  // track 2
    //{ detector5, detector6 } ,                                                // track 3 add as many as you want
 } ;

Track track[] =                                                                 // array of track objects, each track object has 2 sensors
{
    Track(),
    Track(),
    // Track(),                                                                 // for every track, you need to add a line here
} ;

const uint8_t nTracks = sizeof(track) / sizeof(track[0] ) ;                     // should correctly get the amount of tracks.

void setup()
{
    initIO();
    Serial.begin(4800);
    Serial.println(F("AHOB STARTED")) ;

    for( int i = 0 ; i < nTracks ; i ++ )
    {
        uint8_t pin1 = trackPins[i][0] ;                                        // get pins from array and pass them to all track objects
        uint8_t pin2 = trackPins[i][1] ;
        track[i].begin( pin1, pin2 ) ;
    }
    railCrossingInit();                                                         // initialize state machine for rail crossing
}

void loop()
{
    uint8_t occupiedTracks = 0 ;

    for( int i = 0 ; i < nTracks ; i ++ )
    {
        if( track[i].readSensors() != 0 ) occupiedTracks = 1 ;                  // if atleast one track detects a train, set this to 1
    }

    railCrossing( occupiedTracks );                                     // stuur ahob aan
}
}

Probeer wel eerst Meino's code uit  :P

Mvg,

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

meino

  • Offline Offline
  • Berichten: 2317
Re: Ali-lichtsluisjes en overwegaansturing met arduino
« Reactie #106 Gepost op: 29 September 2022, 10:56:21 »
Edsko

Soest-Vleuten is niet zo ver, misschien moeten we eens afspreken als je er niet uitkomt met alle drie de schetsjes. Ik kan wel naar jou toekomen, je bent ook welkom bij mij. Dus zie maar.

Groet Meino

bask185

  • Offline Offline
  • Berichten: 4933
Re: Ali-lichtsluisjes en overwegaansturing met arduino
« Reactie #107 Gepost op: 29 September 2022, 11:44:54 »
Ik zou sws naar Meino gaan, kan je Kranenberg bekijken  ;D
Train-Science.com
Train-Science github
It ain't rocket science ;-)

Mar-Cas

  • Offline Offline
  • Berichten: 255
  • Samen bouwen a.d. woonkamerbaan is wel zo gezellig
Re: Ali-lichtsluisjes en overwegaansturing met arduino
« Reactie #108 Gepost op: 29 September 2022, 19:22:29 »
Edsko,

Jij HEBT hetzelfde probleem als ik HAD met die arduino's,
te weinig ervaring, te weinig praktijk, tussen alle haakjes enz het overzicht kwijt en bij mij het feit dat ik altijd ruzie heb met mijn 2 vingerig toetsenbord en het toetsenbord met mij. Die code , eerlijk gezegd ik snap er geen jota van.

Vanmiddag heb ik je probleem eens in mijn programma samengesteld en in 3 uurtjes tijd kwam ik tot de volgende,




ff getest en het werkt. OK, het is maar voor enkelspoor maar het geeft 'n idee. De code is ook beschikbaar,
#include <SimpleTimer.h>

volatile int Spoor_leeg;
volatile boolean SR_pin_4;
volatile boolean SR_pin_5;
SimpleTimer timer;

void Simple_timer_1() {
  if (Spoor_leeg == 0) {
    //Knipperen geel 1000mSec
    digitalWrite(8,(!digitalRead(8)));

  } else {
    digitalWrite(8,LOW);

  }
}

void Simple_timer_3() {
  //Knipperen rood  250mSec
  if (Spoor_leeg != 0) {
    digitalWrite(9,(!digitalRead(9)));
    digitalWrite(10,(!digitalRead(9)));

  } else {
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);

  }
}

void setup(){
  Spoor_leeg = 0;
  SR_pin_4 = LOW;
  SR_pin_5 = LOW;
  pinMode(4, INPUT);
  pinMode(5, INPUT);
  pinMode(12, INPUT);
  Serial.begin(9600);
  pinMode(8, OUTPUT);
  timer.setInterval(1000L, Simple_timer_1);

  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  timer.setInterval(200L, Simple_timer_3);

}

void loop(){
  pinMode(4, INPUT_PULLUP);
  pinMode(5, INPUT_PULLUP);
  pinMode(12, INPUT_PULLUP);
  //Inrij  signaal
    if (!digitalRead(4) && SR_pin_4) {
      Spoor_leeg = Spoor_leeg + 1;
      SR_pin_4 = LOW;

    } else {
      if (digitalRead(4)) {
        SR_pin_4 = HIGH;

      }

    }
    if (!digitalRead(5) && SR_pin_5) {
      Spoor_leeg = Spoor_leeg - 1;
      SR_pin_5 = LOW;

    } else {
      if (digitalRead(5)) {
        SR_pin_5 = HIGH;

      }

    }
  //Reset tellerstand bij storing
  if (digitalRead(12) == LOW) {
    Spoor_leeg = 0;

  }
  Serial.println(Spoor_leeg);


  timer.run();

}

Voor mijzelf een groot gemak en waarom zou ik al het toetsenwerk over en over again opnieuw doen?

Momenteel aktief met ESP32 om een home systeem over WiFi te bouwen, maar dat heeft niets met treintjes te maken ;D

Groet Caspar
« Laatst bewerkt op: 29 September 2022, 19:28:15 door Mar-Cas »
Greetz Caspar

willy1

  • Nieuwe gebruiker
  • Offline Offline
  • Berichten: 2
Re: Ali-lichtsluisjes en overwegaansturing met arduino
« Reactie #109 Gepost op: 31 December 2022, 16:20:10 »
Ik heb hier al veel gelezen op het forum,maar ik had nog geen account.
nu even een vraag over de overweg.
Ik heb met een vriend een sketch geschreven in wokwi,deze is voor enkelspoor in 2 richtingen en 2 sensoren.
heb het nog niet op de baan n spoor getest.
heb nu wel een vermoeden dat ik met een korte trein rijd de slagbomen te vroeg  gaan openen.
misschien beter om met 4 sensoren te werken.
https://wokwi.com/projects/352417544076547073 hierbij de link voor de geintresseerde.
is voor een belgisch spoorweg.

spock

  • Offline Offline
  • Berichten: 753
Re: Ali-lichtsluisjes en overwegaansturing met arduino
« Reactie #110 Gepost op: 31 December 2022, 17:57:39 »
Hallo Willy1,

Ik vermoed dat je de weerstanden bent vergeten voor de leds.

Ik kende wokwi  nog niet, ziet er leuk uit.
Bedankt voor het vermelden.

mvg spock

willy1

  • Nieuwe gebruiker
  • Offline Offline
  • Berichten: 2
Re: Ali-lichtsluisjes en overwegaansturing met arduino
« Reactie #111 Gepost op: 31 December 2022, 20:21:35 »
in wokwi is dit niet echt nodig,Ik heb weerstanden van 220ohm tussen de leds staan.