Nieuws:

Nu in MSM 251 TEST: PIKO NS serie 1000 in H0 * PB Models ICRmh

Hoofdmenu

Servo aansturingen

Gestart door Geert, 23 juli 2019, 12:50:02 PM

Geert

Servo aansturingen.

Ik werk al een 10 tal jaar aan servo aansturingen. Toch weet ik er nog niet alles over, en kan het nog steeds beter. Vandaar mijn ervaringen tot hiertoe ermee, en hopelijk komen er wat tips bij...

Servo aansturing  kan zowel met analoge elektronica uitgevoerd worden, maar ook digitaal met µC-technologie.  Ik ga me nu enkel beperken tot enkele wetenswaardigheden hoe je best servo's kan aansturen.

Deze link geeft iets meer uitleg over analoge servo aansturingen.

Servo's kan je niet zomaar verzetten,  je hebt daar wat elektronica voor nodig. Een standaard servo heeft 3 aansluitingen. Twee voor de voeding, meestal Massa en 5V, en één aansluiting waar 5V servopulsen naar toe gestuurd worden.
Deze servopulsen (referentiepuls, stuurpuls, servosignaal) worden frequent herhaald. Indien deze pulsen wegvallen, dan blijft de servo in de laatste positie staan.  Als er op een servoarm geen al  te grote blijvende kracht staat, zoals bij wisseltong aansturing, dan is dit geen probleem. Ook zal bij het wegvallen van de pulsen de servo niet meer trillen (jitter), wat de levensduur van de servo verlengd.

De frequentie waarmee deze pulsen worden herhaalt  bij het omzetten, is niet zo van belang. Deze kan variëren tussen 50Hz tot 80Hz.

De servopulsen moeten wel juist getimed zijn. Indien mogelijk met een nauwkeurigheid van  1µs of beter (interrupt gestuurd). Deze servopulsen variëren meestal tussen 1ms tot 2ms, maar er zijn ook servo's met een pulse range van 0,5ms tot 2,5ms. Het is deze puls die bepaald in welke stand de servo komt te staan.

Om een soepel overgang te verkrijgen tussen twee standen, gaan we niet direct servopulsen uitsturen van de gewenste stand, maar laten we de pulsen geleidelijk oplopen (of teruglopen) naar de nieuwe stand. Dat kan binnen enkele seconden, maar kan evengoed langzaam over enkele minuten.

Een ergerlijk probleem bij servo's is het soms hevig reageren van de servo als deze onder spanning komt. Dit is moeilijk te voorkomen zeker bij goedkope servo's die wij in onze modelspoor hobby veel gebruiken. Verplaats je met de servo een wisseltong, dan kan dit tot ontsporing leiden als er een locomotief over deze wissel beweegd. Willen we dit laatste voorkomen, dan is het raadzaam de servo terug in de juiste stand te plaatsen nadat er spanning op geplaatst is. Dit kan bijna enkel met µC aansturing.

Belangrijk aandachtspunt bij gebruik servo's!  De stroom die een servo opneemt  kan hoog oplopen, en is afhankelijk van de gebruikte servo en de grootte van de stappen die de servomotor moet doorlopen. Op onderstaande foto's kan je de stroom afname bekijken van een servo. Eerste puls, kanaal A, is de servopuls van 2ms naar de servo. De tweede puls, kanaal B, is de stroom opgenomen door de servo. De servo zal pas stroom opnemen na de servopuls. (ik weet niet of dit bij alle merken servo's zo is) De servo stroom is gemeten door de spanning te meten over een weerstand van 1 Ohm die in serie staat met de voeding servo.


servo referentiepuls en stroomverbruik 1
by Geert Giebens, on Flickr


servo referentiepuls en stroomverbruik 2
by Geert Giebens, on Flickr


Bij de door mij gebruikte servo's kan deze stroom oplopen tot 700mA over een tijdspanne tussen 0,5ms tot 5,0ms. Als er meerdere servo's gelijktijdig verzet moeten worden door dezelfde elektronica, dan kan de stroom veel te hoog oplopen voor bijvoorbeeld een 7805 5V spanningsstabilisator. (deze levert max. 1A) Bij overbelasting 7805 zal de 5V uitgangsspanning sterk dalen. De servo's blijven dan gewoon staan in hun huidige positie.

Bij gebruik van een µC, zal de µC-software de servopulsen van verschillende servo's verspreid doorsturen. In de volgende foto zie je twee uitgangen die servopulsen uitsturen (kanaal A en B). Je kan zien dat deze niet tegelijk uitgestuurd worden, maar met een pauze tussen beide van 2,5ms. Deze tussenpauze van 2,5ms is proefondervindelijk vastgesteld. Bij kortere tussenpauzen kon het soms wel eens mis lopen bij meer dan 3 servo's tegelijkertijd die moeten bewegen.


2,5ms vertraging tussen servopulsen verschillende uitgangen
by Geert Giebens, on Flickr

Om de invloed van de hoge servo stromen op de elektronica tot een minimum te beperken, is het raadzaam voor de 5V voeding servo een aparte voeding te voorzien t.o.v. de stuurelektronica. Zie onderstaande foto (rood omlijnd)


voeding µC servo
by Geert Giebens, on Flickr


Te lange kabels naar de servo's die dan nog door elkaar lopen samen met andere stuursignalen is ook af te raden. Een modelspoorbaan is één grote bron van elektromagnetische stralingen die elektronica kan beïnvloeden.

Geert
Schaal H0 - digitaal zelfbouw - Favoriete Lok: V200 DB

oebr

mooie analyse - dankjewel.

Ik probeer bij wissels en dcp sturingen in de aansturingssequentie eerst een stabiele puls voor een bepaalde stand uit te sturen,
dan pas via een relaiske de servo stroom te geven en daarna pas het veranderen van stand te laten gebeuren.

Dat betekent wel dat er ergens in een variabele steeds de laatste stand moet bijgehouden worden,
maar aangezien een optisch bordje meestal ook gewenst is kan je 2 vliegen in een klap...
On East Belgian Rails - sporen in de provincie Luik zo rond 1992

Gerolf

Ik schakel de stroom naar de servo met een FET vanuit de µC.
  Uiteraard een aparte voedingsbron voor de servo-stroom, massa wordt onderbroken.

Ik wacht 9 ms na de puls om de stroom in te schakelen.
  Proefondervindelijk op deze manier geen opstart-jitter ;)
Groeten uit "Marche-en-Bières"   ** Modelspoor is plezant **   TPIII-H0-DC-Zelfbouw

Frank_N

Citaat van: Gerolf op 26 juli 2019, 12:33:11 PM
Ik schakel de stroom naar de servo met een FET vanuit de µC.
  Uiteraard een aparte voedingsbron voor de servo-stroom, massa wordt onderbroken.

Ik wacht 9 ms na de puls om de stroom in te schakelen.
  Proefondervindelijk op deze manier geen opstart-jitter ;)

Is dat analoog (met een 555 / 556) ook mogelijk, Gerolf?
Groet van Frank

raf

ja als je al de servo's aan een aparte 555 hangt die iets later opstart
dus je schakelt de stroom in dan moet je zorgen dat die 555 een 9 a 10 Ms later schakelt dan al de rest

kan wel maar met een µP gemakkelijker te doen
kwestie van een poort wat later te activeren na een loopje

gr raf
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

Gerolf

Citaat van: Frank_N op 27 juli 2019, 15:03:52 PM
Citaat van: Gerolf op 26 juli 2019, 12:33:11 PM
Ik wacht 9 ms na de puls om de stroom in te schakelen.
  Proefondervindelijk op deze manier geen opstart-jitter ;)

Is dat analoog (met een 555 / 556) ook mogelijk, Gerolf?

Misschien wel, maar ik denk dat er dan extra "logica" nodig is. Met een µC is dat niet zo (erg) lastig ...
Groeten uit "Marche-en-Bières"   ** Modelspoor is plezant **   TPIII-H0-DC-Zelfbouw

Frank_N

#6
Oke, hartelijk dank.
Deze kwestie komt oa van dit draadje:
https://forum.modelspoormagazine.be/index.php/topic,29373.msg427528.html#msg427528

Even verder lezen aub.

En deze:

https://forum.modelspoormagazine.be/index.php/topic,15650.msg183818.html   (reactie#3)

Het is blijkbaar dus ook niet mogelijk zonder problemen analoog servo's te sturen.
Graag zou ik een methode weten waardoor het (aansturen van servo's) wel probleemloos werkt..
Groet van Frank

raf

#7
Citaat van: Frank_N op 28 juli 2019, 21:04:43 PM

Graag zou ik een methode weten waardoor het (aansturen van servo's) wel probleemloos werkt..

ik denk dat we wel allemaal een methode willen om alles aan te sturen zonder problemen niet ??

analoog het kan want in mijn oudere (duik)boten waren er veel analoog aan gestuurde servo's
die dus niet rechtstreeks door de ontvanger werden aangestuurd.
hoe het probleem oplossen is hier reeds eerder beschreven
eerst de puls op wekken daarna de spanning op de servo zetten
gaat dit met een 555 ja want dat was het werkpaard voor ik de µp begon te gebruiken
kwestie van timing zeg maar
alee ik heb de moeite voor u gedaan

https://opencircuit.nl/Product/13612/12V-relais-met-instelbare-vertraging-0S-10S
3.50 euro kun je niet zelf voor beginnen kloten

gr raf 
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

Frank_N

#8
Citaat van: raf op 29 juli 2019, 06:35:32 AM
Citaat van: Frank_N op 28 juli 2019, 21:04:43 PM

Graag zou ik een methode weten waardoor het (aansturen van servo's) wel probleemloos werkt..

ik denk dat we wel allemaal een methode willen om alles aan te sturen zonder problemen niet ??

analoog het kan want in mijn oudere (duik)boten waren er veel analoog aan gestuurde servo's
die dus niet rechtstreeks door de ontvanger werden aangestuurd.
hoe het probleem oplossen is hier reeds eerder beschreven
eerst de puls op wekken daarna de spanning op de servo zetten
gaat dit met een 555 ja want dat was het werkpaard voor ik de µp begon te gebruiken
kwestie van timing zeg maar
alee ik heb de moeite voor u gedaan

https://opencircuit.nl/Product/13612/12V-relais-met-instelbare-vertraging-0S-10S
3.50 euro kun je niet zelf voor beginnen kloten

gr raf

Dat "beginnen kloten"zal ik ook niet doen, raf. Die 555 met of zonder relais is juist het probleem, op een modelbaan.
Van duikboten en rc toestanden heb ik trouwens geen verstand. :-[
Groet van Frank

raf

duikboot ,vliegtuig ,auto of een boot een servo is een servo
krijgt hij het juiste eten dan werkt hij
krijgt hij verkeerd eten doet hij niks

de link is een vertraagd opkomend relais
bij het aan schakelen van de baan(servo sturing) schakelen eerst uw 555 aan en nadien trekt dit relais aan en krijgen je servo's spanning
dan hebben de andere 555 reeds genoeg tijd om de juiste pulsen te maken en is de kans op servo jitter veel kleiner

als dit reeds te moeilijk is dan zou ik een andere hobby overwegen

gr raf
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

Klaas Zondervan

Citaat van: raf op 09 augustus 2019, 06:46:51 AM
als dit reeds te moeilijk is dan zou ik een andere hobby overwegen
Dat gaat wel een beetje ver. In de modelspoorhobby kun je heel goed zonder servo's. De meeste toepassingen waar servo's worden ingezet vragen een beweging tussen twee vaste eindstanden, dat kan ook met een standaard motoraandrijving.

raf

ik denk het niet want als een servo aan sluiten reeds een probleem is wat gaat er dan gebeuren met wissels signalen detectie module enz.

de voorgestelde module is klaar af juist de delay tijd in stellen

en ja je kunt zeker zonder servo en zelfs zonder motor aandrijving ik heb reeds heel mooie banen gezien
zo met een knopje en een trek stang 
vooral op engelse banen vind je deze zeer veel
bezet melding heb je die nodig??? nee zelfs geen decoder want je kan perfect analoog rijden

dus nee ik vind het niet ver gaan maar ja das mijn mening zoals het ook die van u is

gr raf

If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

Geert

#12
Een item wat ook veel voorkomt bij Servo aansturingen: max. kabellengte?

De afstand van de kabel tussen servo en elektronica? In China kan je kabel verlengstukken aankopen in diverse lengtes. Kan je zelf niet aan beginnen voor die prijs. Eens een test uitgevoerd met 10 meter (10 stukken van een meter) De servo had er geen last van zie filmpje

Geert
Schaal H0 - digitaal zelfbouw - Favoriete Lok: V200 DB

Klaas Zondervan

In die test ligt de kabel op een hoopje. Heb je ook getest wat er gebeurt als je echt 10 meter overbrugt, dus die kabel helemaal rechtuit? En wat gebeurt er in een omgeving waar allerlei stoorsignalen optreden, bijvoorbeeld op een digitale spoorbaan.

raf

op de htc baan overbrug ik een 4.5 meter van de wissel module naar de slagbomen
en geen enkel probleem
de kabel ligt gewoon tussen de andere draden door waar baan spanning en 12 volt overheen gaan

gr raf
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.