Doel:€250.00
Donaties:€0.00

Per saldo:€-250.00

Steun ons nu!

Laatst bijgewerkt
op 03-12-2025

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

MLF Fleischmann motor kit door Jean
Vandaag om 10:16:57
19 Toen door Benelux795
Vandaag om 10:09:25
Raadplaatje door Hlv53
Vandaag om 10:07:34
Onlangs gespot - gefotografeerd, de foto's door Charles_
Vandaag om 09:54:56
Elotrains Plan K pimpen. door gtw6016
Vandaag om 08:45:01
BNLS-Werkspoor - HIAB hijskraan t.b.v. Sik door MOVisser
Vandaag om 08:42:46
Big Scale Trains - NS SLT in H0 door MOVisser
Vandaag om 08:17:33
Mijn eerste H0-modeltreinbaan in aanbouw door Hans Grasmaijer
Vandaag om 07:40:53
13 en 14 december PFT-TSP naar Aachen door Jos B.
Vandaag om 01:02:37
Toon hier je nieuwe (model-) spooraanwinst(en)... door DJV
18 January 2026, 23:30:25
Station Arnhem jaren '80' door RICROO
18 January 2026, 22:34:52
Camp 3 door Whis
18 January 2026, 22:17:19
Bouw NTM Stationsgebouw Lemmer door DJV
18 January 2026, 21:56:03
Bahnstrecke 5867 door Frank 123
18 January 2026, 21:43:53
Rondom Charlois door hervé
18 January 2026, 21:39:29
Perron: rechte zijkant (bv muurtje) versus aflopend schuine zijkant door Rolf S
18 January 2026, 21:35:21
Gare de Tannay, Frans N-spoor door Wim1969
18 January 2026, 21:22:06
Mooi weer om buiten te spelen door sncf231e
18 January 2026, 21:11:20
664470 door Die Bahn
18 January 2026, 20:43:26
Welke koppeling onder de BR116? door Ronald69
18 January 2026, 20:13:14
Ombouw/Pimpen Bolle neuzen door Sikko
18 January 2026, 19:38:53
Ik ben een Märklin 3013 aan het restaureren maar… door Martijn193
18 January 2026, 18:48:49
Openen Piko 1100 "botsneus" door Hennie
18 January 2026, 18:07:25
Is hier een functiedecoder stuk? Of is er wat anders mis? (Roco Plan V DC DCC) door phdirk
18 January 2026, 17:11:54
Länderbahn en Reichsbahn locomotieven. door Eric B
18 January 2026, 16:30:10
"Jede Stunde, jede Klasse": DB Intercity '79 door ES44C4
18 January 2026, 16:21:20
Palisade Canyon door RobVille
18 January 2026, 16:02:53
automaus : Bespreking & Ervaring door Tjalling
18 January 2026, 15:45:12
Mallnitzer Tauernbahnstrecke ÖBB N Spoor door Schachbrett
18 January 2026, 15:30:56
De overeenkomst tussen een Ovaalramer en een Motorpost. door Frits C
18 January 2026, 15:17:22
  

Auteur Topic: Schets Weistra regeling met arduino UNO  (gelezen 4870 keer)

keesg

  • Offline Offline
  • Berichten: 24
Schets Weistra regeling met arduino UNO
« Gepost op: 29 July 2025, 12:39:30 »
Hallo allemaal,

Ben op zoek naar een schets voor arduino uno voor een snelheid regelaar volgens het Weistra principe. PWM met een veranderende frequentie.
Heb met AI van alles geprobeerd maar krijg geen goede regeling. De trein stopt als ik de snelheid potmeter te snel van langzaam naar snel draai. Duurt een 0.5 sec en rijd dan weer verder.
Ik krijg dit probleem niet weg.
Ik heb geen verstand van programmeren maar weet wel een beetje wat een arduino doet.
Ik zoek een regeling met 1 potmeter voor de snelheid en een schakelaar voor de rijrichting. Mijn arduino is aangesloten op een L298n motor driver.
De arduino en L298n printjes zijn van Chinese afkomst. klonen dus.
Zijn er mensen die de regeling hebben gemaakt en mij een schets kunnen sturen?

Klaas Zondervan

  • Offline Offline
  • Berichten: 27167
    • Pagina van klaas
Re: Schets Weistra regeling met arduino UNO
« Reactie #1 Gepost op: 29 July 2025, 12:49:30 »
Iemand op dit forum heeft de Weistra regelaar al eens in software gebouwd, ik dacht bask, maar dat kan ik mis hebben.
Wat is voor jou de reden om het met een Arduino te doen? Als je wil besturen met een potmeter en een schakelaar, dan is een hardware schakeling vrij eenvoudig te maken.
Projecten:
Dubbelom
Halte Assel
Geluk, dat is vooraan staan als de overweg gesloten is.

keesg

  • Offline Offline
  • Berichten: 24
Re: Schets Weistra regeling met arduino UNO
« Reactie #2 Gepost op: 29 July 2025, 12:59:01 »
Hallo Klaas.

Ik heb de regeling van Weistra ook analoog gebouwd. Van elektronica heb ik wel kennis. Deze werkt voor mijn Fleischmann treinen perfect.
Ik wil er een aantal hebben en prijs technisch gezien is het interessant om het met een arduino te doen. Vooral de nano is interessant maar die heb ik niet in huis.
Dus eerst proberen met de UNO. AI werkt heel goed maar dat stoppen is hopeloos.
Vandaar.

Klaas Zondervan

  • Offline Offline
  • Berichten: 27167
    • Pagina van klaas
Re: Schets Weistra regeling met arduino UNO
« Reactie #3 Gepost op: 29 July 2025, 13:17:20 »
Maakt het prijstechnisch echt veel verschil? Een hardware versie kost een tientje aan onderdelen. De duurste delen zijn de potmeter, de schakelaar en de powertransistor, en die heb je bij de Arduino versie ook nodig.
Projecten:
Dubbelom
Halte Assel
Geluk, dat is vooraan staan als de overweg gesloten is.

bert55

  • Offline Offline
  • Berichten: 994
Re: Schets Weistra regeling met arduino UNO
« Reactie #4 Gepost op: 29 July 2025, 13:33:25 »
In het algemeen zou ik zeggen: gebruik je een Arduino zet dan ook de sketch in de vraag. Laatste tijd vraag ik AI ook om de aanzet tot een sketch maar moet er wel vaker fouten uit halen.
Met vriendelijke groet, Bert
Märklin, DCCnext, ECOS
Witmoosdorf afgebroken, Witmoos 2 wordt opgestart na de verhuizing

keesg

  • Offline Offline
  • Berichten: 24
Re: Schets Weistra regeling met arduino UNO
« Reactie #5 Gepost op: 29 July 2025, 13:37:09 »
Klopt wat je zegt maar ik wil met de arduino nog veel meer dingen doen. AI werkt erg goed. Heb ik ook voor andere dingen gebruikt die erg goed werken. Zoals bv aan stappen motor.
Het is ook een uitdaging om te kijken of het met een arduino lukt. Ben van plan er een stuk of 10 aan te schaffen ook voor andere doeleinden. Alleen het programmeren in C is erg lastig en het leren kost veel tijd. Vroeger wel veel geprogrammeerd met de 8085 processor maar dat gaat niet met C maar op een hexadecimale manier.
Helaas laat AI nu mij in de steek daarom de vraag. Ik zal niet de enige zijn die daar mee aan de gang is gegaan.
Het is alleen een schets. Voor de deskundige zal het wel te doen zijn denk ik.

bert55

  • Offline Offline
  • Berichten: 994
Re: Schets Weistra regeling met arduino UNO
« Reactie #6 Gepost op: 29 July 2025, 13:49:31 »
Ik had gevraagd de sketch te delen om mee te denken.  ???
Met vriendelijke groet, Bert
Märklin, DCCnext, ECOS
Witmoosdorf afgebroken, Witmoos 2 wordt opgestart na de verhuizing

bask185

  • Offline Offline
  • Berichten: 5229
Re: Schets Weistra regeling met arduino UNO
« Reactie #7 Gepost op: 29 July 2025, 13:57:56 »
Guilty!

Je hebt de weistra.cpp en weistra.h nodig. Je moet in je project folder waar je .ino staat deze 2 bestanden toevoegen. Om te downloaden kan je het makkelijkst de gehele respository downloaden. Op de code knop klikken en dan download zip. En modules folder staan de bestanden die je zoekt.
https://github.com/bask185/ArduinoToolchain
https://github.com/bask185/ArduinoToolchain/tree/master/modules

Wat betreft de sketch. Ik denk dat dit moet werken
#include "weistra.h"

const int pinA          =   2 ;
const int pinB          =   3 ;
const int Fmin          =  50 ;
const int Fmax          = 100 ;
const int CS            =  A0 ;
const int potPin        =  A1 ;
const int acceleration  = 500 ;
const int potMiddle     = 512 ;
const int deadRange     =  20 ;

Weistra pwm( pinA, pinB, Fmin, Fmax ) ;

void setup()
{
    pinMode( potPin, INPUT ) ;
    pwm.begin() ;

    uint8_t currentLimit = 169 ;
    /*currentLimit = Imax * Rshunt / 0.00488 -> 2.5A x 0.33R (3x 1R parallel) / 0.00488 = 169 */
    pwm.setCurrentSense( CS, currentLimit )
}

void loop()
{
    static uint32_t lastTime = 0 ;
    if( millis() - lastTime >= acceleration )  // run every interval time
    {     lastTime = millis() ;

        static int8_t throttle = 0 ;
        int8_t        setPoint = 0 ;
        int           sample = analogRead( potPin ) ;

        if(      sample <= potMiddle - deadRange  ) setPoint = map( sample, 0, potMiddle - deadRange  ,  -100,   0 ) ;  // scale  [0.. middle -20]     to  [-100..0]
        else if( sample >= potMiddle + deadRange  ) setPoint = map( sample, potMiddle + deadRange  , 1023,  0, 100 ) ;  // scale  [middle + 20 .. 1023] to [0..100]
        else                                setPoint = 0 ;                                             // middle 40 adc steps = dead range -> speed 0

        if( throttle < setPoint ) throttle ++ ;
        if( throttle > setPoint ) throttle -- ;

        pwm.setSpeed( throttle ) ;
    }

    pwm.update() ; // also handles short circuit.
}

Er zit ook kortsluiting detectie en autoreset ingebouwd. De L298 is niet beveiligd tegen sluiting. Je kan tussen de GND pin en de voeding 3 of 4 1R weerstanden parralel  (en een 100nF condensator) zetten, of een dikkere weerstand met een lage waarde 0.1R - 0.33R. Er moet dan ook een draadje naar een analoge ingang (CS) De weerstand moet wel de stroom kunnen dissiperen.  De berekening in code van wat je stroom grens moet zijn, staat in commentaar. Zo kan je zelf kiezen hoeveel stroom je maximaal wilt kunnen uitsturen.

De enable pin mag aan de 5V en beide ingang pinnen van een van de 2 kanalen mogen aan outputs naar keuze.

De code leest de potmeter in, maakt een dood gebiedje om makkelijk je trein stil te kunnen zetten (anders is dat niet te doen) en schaalt de potmeter waarde correct om naar gebruik voor de weistra. Er zit een optrek rem vertraging in, die kan je instellen met 'acceleration'. Lage waarde = kleine optrek/rem vertraging.

Je kan ook Fmin en Fmax instellen. Zelf vind ik 20Hz kut om 2 redenen, 50Hz raad ik aan als onder grens en 100Hz als boven grens.

Mvg,

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

keesg

  • Offline Offline
  • Berichten: 24
Re: Schets Weistra regeling met arduino UNO
« Reactie #8 Gepost op: 29 July 2025, 14:11:42 »
Hoi Bask,

Nu kom ik wat verder. Ik hoop dat ik het allemaal begrijp. Uhh.....de eerste regel is al lastig. de stroombeveiliging snap ik wel.
Denk dat ik toch iets meer hulp nodig heb.
Kan wel een schets downloaden enz.

keesg

  • Offline Offline
  • Berichten: 24
Re: Schets Weistra regeling met arduino UNO
« Reactie #9 Gepost op: 29 July 2025, 14:15:31 »
Nee Bask ik zie nu door de bomen even het bos niet meer.
Help !!!!

bask185

  • Offline Offline
  • Berichten: 5229
Re: Schets Weistra regeling met arduino UNO
« Reactie #10 Gepost op: 29 July 2025, 14:41:59 »
Ik kan vanavond wel ff helpen. Dan maak ik wel ff een filmpje
Train-Science.com
Train-Science github
It ain't rocket science ;-)

keesg

  • Offline Offline
  • Berichten: 24
Re: Schets Weistra regeling met arduino UNO
« Reactie #11 Gepost op: 29 July 2025, 19:03:02 »
fijn dat je wilt helpen. Elektronica lukt wel maar programmeren van een arduino is een ander verhaal.
Ik was blij met AI maar dat lukt niet echt.
Hopelijk kan je me duidelijk maken hoe ik de arduino kan programmeren.

keesg

  • Offline Offline
  • Berichten: 24
Re: Schets Weistra regeling met arduino UNO
« Reactie #12 Gepost op: 29 July 2025, 19:28:52 »
Ik heb trouwens een Chinese kloon van de arduino UNO.

bask185

  • Offline Offline
  • Berichten: 5229
Re: Schets Weistra regeling met arduino UNO
« Reactie #13 Gepost op: 29 July 2025, 21:07:38 »
<a href="https://www.youtube.com/v/aEzPoUzBphE" target="_blank" class="new_win">https://www.youtube.com/v/aEzPoUzBphE</a>
Train-Science.com
Train-Science github
It ain't rocket science ;-)

keesg

  • Offline Offline
  • Berichten: 24
Re: Schets Weistra regeling met arduino UNO
« Reactie #14 Gepost op: 29 July 2025, 22:50:52 »
Dank je wel voor het filmpje
Erg vriendelijk om dat te doen. Ik ga er morgen naar kijken  :)