Doel:€250.00
Donaties:€128.00

Per saldo:€-122.00

Steun ons nu!

Laatst bijgewerkt
op 16-04-2024

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

Aachenau West door MichielB
Vandaag om 18:48:39
Van Biervliet/B Models 2019, nieuws van de fabrikant door Corné81
Vandaag om 18:41:28
Jeugdsentiment (show je oude treintjes) door thonis
Vandaag om 18:36:00
US diorama in H0 door defender
Vandaag om 18:15:00
Openen Lima Hondekop door Mispoes
Vandaag om 17:59:32
Ronald en Wanda's "Southern Comfort" swamp layout! door Ben
Vandaag om 17:53:38
Toon hier je nieuwe (model-) spooraanwinst(en)... door Daan!
Vandaag om 16:44:54
Kleine Baan in H0 (≤ 0.5m²) door Jack Black (NS1220)
Vandaag om 16:43:58
Haandrecht materieel door AB 7216
Vandaag om 16:41:36
Einde Koemo ballast ??? door Frank 123
Vandaag om 16:37:43
La Fabrique (1:87, 0,16m2) door tothebeach
Vandaag om 16:35:01
LS Models 2024 door Daan!
Vandaag om 16:34:44
IC-trein naar Berlijn in model, welke rijtuigen? door LMX
Vandaag om 16:34:44
Piko 2200 (52686)+ uhlenbrock 76420(?) door Ben
Vandaag om 16:14:12
Een stukje Odsherreds Jernbane (OHJ) door sdz1976
Vandaag om 16:08:42
Mallnitzer Tauernbahnstrecke ÖBB N Spoor door Schachbrett
Vandaag om 15:56:35
Onlangs gespot - gefotografeerd, de foto's door dh3201
Vandaag om 15:30:48
Decals voor een Roco 64892 DSG Speisewagen door Falkenberg
Vandaag om 14:43:38
ACME 2024 met NS ICNG! door Daan!
Vandaag om 14:09:36
"Nederlandse" modellen door ArjanB
Vandaag om 14:07:20
Stationsplein Baden Baden door Dion
Vandaag om 10:52:24
Oude metalen trafo's gebruiken....... door Klaas Zondervan
Vandaag om 10:02:44
25 jaar geleden door Willem1951
Vandaag om 09:43:30
Baan in Los Angeles door Jelmer
Vandaag om 08:56:38
Pfarrerwinkel bahn door Jelmer
Vandaag om 08:55:03
Bouw van materieel 40 treinstellen door Jelmer
Vandaag om 08:48:06
NS 8400 van Werps door Huup
18 april 2024, 23:17:50
EifelBurgenBahn door Reinout van Rees
18 april 2024, 23:17:45
Bisonkit verdunner door Deetrein
18 april 2024, 23:16:25
Traintastic - modelbaan besturingssoftware (gratis en open source) door reinderlf
18 april 2024, 23:02:30
  

Auteur Topic: Snelheidsregelaar met Arduino Uno en TA8050.  (gelezen 16467 keer)

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Snelheidsregelaar met Arduino Uno en TA8050.
« Gepost op: 18 november 2014, 23:07:29 »
Na wat experimenten met verschillende analoge regelaars heb ik een regelaar gebouwd met PBM (Puls Breedte Modulatie) op basis van een microcontroller – Arduino Uno – en een IC motor driver – Toshiba TA8050.

Eenknopsbediening door middel van een drie standen schakelaar.
Links:   locomotief rijdt naar links en versneld tot maximum snelheid.
Midden:   locomotief vertraagd tot stilstand.
Rechts:   als links maar dan naar rechts.

Bij een PBM bereik van 0%...100% moeten voor elke locomotief de minimum en maximum waarde kunnen worden ingesteld want niet elke locomotief start bij 1% en 100% is veel te snel om te kunnen rangeren (15…20 km/h is hard zat).

Met drukknoppen (+/-) wordt de startwaarde ingesteld, daarna de maximum snelheid.

Met een lichtsluis wordt de snelheid van de locomotief gemeten en aangepast aan de gewenste maximum snelheid. Drie keer heen en weer rijden is meestal voldoende.

De gewenste versnelling/vertraging kan ook worden ingesteld – belangrijk voor ‘t (ont) koppelen.

Hierna kan de stopwatch worden gestart en het rangeren beginnen.

Zoals gebruikelijk gaat het geheel gepaard met de nodige problemen cq. onduidelijkheden (’t zal eens niet…  :)).

De PBM frequentie: sommige locs lopen beter met ’n lage frequentie (< 50 Hz), anderen met ’n hoge frequentie (> 20 kHz). Sommige locs brommen, anderen fluiten.

Het regelbereik is (mede) afhankelijk van de frequentie – hoe lager hoe groter?

Ook de gebruikte spanning is van invloed – hoe hoger hoe beter?


Heeft iemand suggesties?


Mvg,

Max.


"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Klaas Zondervan

  • Offline Offline
  • Berichten: 25273
    • Pagina van klaas
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #1 Gepost op: 18 november 2014, 23:34:49 »
Ik heb wel een suggestie. Je kunt imiteren wat de Weistra regelaar doet. Dat is een regelaar die al in de jaren '80 is ontwikkeld door Martin Weistra. Hij had geconstateerd dat locs beter aanlopen bij een lage pulsfrequentie, en dat je die frequentie moet verhogen als de snelheid toeneemt. De frequentie van de regelaar variëert van ca. 30 Hz tot ca. 100 Hz.
Ik gebruik zelf de Weistra regelaar in combinatie met een hoogfrequente spanning voor continuverlichting. Beschrijving is op mijn website te vinden

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #2 Gepost op: 18 november 2014, 23:45:51 »
@Klaas,

heb je de Weistra regeling ook geprobeerd met moderne locs? Ik heb 'n Bachmann GE-45 en die wil niet zo best  op lage frequenties. Pas vanaf 1kHz begint 't er beetje op te lijken. Maar dan fluit 'ie...  ;D

mvg,

Max.
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Klaas Zondervan

  • Offline Offline
  • Berichten: 25273
    • Pagina van klaas
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #3 Gepost op: 18 november 2014, 23:54:56 »
Dan moet je even specificeren wat je bedoelt met moderne locs.

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #4 Gepost op: 19 november 2014, 00:03:34 »
@Klaas

Met moderne locs bedoel ik locs die vanaf de fabriek zijn voorzien van 'n decoder.

Ik heb een aantal Bachmann's waarvan ik de decoder heb verwijderd - beste frequentie >20kHz.
Antieke Athearn's - beste frequentie <100Hz.

Een oude Rivarossi wil helemaal niet...  8)

Alles bij benadering - helaas geen wet van Meden en Perzen...  :)

mvg,

Max.
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Klaas Zondervan

  • Offline Offline
  • Berichten: 25273
    • Pagina van klaas
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #5 Gepost op: 19 november 2014, 00:11:21 »
Ik zie niet precies wat het verschil is. Een loc waar je de decoder uit haalt is analoog geworden.
20 kHz komt mij erg hoog voor, die frequentie gebruik ik voor mijn HF verlichting.
Ik heb een aantal Roco draaistellocs, met middenmotor en cardanaandrijving. Verder ook nog een paar Piko en een Mehano, zelfde aandrijfconcept. En dan nog twee DE-2 treinstellen van Artitec, daar zit een Mashima motor in met cardanaandrijving naar 1 draaistel.
Rijden allemaal prima op de Weistra regelaar.
Alleen Lima's met de oude "pannekoek" motor rijden bij mij bokkig. Daartegenover staat dat ik van anderen hoor dat hun Lima's het juist heel goed doen op deze regelaar.

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #6 Gepost op: 19 november 2014, 00:25:55 »
Kan 't zijn dat 't afhankelijk is van de gebruikte motor?

Ik kan me niet aan de indruk onttrekken dat "moderne" motoren minder zijn omdat de decoder dat wel recht breidt.

Een Bachmann Spectrum GE-44 - met twee motoren - werkt 't beste met 'n lage frequentie terwijl een Bachmann GE-44 - met een motor - beter loopt op 'n hoge frequentie.

20 kHz is misschien wat erg hoog maar minder vond mijn hond niet zo leuk...
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #7 Gepost op: 19 november 2014, 11:26:45 »
Hoi Max,

Heb je foto, schema en code voor ons? Kunnen we pas echt meekijken. Snap nog niet helemaal hoe je wilt rijden met een schakelaar.

Zelf heb ik ondervonden dat een lok beter wil rijden als op lage snelheden de hoge PWM frequntie ondersteund wordt door een lage frequentie. Dit om de loc een "zetje" te geven op lage snelheden.

En hoe stuur je de H-brug aan? DI1 laag en dan pulsen op DI2 (of andersom)? Of pulsen op DI1 en DI2 hoog? En ja, beide versies zorgen voor hetzelfde patroon aan de uitgang (mits resistief belast) met als verschil dat bij de eerste de op de rail uit staat in de lage delen van de PWM (high impedance) en bij de tweede je de motor kortsluit en dus actief remt (beide staven zijn L). De eerste versie werkt een stuk beter omdat je dan de motor in vrijloop laat en dus nut hebt van vliegwielen enzo.

Het regelbereik is (mede) afhankelijk van de frequentie – hoe lager hoe groter?
Hoezo? Voor de hoge frequenties heeft de Arduino mooie hardwarematige PWM aan boord met een resolutie van 8-bit (0-255). Lage frequenties zal je zelf in software moeten doen en toegegeven, dan kan je meer resolutie toevoegen als je dat leuk vindt. Maar met 256 stappen ben je denk ik een aardig eind.


Timo
Verzonden vanaf mijn desktop met Firefox

Klaas Zondervan

  • Offline Offline
  • Berichten: 25273
    • Pagina van klaas
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #8 Gepost op: 19 november 2014, 11:38:50 »
Max, zoals gezegd doen bij mij bijna alle motoren het goed op de Weistra regelaar. Zelfs een loc waar ik een Faulhager motor in heb gebouwd doet het uitstekend.
Dus de problemen die je noemt ken ik niet.

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #9 Gepost op: 19 november 2014, 12:36:13 »
@Timo





Ik drukte op verzenden voordat mijn verhaal klaar was - uitleg volgt...
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #10 Gepost op: 19 november 2014, 13:14:50 »
@Timo

op 't eerste plaatje m'n Timesaver - zo goed mogelijk met de afmetingen zoals door John Allen beschreven in de Model Railroader van November 1972. Hierop duidelijk zichtbaar de 3-standen schakelaar - links en rechts is rijden, midden is stop. Zoals 't hoort.  8)

Daaronder het schema van m'n Arduino met een TA8050 H-brug. S1 is de rij-schakelaar. Links en rechts is rijden met versnelling tot de gewenste snelheid, midden is vertragen tot stilstand.

De PBM frequentie wordt in de software ingesteld op een waarde tussen 30 Hz en 25 kHz - afhankelijk van de loc.

De code heb ik nog niet bijgevoegd want dat is een redelijke stapel A4tjes.  :)

Mijn probleem zit niet zozeer in de regelaar als wel in de combinatie regelaar - locs. Ik krijg met verschillende locs dusdanig verschillende instellingen dat ik die moeilijk kan verenigen.

Als ik een lage frequentie (<100 Hz) gebruik zie ik op m'n scoop een PBM bereik van 5..100%; bij een hoge frequentie (>20 kHz) is dat bereik 40...100%.

Hoe de H-brug wordt aangestuurd moet ik controleren - volgens de datasheet zijn inderdaad beide opties mogelijk maar welke ik gebruik moet ik nakijken.


@Klaas

ik heb momenteel 9 locs waarvan de helft redelijk loopt en de rest 'n stuk minder. En het zou wel prettig zijn als ik de regelaar onder de knie heb voordat ik andere oude locs ga kopen. Een of meerdere Climaxes en/of Shays lijken me wel aardig.  (y)

mvg,

Max.
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Klaas Zondervan

  • Offline Offline
  • Berichten: 25273
    • Pagina van klaas
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #11 Gepost op: 19 november 2014, 13:33:19 »
Max, heb je al eens een scoop aan de motoruitgang gehangen om te zien of er werkelijk uit komt wat je bedoelde?
Die lamp in serie met de motor is waarschijnlijk een stroombegrenzer. Wat gebeurt er als je die er tussenuit haalt? De TA8050 is zowel op stroom als op temperatuur beveiligd, dus die lamp ertussen lijkt me een beetje overdaad.

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #12 Gepost op: 19 november 2014, 13:54:25 »
@Klaas

Citaat
Max, heb je al eens een scoop aan de motoruitgang gehangen om te zien of er werkelijk uit komt wat je bedoelde?

Ja - uiteraard...;D en dat ziet er redelijk uit. Zonder scoop is controle bijna onmogelijk. Maar doordat mijn baantje zo kort is lukt dat maar ten dele. Eerst maar eens een railovaaltje halen zodat ik langer kan kijken. En het kan zijn dat Timo gelijk heeft en ik de H-brug op de verkeerde manier aanstuur.

Citaat
Die lamp in serie met de motor is waarschijnlijk een stroombegrenzer. Wat gebeurt er als je die er tussenuit haalt? De TA8050 is zowel op stroom als op temperatuur beveiligd, dus die lamp ertussen lijkt me een beetje overdaad.

De lamp beveiligd de wissels tegen kortsluiting (open rijden) en brand niet tijdens normaal rijden, maar als de wissel verkeerd ligt is 't een mooie controle. Weghalen verandert niets. Bijkomend voordeel: zonder lamp werkt de baan niet...

mvg,

Max.

"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #13 Gepost op: 19 november 2014, 14:46:08 »
Om te testen wat er uit je regelaar komt heb je op zich geen ovaaltje nodig. Geen loc op de rails maar een weerstandje en je kunt nar harte lust meten met je scope.

Je zou, zolang je gebruik maakt van de hardware pwm, gewoon moeten kunnen instellen tussen 0% en 100%. Maar aangezien je ook erg laag gaat (iets dat niet kan met de hardware PWM) gok ik dat je alles met software PWM probeert. Ga je dan in de kilohertzen dan zal dat inderdaad niet goed werken. Zal je echt de hardware PWM moeten gebruiken.

Zelf had ik toen (uit me hoofd) iets van 22kHz als frequentie en daarop een 80Hz PWM met een dutycycle van (ook uit me hoofd) iets tussen de 5% en 10%. Dit om de kleef bij stilstand te overkomen.

En hoe rij je dan nu? Gewoon schakelaar om en gaan? Iets als een draaiknop lijkt me handiger...

En waar zijn die LDR's voor?  ???

Ook hoop ik niet dat je de Atmega met 9v voedt, deze heeft een max van 5,5V. Als je de hele Arduino daarmee voedt is het wel okay maar waarschijnlijk niet nodig aangezien de Arduino tot 20V input mag hebben.\

Timo
Verzonden vanaf mijn desktop met Firefox

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #14 Gepost op: 19 november 2014, 15:29:54 »
Citaat
Om te testen wat er uit je regelaar komt heb je op zich geen ovaaltje nodig. Geen loc op de rails maar een weerstandje en je kunt nar harte lust meten met je scope.
Dat klopt maar dan ziet 't er ook perfect uit - 't zijn de locs die 't eindresultaat verzieken... ;)

Citaat
Je zou, zolang je gebruik maakt van de hardware pwm, gewoon moeten kunnen instellen tussen 0% en 100%. Maar aangezien je ook erg laag gaat (iets dat niet kan met de hardware PWM) gok ik dat je alles met software PWM probeert. Ga je dan in de kilohertzen dan zal dat inderdaad niet goed werken. Zal je echt de hardware PWM moeten gebruiken. Zelf had ik toen (uit me hoofd) iets van 22kHz als frequentie en daarop een 80Hz PWM met een dutycycle van (ook uit me hoofd) iets tussen de 5% en 10%. Dit om de kleef bij stilstand te overkomen.
Zolang ik de regelaar maar belast met een weerstandje of een lampje gaat alles goed - pas als ik er een motortje aan hang beginnen de problemen. Ook met slot car motoren loopt 't redelijk maar die motoren zijn allemaal 't zelfde. En nogmaals, sommige locs lopen perfect, maar anderen... ??? 

Citaat
En hoe rij je dan nu? Gewoon schakelaar om en gaan? Iets als een draaiknop lijkt me handiger...
Het origineel van 1966 had een schakelaar - vandaar. Met een schakelaar ligt de snelheid vast, belangrijk bij een wedstrijdje.

Citaat
En waar zijn die LDR's voor?  ???
Die vormen een lichtsluis zodat ik de maximale snelheid in km/h kan instellen.

Citaat
Ook hoop ik niet dat je de Atmega met 9v voedt, deze heeft een max van 5,5V. Als je de hele Arduino daarmee voedt is het wel okay maar waarschijnlijk niet nodig aangezien de Arduino tot 20V input mag hebben.\
Volgens de documentatie is 9 volt voor een Arduino Uno perfect.


mvg,

Max.
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)