Servomotoren koppelen aan Arduino

Probeer Ons Instrument Voor Het Oplossen Van Problemen





In deze post gaan we leren wat servomotor is, hoe hij werkt, hoe hij moet communiceren met een microcontroller en wat deze motor zo bijzonder maakt van andere motoren.

Als elektronicaliefhebber zouden we veel soorten motoren zijn tegengekomen, hier gaan we kijken naar een speciaal type motor, servomotor genaamd.



Wat is een servomotor?

Servomotor of gewoon servo is een speciaal type motor dat is ontworpen voor nauwkeurige controle over positie, versnelling en snelheid. In tegenstelling tot alle andere typen motoren, kan de servo alleen 180 graden bidirectioneel draaien. Het heeft mechanische versnellingen en een stop die de hoekrotatie van de servo beperken.

Typische servomotor:

De servomotoren worden gebruikt in robotica, CCTV-camera's, RC-auto's, boten, speelgoedvliegtuigen enz. Servo's worden gebruikt waar we geen continue roterende beweging nodig hebben, maar in een specifieke positie vergrendelen of een lading met gecontroleerde snelheid verplaatsen binnen de beweegbare hoeklimiet.



Servo is niet zomaar een motor zoals andere typen, maar het is een module die een normale DC / AC-motor combineert met een groep tandwielen, besturingselektronica en een feedbacksysteem. Laten we elk van de genoemde fasen in detail bekijken.

DC / AC-motor die op een servomodule wordt gebruikt, kan een borstelloze of geborstelde motor zijn, op de meeste hobby-servo's wordt DC-motor gebruikt en AC-motoren worden gebruikt in industriële toepassingen. De motor geeft rotatie-input aan de servo. De motor draait met een paar honderd toeren per minuut in de servo en de uitvoerrotatie is ongeveer 50 of meer keer minder van zijn toerental.

De volgende fase is de tandwielsamenstelling, die de hoekrotatie en snelheid van de servo bestuurt. Het tandwiel kan van kunststof of metaal zijn gemaakt, afhankelijk van hoe omvangrijk de lading is. Over het algemeen worden DC-motoren met een hoog toerental gedraaid en met een laag koppel zal het tandwielsamenstel het overtollige toerental in koppel omzetten. Een kleine motor kan dus een enorme belasting aan.

De volgende fase is de besturingselektronica die bestaat uit MOSFET's en IC's voor het regelen van de rotatie van de motor. In servomotoren is altijd een feedbacksysteem aanwezig om de huidige positie van de actuator te volgen.

In servo's is een terugkoppelingscomponent over het algemeen een potentiometer, die rechtstreeks is verbonden met een roterende actuator. De potentiometer fungeert als spanningsdeler die naar de besturingselektronica wordt gevoerd. Deze feedback helpt de besturingselektronica om de hoeveelheid stroom te bepalen die aan de motor wordt gegeven.

Een servomotor in een vaste positie zal met tegenzin uit zijn huidige positie komen als een externe kracht probeert te verstoren. Het feedbacksysteem bewaakt de huidige positie en voedt de motor tegen externe storingen.

Het bovenstaande scenario is hetzelfde wanneer de servo zijn actuator beweegt. Het besturingssysteem compenseert de externe kracht en beweegt met een bepaalde snelheid.

Inmiddels weet u nogal wat over servomotor en zijn werkingsmechanisme. Laten we eens kijken hoe we de servomotoren kunnen besturen met een microcontroller.

Servomotoren hebben 3 terminals in tegenstelling tot andere motoren die 2 terminals hebben, twee voor voeding (5V nominaal) en één voor stuursignaal. De draden zijn gekleurd voor gemakkelijke identificatie van de terminals.

De stuursignalen van servo's zijn PWM met een frequentie van 50Hz. De pulsbreedte van het signaal bepaalt de positie van de actuatorarm. Een typische hobby-servomotor werkt met een pulsbreedte van 1 tot 2 milliseconden.

Door een 1 ms pulsbreedte stuursignaal toe te passen, blijft de actuator op 0 graden. Door een 2 ms pulsbreedte stuursignaal toe te passen, blijft de actuator op 180 graden. Door signalen tussen 1-2 ms toe te passen, blijft de actuator binnen een hoek van 0-180 graden. Dit kan beter worden begrepen door onderstaande afbeelding.

Je zou nu hebben begrepen hoe een servo wordt bestuurd door pulsbreedtemodulatie (PWM).

Laten we nu eens kijken hoe we een servomotor met Arduino kunnen verbinden.

Schakelschema:

hoe je een servomotor met Arduino verbindt.

De bedrading is eenvoudig en spreekt voor zich. U hebt een externe voeding nodig als u een omvangrijke servomotor gebruikt. Als u probeert te voeden via de voeding van Arduino, zal de USB-poort op de computer overbelast raken.

Als je een soortgelijke servo hebt die aan het begin van het artikel wordt geïllustreerd, dan kun je deze voeden via een Arduino 5V-voeding, ook weergegeven in het prototype van de auteur.

Prototype van de auteur:

Arduino heeft een servobibliotheek nodig om ermee om te gaan, het maakte onze taak gemakkelijk en het zit al in de Arduino IDE.

Programma:

Het bovenstaande programma veegt de actuator 0 tot 180 graden naar rechts en 180 tot 0 graden naar links en herhaalt zich. Dit is een eenvoudig programma voor het testen van de servo die u nodig heeft om uw eigen code te schrijven voor uw aangepaste toepassingen.




Een paar: Circuit met klepcontroller met twee leidingen voor waterpomp Volgende: Inzicht in de bedrading van de spanningsregelaar van motorfietsen