BeneluxSpoor.net forum

Vraag en antwoord => Digitaal => Topic gestart door: JeroenM op 01 April 2016, 15:21:50

Titel: Servomotor blijft lopen
Bericht door: JeroenM op 01 April 2016, 15:21:50
Heren (en dames natuurlijk...)
Als behoorlijke newbie op het gebied van baanbesturing loop ik tegen het volgende aan:
Op een chinese Arduino-kloon heb ik Mardec gezet. Tevens 5 el cheapo servo's uit China laten komen. Zoals te verwachten is er één totaalweigeraar, dus die ligt al in de elektro-kliko. Maar bij de anderen klopt er volgens mij ook iets niet.
Ik heb een testopstellinkje waarbij ik 1 servo aanstuur via Mardec. De 5V voor de servo betrek ik voor het gemak ook even uit de Arduino. Bij het verstellen van de hoek begint het armpje naar de goede hoek te draaien, maar inwendig blijft het motortje maar gaan, zelfs als de arm al in de goede hoek staat. En dat doen ze allemaal...
Ook als ik de spanning voor de servo uit een andere bron haal, heb ik dit fenomeen, en ook als ik gebruik maak van een echte Arduino Uno. Volgens mij moet het dan òf aan de servo's liggen, òf aan Mardec.
Wie heeft er een briljante ingeving?
Titel: Re: Servomotor blijft lopen
Bericht door: spock op 01 April 2016, 15:56:50
Hallo Jeroen,

Probeer ipv mardec eerst eens de voorbeeld servo sketches en kijk of dan de motor stil blijft staan

Mvg spock




Verstuurd vanaf mijn SM-T800 met Tapatalk

Titel: Re: Servomotor blijft lopen
Bericht door: Karst Drenth op 01 April 2016, 15:58:10
Blijft ie 'brommen' of loopt de arm daadwerkelijk verder ?


In het 1e geval:

1) Voedingspanning niet stabiel,
2) Servo puls niet stabiel
3) *** servo...

in het 2e geval:

....   ??? ???


Grtzz,

Karst
Titel: Re: Servomotor blijft lopen
Bericht door: wimk op 01 April 2016, 16:04:15
Bij voeding van Servo en Arduino uit dezelfde voeding had ik het probleem, dat mijn voeding niet stabiel genoeg was, spanning omlaag ging, en de Arduino spontaan ging resetten. Nodig is dus voeding uit twee bronnen (heb je ook geprobeerd).

Heb je bij die twee bronnen de nul van beide met elkaar verbonden? Is ook nodig, anders kan het digitale signaal voor de servo volledig de mist ingaan.

Groeten,
Wim K
Titel: Re: Servomotor blijft lopen
Bericht door: JeroenM op 01 April 2016, 19:00:27
Heren, dank voor de reacties.
Hier kan ik wat mee de komende dagen.

Wordt vervolgd....
Titel: Re: Servomotor blijft lopen
Bericht door: Timo op 04 April 2016, 08:38:14
Wat toelichting geven op gestelde vragen hier is altijd wel zo handig ;)

maar inwendig blijft het motortje maar gaan, zelfs als de arm al in de goede hoek staat.
Draait het motortje echt en staat de arm stil? Of bedoel je dat de motor blijft brommen/kleine bewegingen blijft maken als de servo in de eindpositie is?

Laatste is redelijk normaal. Combinatie van slechte servo (waarschijnlijk een SG-90 als ik moet gokken?), kleine verschillen in de servo puls en het blijven sturen van een puls als de servo de eindpositie heeft bereikt (geen servo.detach() ).

Overigens is het nooit een goed idee om de 5V van de Arduino te gebruiken om een servo aan te sturen. De regulator op de Arduino is niet krachtig en zal het makkelijk te warm krijgen hiervan. Alleen als je de Arduino met 5V voedt (via de 5V pin of met USB) zou het kunnen. Ookal kan het bij USB (met van die mooie dunne USB kabels) ook weer problemen kunnen geven. Beste oplossing, DC-DC step down converter gebruiken voor de servo's


Timo

Titel: Re: Servomotor blijft lopen
Bericht door: JeroenM op 04 April 2016, 22:03:48
Vanwege het mooie weer meer buiten dan binnen geweest, nog geen vorderingen gemaakt dus...  ;)

Timo, bij nader inzien zal het zijn zoals je aangeeft: het motortje bromt en zal misschien heel kleine bewegingen maken, maar de arm staat stil. Het fenomeen doet zich voor bij voeding via de Arduino (via USB aan 5V), maar ook bij 5V van een externe voeding.

Ik heb overigens ook de in de Beneluxspoor Encyclopedie beschreven gemodificeerde servotester in elkaar gebakken, en daarmee doet het probleem zich niet voor.

Het betreft inderdaad SG-90 servo's. Iemand een idee voor een beter, maar wel betaalbaar alternatief? Anders bak ik nog een paar van die testers in elkaar en ga digitaal rijden met analoog schakelen. De Mardec is geen must, maar ik vind het concept wel heel lollig.
Titel: Re: Servomotor blijft lopen
Bericht door: NTeering op 04 April 2016, 22:43:24
Hallo Jeroen

Je kunt het eens met de SG92R proberen. Deze heeft wat minder last van 'jitteren'.
De handleiding van de Mardec verteld je ook om een aparte voeding voor de servo's te gebruiken en de gnd ervan te verbinden met die van de Arduino.

Ook ben ik dit advies tegengekomen:
Citaat
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.

Voor wat betreft de Mardec:
In de configuratiestand wordt een servo attached op het moment dat je de pin selecteert en weer detached als de pinsettings worden opgeslagen.
Bij het testen wordt iedere servo even attached en weer detached.
In de bedrijfsstand wordt een servo attached als deze moet gaan draaien en weer detached als hij het eindpunt bereikt heeft.
Titel: Re: Servomotor blijft lopen
Bericht door: JeroenM op 08 April 2016, 20:45:02
Dank voor de tips.
Ik heb nog wel een bakje weerstanden liggen. Zit vast ook wel 4k7 tussen. Heb vast het weekend wel tijd om weer wat te knutselen.
Titel: Re: Servomotor blijft lopen
Bericht door: Henk Boshuyzen op 12 April 2016, 20:06:20
Ben benieuwd naar je ervaring Jeroen, ik heb er ook last van met een servo SG92R.
Met een servo HXT900 geen enkel probleem.
Titel: Re: Servomotor blijft lopen
Bericht door: Simplex op 12 April 2016, 20:58:02
Vroeger toen ik nog schepen bouwde, hadden sommige series van Futaba
dat ook. Dan trok ik zo'n ding open, en soldeerde er een potmetertje in.
Om zo zelf de nulstand in te stellen, en het jitteren over was. Daarna werd
de pormeter vastgezet. De roeren van het bewuste model stonden toen netjes stil.
Titel: Re: Servomotor blijft lopen
Bericht door: Henk Boshuyzen op 13 April 2016, 21:29:19
Vandaag met een MARDEC zitten testen, 1 sg92r servo en 2 anderen. De SG92R blijft soms wat jitteren. Met de USB kabel uit de arduino valt het mee, een weerstand tussen klemmen helpt hier niet. Terwijl het nog op de tafel ligt soldeer ik een nieuwe langere draad met pennen om te beproeven. Elke keer dat ik de bout tegen de draad zet begint de SG92R te pruttelen. Vreemd en niet te verklaren!
Zelfde nog eens getest met een tweede wissel decoder Arduino voor in de andere hoek van de tafel en dan jitterd de SG92R niet.
Heel vreemd! Eerste decoder weer gebruikt, soldeerbout tegen de draad ( zonder enige verbinding met de schakeling) en ja hoor, weer jitteren.
Titel: Re: Servomotor blijft lopen
Bericht door: JeroenM op 16 April 2016, 16:44:18
Een paar experimenten verder...

Arduino en servo op aparte voeding. De 0 aan elkaar verbonden. 4k7 tussen + en signaal van servo.

Resultaat: jitteren is vrijwel helemaal weg, alleen direct na het instellen van de gevraagde hoek sputtert het nog heel kort, daarna rust...

Dank voor de tips! Tijd om wissels te gaan digitaliseren!
Titel: Re: Servomotor blijft lopen
Bericht door: Timo op 17 April 2016, 15:49:30
@Henk, klinkt als een probleem met de voeding. Ground loop misschien. Hoe voed je zowel de Arduino als de Servo?


Timo
Titel: Re: Servomotor blijft lopen
Bericht door: Henk Boshuyzen op 17 April 2016, 18:49:23
Timo,

De voeding van de arduino komt uit 12 Volt en de servo's worden uit een 5 Volt voeding gevoed. Als voedingsbron is een oude PC voeding in gebruik met op dit moment voor elke voedingsspanning gezekerd met 1Ampere en de 0 heeft een 3 Ampere zekering.
Van beide spanningen is de 0 dus verbonden, maar tussen de Ground van de arduino en de nul van de servo's is als zekerheid nog eenaparte verbinding gemaakt.
Het is wel zo dat de SG92R exact op de goede hoek ingesteld moet worden snders. Lijkt het niet goed te gaan. Het is overigens maar 1 exemplaar die de verschijnselen heeft, dus misschien moet die wel naar de Kliko.
Titel: Re: Servomotor blijft lopen
Bericht door: Timo op 18 April 2016, 12:31:58
Hoi Henk,

Is het een wat oudere PC voeding? Vooral de oudere voedingen willen een aardige belasting hebben voor ze echt stabiel zijn. Ik gebruik ook nog wel eens een oude PC voeding en daar heb ik de 5V en 12V belast (1A op de 5V en 600mA op de 12V, met wat ik voor handen had).

Ook is bij een ATX voeding de GND niet zwevend, deze ligt werkelijk aan de randaarde. Dat zou dus kunnen verklaren waarom het tijdens het solderen reageert, je maakt een ground loop.

Overigens zou ik zelf de 0 niet zekeren maar gewoon een mooie harde verbinding laten. En juist niet twee losse GND draden  trekken maar de servo en de Arduino beide uit een (dikke) draad voeden. Ook hier om geen GND loop te hebben.


Timo
Titel: Re: Servomotor blijft lopen
Bericht door: Goosie op 18 April 2016, 13:32:10
Ik vond dit op internet:
https://youtu.be/sEp4VT6NL6o (https://youtu.be/sEp4VT6NL6o)
Ferrietkern tegen jitteren van servo's.
Ik heb eens zitten kijken op Alieexpress maar daar staan verschillende soorten op.
Weet iemand welke je daarvoor zou kunnen gebruiken, of heeft iemand hier ervaring mee?
Titel: Re: Servomotor blijft lopen
Bericht door: Menno op 18 April 2016, 14:11:11
Dat kan inderdaad helpen. Een ferrietkraal werkt als een soort kortgesloten transformator voor hoogfrequente stoorpulsen. Hoogfrequente stoorpulsen die al snel herrie kunnen schoppen in een servo.

Welke je bij Alieexpress moet hebben: geen idee. Zelf zou ik kijken of je ferriet-klemmen koopt. Die klem je om de kabel heen. Nadeel is dat je ze voor kleinere diameters moeilijk kunt vinden.

Dergelijke kernen vind je overigens in menig computervoeding, laptopvoeding of eender welke geschakelde voeding.