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

Ombouw/Pimpen Bolle neuzen door bollen neus
Vandaag om 12:39:27
Toon hier je nieuwe (model-) spooraanwinst(en)... door VAM65
Vandaag om 12:30:18
DDAR op basis van een Artitec DDM door Daan de leeuw
Vandaag om 12:28:53
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
Vandaag om 12:19:36
lampjes in huizen willekeurig schakelen door Bert55
Vandaag om 12:18:55
Wat was jullie allereerste loc? door thevandijks
Vandaag om 12:14:00
23 augustus modelspoorbeurs Houten door Ronaldk
Vandaag om 12:11:08
Sfeer op je modelbaan door Ronald Halma
Vandaag om 12:04:53
De modeltreinen van Spoorijzer door spoorijzer
Vandaag om 12:03:21
Hoe een Train-O-Matic lokdecoder voorzien van een lang adres ? door bellejt
Vandaag om 11:59:57
RhB H0m, Albulisch door R.C.Grootveld
Vandaag om 11:50:00
BR-18.6 Schaal-0. door Frits C
Vandaag om 11:46:52
Rijnstraat door Gerco van Beelen
Vandaag om 11:45:26
Fleischmann Anna ombouw. door Besselspoor
Vandaag om 11:43:30
Waldbrunn an der Veluwe. Romantiek in H0 (2R) door Martin Domburg
Vandaag om 11:15:07
Onlangs gespot - gefotografeerd, de foto's door Rick
Vandaag om 11:10:15
booster vraag door Montanbahn
Vandaag om 11:02:35
Vijfhuis (v.h. Frotterdam) door alex1212
Vandaag om 10:54:02
Her-(her-)beginnen door Ronaldk
Vandaag om 10:53:47
Van welk bouwpakket zijn dit onderdelen? door Karben
Vandaag om 10:41:39
Spoor- en tramweg parafernalia door R1954
Vandaag om 09:48:16
Module vliegveld Jan van Mourik door MOVisser
Vandaag om 09:32:45
De IJmuider spoorlijn - korte geschiedenis en plaatjes door Vislijn
Vandaag om 09:32:06
Aachenau West door Montanbahn
Vandaag om 08:50:13
Mallnitzer Tauernbahnstrecke ÖBB N Spoor door Schachbrett
Vandaag om 00:36:04
Toon hier je (model)TRAM foto's. door prutser
07 August 2025, 23:33:45
Wielen bruineren. Hoe? door hmmglaser
07 August 2025, 23:33:02
De fabriek - Spoor 0 door bernhard67
07 August 2025, 23:18:36
Mantua H0 GP20 DCC & sound rijd erg slecht weg door Ronald Halma
07 August 2025, 23:12:20
Trix DXI van DC naar AC door Robert vh Prutsert
07 August 2025, 23:00:48
  

Auteur Topic: TT-baan, met Arduino aansturing  (gelezen 30931 keer)

spock

  • Online Online
  • Berichten: 764
Re: Nieuwe TT-baan, Arduino aansturing
« Reactie #30 Gepost op: 29 April 2015, 08:20:42 »
Hoi Nico,

Je bent heel leuk bezig. Ik ben ook bezig met deze manier van aansturing van wissels en heb ook het jitteren van de servo's (ook onbelast). Bij mij lijkt het erop dat de DCC en de decoder software elkaar het leven zuur maken.
Het jitteren stopte als het ingangsDCCspanning werd losgekoppeld.
Bij ons op de club hadden we een vergelijkbare wisselsturing en daar werd ook de spanning afgeschakeld (=detach) en dat had als nadeel dat de servo zijn kracht verliest en dat de wissel, door de trein, uit zijn positie werd gereden.

Dit gebeurde bij schaal HO en hopelijk gebeurd dit niet bij TT. Dit is ook afhankelijk hoeveel weerstand de servo heeft als deze stuurspanningsloos is.

Wil je svp een test doen of het jitteren ophoud als de dcc spanning wordt verwijderd?
Ruud heeft dit jitteren niet en helaas bij mij wel. Ruud gebruikt een Arduino Uno en bij mij is een Arduino Mega2560 in gebruik.
Welke Arduino gebruik jij?

Ik had als oplossing bedacht om de servo library uit te breiden met een pause en resume functie maar dat is (misschien nog) niet goed geimplementeerd. (Teveel projectjes, te weing tijd)

Met vriendelijk groet, Spock




Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: TT-baan, met Arduino aansturing
« Reactie #31 Gepost op: 29 April 2015, 12:01:29 »
Hoi Spock (echt Spock?  :o )

Jitteren van een servo zal altijd wel wat gebeuren. Hangt ook van de servo af, sommige zijn gevoeliger voor verandering in signaal dan andere. (Die van ESU zijn bijvoorbeeld super ongevoelig, zo erg dat een bounce/wibbel functie niet te doen is.) DCC en servo library werken beide op basis van interrupts dus ze kunnen elkaar heel iets storen. Beide interrupt routines zijn redelijk kort maar kunnen net invloed hebben. Onder last zal je altijd wel jitteren houden, detach is dan de remedie. (En dat is wat anders dan de spanning uitschakelen ;) ) Hiervoor hoef je op zich de library niet voor aan te passen. Er zit gewoon een detach functie in de standaard library. Nadeel is dat je bij een attach daarna weer opnieuw het pinnummer en eventuele min max parameters weer moet opgeven. Daarom heb ik zelf de servo library aangepast en een reattache functie gemaakt. Deze kan gewoon zonder parameter aangeroepen worden. Ook zijn er een paar bugs geplet en iets geoptimaliseerd. Het staat je vrij deze uit de adServo software te halen :) Dan hoef je het wiel niet opnieuw uit te vinden. adServo v3 is hier te vinden (incl de libraries dus)

Overigens vind ik het vreemd dat het detachen de wissel doet verplaatsen. De weerstand van de servo zonder aansturing is (bij de meeste servo's) wel redelijk hoog. Ook is er helemaal geen kracht nodig om een wissel om zijn plaats te houden (alleen Tillig wissels misschien een beetje). Een trein over een wissel zou hier ook niets aan mogen doen. Enige wat ik me kan bedenken is dat de servo te ver bewogen wordt en dat het verstaal onder een grote spanning komt te staan waardoor na een detach de boel weg veert.


Timo
Verzonden vanaf mijn desktop met Firefox

gvandersel

  • HCC!m maar toch Selectrix (RMX)
  • Offline Offline
  • Berichten: 3603
  • Als het maar elektrisch is.
    • Homepage Gerard van der Sel
Re: TT-baan, met Arduino aansturing
« Reactie #32 Gepost op: 29 April 2015, 12:08:52 »
Jitteren tegen gaan kan ook door simpel een weerstand van 4k7 op te nemen tussen de signaal draad en de +. Een smd weerstand kan vaak precies tussen de pennen van de connector.

Groet,

Gerard van der Sel.
Holzburg (IIIb/IVa) schaal N.
Kijk ook eens bij de bouw en lees de avonturen.

NTeering

  • Offline Offline
  • Berichten: 1038
    • ARduino Controlled MOdel RAilway
Re: TT-baan, met Arduino aansturing
« Reactie #33 Gepost op: 29 April 2015, 14:46:58 »
Bedankt voor jullie positieve reacties.

@spock
Ik heb er geen last van dat de servo z'n kracht verliest na de detach. Tillig wissels hebben geen veer, zoals die van Rudy. Dus die kracht is ook echt nodig om de wisseltongen op z'n plek te houden.
Het voordeel is dan weer dat bij 'eenrichtingswissels' (zoals bv bij uitrijden van schaduwstations) ze heel makkelijk kunnen worden open gereden en hiervoor dus geen aansturing nodig is.
Op dit moment gebruik ik nog een Arduino Uno, net als Rudy. Blijft vaag waarom hij geen last heeft van jitteren.
Nog even afwachten of de Pro mini dit probleem niet heeft.

Ik kan wel eens testen of het jitteren verdwijnt als de DCC spanning wordt verwijderd. Maar dat is eigenlijk geen oplossing zoals Timo ook al aangeeft en is ook geen 'detach'.

@Timo
Het is niet nodig om alle servo parameters opnieuw op te geven. Attachen is uiteraard wel nodig. Ik heb de pinnummers in een apart array gezet (byte servopins[] = {8,9,7,6,A0,A2}) dat gebruikt wordt bij het attach commando (servos[n].pin.attach(servopins[n]). Omdat per loop een servo maar één graad wordt verplaatst en er dus een aantal loops voor nodig zijn om het setpoint te bereiken is er ook een boolean array nodig dat bijhoudt of de attach al gedaan is.
Mijn basis is overigens nog altijd de sketch van Ruud en de door hem gebruikte library.
Als je wilt kan ik 'm wel mailen.

@gvandersel
Interessante suggestie. Ik zal het eens uitproberen. Als we daarmee afkomen van de jitter en daarmee van het detachen is het een mooie oplossing.

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: TT-baan, met Arduino aansturing
« Reactie #34 Gepost op: 29 April 2015, 17:28:30 »
Ik durf er geld op in te zetten dat de Pro Mini hetzelfde doet als de Uno. Waarom? Ze zijn, afgezien van de vorm en het ontbreken van USB) identiek.

Open rijden kan (zolang je geen Tillig gebruikt) zolang de servo positie er maar niet door wordt verandert. Ook werkt puntstuk polarisatie niet. Denk dat open rijden in praktijk ook nooit nodig is als je het goed stuurt.

Kan best zijn dat de DCC interrupt net genoeg tijd kost om de Servo interrupt iets te verstoren en je servo's erg gevoelig zijn. Ik zou zeggen, gewoon lekker detachen, heb je nergens last van.

Het is wel degelijk nodig alle servo parameters opnieuw op te geven. In dit geval is het alleen het pinnummer maar dat is toch een parameter? En deed je in het begin ook alleen het pinnummer opgeven dan zijn dat toch alle parameters? Waarom ik alle schrijf is omdat als je ook zelf de min en max gezet hebt je deze bij iedere attach ook moet opgeven. Gebruik je later attach(pin) dan wordt automatisch de standaard waarde voor min en max gebruikt.

Ruud maakt gewoon gebruik van de standaard servo library. Zoals gezegd heb ik deze iets aangepast. Niets schokkends en backwards compatible. Alleen meer resolutie toegevoegd, een reattach() functie en twee bugfixes. Beschikbaar in de adServo download.


Timo
Verzonden vanaf mijn desktop met Firefox

NTeering

  • Offline Offline
  • Berichten: 1038
    • ARduino Controlled MOdel RAilway
Re: TT-baan, met Arduino aansturing
« Reactie #35 Gepost op: 29 April 2015, 21:09:49 »
@Timo

De MIN en MAX waardes worden éénmalig gezet tijdens de setup procedure.
Het is wellicht het beste als je hier de (gestripte) sketch even bekijkt.

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: TT-baan, met Arduino aansturing
« Reactie #36 Gepost op: 30 April 2015, 17:32:11 »
Nico, de variabele die jij min en max noemt in je sketch hebben helemaal niets te maken met de servo library. Ik spreek van de servo library, niet jouw implementatie, en de parameters die je daar moet opgeven, namelijk de min en max hoek (dus 0 en 180 graden) in us. Deze kan je opgeven bij een attach (zie Servo.attach()), geef je niets op worden de default waarde van 544us voor 0 graden en 20000us voor 180 graden gebruikt. Wil je andere waarde dan de default gebruiken dan moet je dit bij iedere attach opnieuw opgeven samen met het pinnummer.

Gebruik je in de setup alternatieve min/max en attach (servo.attach(ServoPin, 600, 19000) ) je later zonder deze waarde in de attach oproep (servo.attach(ServoPin) ) dan worden als nog de default waarde gebruikt. Vandaar, bij elke attach aanroep moet je alle parameters weer opgeven. Om dit te overkomen heb ik de functie reattach toegevoegd, scheelt ook weer overhead. Jij zet duidelijk geen alternatieve min/max waarde dus in jouw geval is alle parameters alleen de pin.

En zoals gezegd, toen ik toch al bezig was met de library gelijk bugs geplet en de resolutie verhoogd met een factor 6. Dit om ook op lage snelheden vloeiend te bewegen.


Timo
Verzonden vanaf mijn desktop met Firefox

NTeering

  • Offline Offline
  • Berichten: 1038
    • ARduino Controlled MOdel RAilway
Re: TT-baan, met Arduino aansturing
« Reactie #37 Gepost op: 30 April 2015, 23:33:16 »
@Timo,

Ok duidelijk. We hebben het dus over verschillende dingen.
Opgelost.

Overigens vandaag de aansturing via koploper kunnen realiseren. Wissels en loks kunnen nu dus vanaf koploper worden bedient.
Nu de terugmelding .

NTeering

  • Offline Offline
  • Berichten: 1038
    • ARduino Controlled MOdel RAilway
Re: TT-baan, met Arduino aansturing
« Reactie #38 Gepost op: 15 May 2015, 12:16:35 »
Inmiddels een Pro Mini binnen gekregen en deze meteen op de adServo geprikt.
Dat ging dus niet goed. Geen idee waarom niet maar bij het inschakelen van de spanning sprongen de servo's alle kanten op. Helemaal in de stress.
Met enige moeite konden ze daarna wel weer in het gareel gebracht worden en 'luisterden'ze wel weer naar het DCC-signaal.
Ook rare effecten zoals dat bij omzetten van wissel 2, ook wissel 1 helemaal doordraait.

Geen idee wat er fout gaat. De adServo zelf? Lijkt me niet heel waarschijnlijk. Het ontwerp ziet er goed uit. Ook zie ik geen slechte soldeerverbindingen.
Omdat het bij zo'n probleem lastig zoeken is naar de echte oorzaak heb ik besloten om de APM op een standaard montagebordje te plaatsen met alleen de vereiste DCC componenten. Dat ziet er dan zo uit:



Voor de servo's worden de pinnen 10 t/m 13 en A0 t/m A3 gebruikt.
De APM wordt gevoed met 12 Volt op de Raw pin en de servo's met een externe 5 Volt voeding.
Dat werkt nu probleemloos.

Het kaartje is nu onder de baan gemonteerd:



Ik heb nog geen pogingen gedaan om naar het jitter probleem te kijken. Weet ook niet of dat nog gaat gebeuren. Alles werkt immers prima zo.
Eerst nu twee weken op vakantie!

@Timo
Kun je de APM ook  voeden door 5Volt op de Vcc pin te zetten? Of mag die alleen als output gebruikt worden?

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: TT-baan, met Arduino aansturing
« Reactie #39 Gepost op: 15 May 2015, 18:26:46 »
De AMP mag je voeden op de Vcc pin mits de RAW niet aangesloten is. Anders gaat de regulator proberen tegen je voeding in te regelen :p Maar als je de Arduino's onder de baan wilt plaatsen raad ik je af de Arduino's met 5V te voeden, zeker als dit uit dezelfde voeding komt als waarmee je de servo's voedt. Een micro controller wil graag een stabiele en schone voeding hebben.

Geen idee waarom niet maar bij het inschakelen van de spanning sprongen de servo's alle kanten op. Helemaal in de stress.
Tja, dus is nu eenmaal een kwaal van goedkope servo's... (net als het jitteren) Als je er nu geen last van hebt dan schakel je waarschijnlijk eerst de 12V in (waardoor de Arduino start) en dan pas de 5V. Hoe sneller ze een stuursignaal krijgen bij het opstarten hoe minder stress. Als je de APM voorziet van de (veel betere) Uno bootloader (Optiboot) heb je er ook al minder last van omdat deze veeeeeel sneller start.

Ook rare effecten zoals dat bij omzetten van wissel 2, ook wissel 1 helemaal doordraait.
Dat zal dan toch echt in de code zitten. De print is niets meer dan een doorgeefluik  ;) En de kans dat je pinnen aan elkaar soldeert is klein met deze print.


Timo
Verzonden vanaf mijn desktop met Firefox

RudyB

  • Offline Offline
  • Berichten: 629
  • EMV
    • RudysModelRailway
Jitter
« Reactie #40 Gepost op: 15 May 2015, 19:48:22 »
Ik kan bevestigen dat ik tot nog toe (gelukkig) geen last heb van jitterende servo's. Er zijn 23 stuks aangesloten op 3 Arduino Uno's.

Wel had ik een probleem met twee verschillende uitvoeringen van de servo's die elkaar storen als ze op 1 Arduino zijn aangesloten. Ook blijkt dat de 'afwijkende' uitvoering last heeft van een redelijk grote verdraaiing bij uitschakelen (en dus ook weer bij aanschakelen). Gelukkig kan de (paperclip) veerdraad het opvangen, maar blij ben ik er niet mee. Denk dat ik toch 10 nieuwe servo's ga bestellen.

Spock en ik zouden nog wat testjes doen om te zien of we kunnen ontdekken waarom zijn servo's wel jitteren en de mijne niet (2 uitvoeringen, zelfde merk en type). Daar zijn we echter nog niet aan toe gekomen. Misschien komende week.

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: TT-baan, met Arduino aansturing
« Reactie #41 Gepost op: 15 May 2015, 19:58:30 »
Zelfde merk kan je met een korreltje zout nemen. Die Tower Pro servo's worden volgens mij door elke random Chinees gemaakt  ;D

Maar verdraaiing bij het uitschakelen? Daar heb ik geen last van. Alleen bij het aan gaan verschieten ze een graad of 10.


Timo
Verzonden vanaf mijn desktop met Firefox

NTeering

  • Offline Offline
  • Berichten: 1038
    • ARduino Controlled MOdel RAilway
Re: TT-baan, met Arduino aansturing
« Reactie #42 Gepost op: 16 May 2015, 10:47:49 »
Beide gestabiliseerde voedingen worden tegelijk ingeschakeld en ook het programma is exact hetzelfde als op de Uno.
Daar zit dus geen verschil in.

@Timo
Heb je zelf ervaring met de Optiboot? Op Internet vind ik 'Optiboot is now installed by default on the Arduino Uno'
Hoe kun je dat controleren?

Nico

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: TT-baan, met Arduino aansturing
« Reactie #43 Gepost op: 16 May 2015, 14:49:14 »
Hoi Nico,

Wat ik alleen nog kan zeggen over de opstart stres is dat mijn servo's dat ook doen als ik ze gewoon aan de 5V hang, zonder signal. Of dit nu via de adServo print is of gelijk 5V uit me labvoeding maakt dan niet uit. Als eerst het signaal gegeven wordt (voor een vaste positie) en dan pas power is de uitslag wel minder (maar niet weg).

Optiboot staat inderdaad nu standaard op elke Uno. Maar stom genoeg gebruiken APM's nog gewoon de oude bootloader. Grootste verschillen zijn:
- Bij power on wordt bootloader overgeslagen (ipv 3 of 4 seconde wachten => start dus sneller)
- Upload snelheid is het dubbele (57600 baud tegen 115200 baud)
- Je hebt 1,5k meer ruimte voor je programmacode

Zelf heb ik één APM voorzien van Optiboot (omdat ik eigenlijk alles met die ene Arduino doe :p) en dat is echt fijn. Ze zouden van mij alle APM's gewoon mogen voorzien van Optiboot.


Timo
Verzonden vanaf mijn desktop met Firefox

RudyB

  • Offline Offline
  • Berichten: 629
  • EMV
    • RudysModelRailway
Servo power on/off verdraaiing
« Reactie #44 Gepost op: 16 May 2015, 16:52:48 »
Klopt, bij servo power on/off zonder stuursignaal kan de verdraaiing groter zijn. Met stuursignaal, en dan idealiter in de positie waarin de servo stond vlak voor uitschakelen, gaat het 't best. Behalve dan bij die afwijkende uitvoering die ik heb uit een random Chinese fabriek.

Misschien kunnen we dinsdag op zoek naar het jitter vraagstuk.