Doel:€250.00
Donaties:€100.00

Per saldo:€-150.00

Steun ons nu!

Laatst bijgewerkt
op 22-11-2022

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

PB models: koplopers (voorbespreking) door Hans Wolbers
08 december 2022, 23:56:47
Kranenberg, een exercitie in code 70 door meino
08 december 2022, 23:29:50
NS DE-5 en ELD5 op basis van Lima Mat'46. door Eelco Storm
08 december 2022, 23:27:24
Märklin 2023, nieuws van de fabrikant. door Rob Ellerman
08 december 2022, 23:17:09
Containerdraagwagens door Duoblock
08 december 2022, 23:09:16
Serieuze schade aan bovenleiding Hanzelijn. door Joop_L
08 december 2022, 23:08:27
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
08 december 2022, 23:06:27
Verkleurde ruiten van Rocky-Rail 6400 door Duoblock
08 december 2022, 23:03:47
Raspberry Railways door Rasp
08 december 2022, 23:02:01
Toon hier je nieuwe (model-) spooraanwinst(en)... door Pascal77
08 december 2022, 22:58:30
Voor de 25ste maal: Modelbouwdagen Gangelt (D) op 26 en 27 november 2022 door db403
08 december 2022, 22:56:31
Opheffingsuitverkoop Beelen Modelbouw Utrecht. door MichielB
08 december 2022, 22:53:59
Bouw van een materieel 46 vierwagenstel door Rob Bennis
08 december 2022, 22:18:40
nepakris wagens door jandcargo
08 december 2022, 21:53:45
Kleine Baan in H0 (≤ 0.5m²) door NS1220
08 december 2022, 21:51:27
BNLS-actie: Ibes Interfrigo Chiquita - De Graaf koelwagen door jandcargo
08 december 2022, 21:40:14
BNLS modulebaan Werkspoor-Kathedraal hervat. door NS264
08 december 2022, 21:39:31
Labbern in Rotzbach Allerlei door ex44
08 december 2022, 21:20:09
Bahnstrecke 5867 door wob
08 december 2022, 21:11:33
MB-module: Hielan Ware door Paulus
08 december 2022, 21:09:07
Vijfhuis (v.h. Frotterdam) door Pascal77
08 december 2022, 20:54:02
Doorzichtige beschermkap voor spoor-0 diorama door MOVisser
08 december 2022, 20:42:39
Kato N Japans- Nederlandse (/EU) handelaren? door Gino
08 december 2022, 20:28:59
Bauarbeiten im gange door Jelmer
08 december 2022, 20:22:08
Fotowedstrijd: Winter (1:1 en model door elkaar) door Bob R.
08 december 2022, 20:01:10
Baan in Los Angeles door Eric v C
08 december 2022, 19:55:41
welke connector? door Fritsprt
08 december 2022, 19:43:25
6-12-2022: Bestelwagenchauffeur met schrik vrij na treinbotsing in Apeldoorn door timtrein
08 december 2022, 19:35:03
Super Sik door Fritsprt
08 december 2022, 19:22:37
Rondom Charlois door Alewijn
08 december 2022, 19:10:50
  

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

bask185

  • Offline Offline
  • Berichten: 2655
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

meino

  • Offline Offline
  • Berichten: 1694
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
A clean desk is a sign of an empty mind

Kranenberg
De CanBus komt naar Kranenberg

bask185

  • Offline Offline
  • Berichten: 2655
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

Mar-Cas

  • Offline Offline
  • Berichten: 170
  • 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