Servomotor bedienen met joystick

Probeer Ons Instrument Voor Het Oplossen Van Problemen





In deze post zullen we leren hoe we servomotoren kunnen besturen met een joystick en Arduino. We zullen een overzicht zien van de joystick, de pinnen, de constructie en werking. We halen nuttige gegevens uit de joystick die de basis vormt voor het besturen van de servomotoren.

Invoering

Het motto van dit artikel is niet zomaar controle van de servomotoren maar om te leren hoe u een joystick voor bediening veel andere randapparatuur.



Laten we nu eens naar de joystick kijken.

Een joystick is een invoerapparaat dat bestaat uit een hendel die in X- en Y-assen in verschillende richtingen kan bewegen. De beweging van de hendel wordt gebruikt voor het besturen van een motor of elektronische randapparatuur.



Joysticks worden gebruikt van RC-speelgoed tot Boing-vliegtuigen en hebben vergelijkbare functies. Bovendien hebben gaming en kleinere joysticks een drukknop in de Z-as die kan worden geprogrammeerd om veel nuttige acties uit te voeren.

Illustratie van joystick:

Illustratie van joystick:

Joysticks zijn over het algemeen elektronische apparaten, dus we moeten stroom gebruiken. De beweging van de hendel produceert een spanningsverschil aan de uitgangspennen. De spanningsniveaus worden verwerkt door een microcontroller om het uitvoerapparaat, zoals een motor, te besturen.

De geïllustreerde joystick is vergelijkbaar, die te vinden is in PlayStation- en Xbox-controllers. U hoeft deze controllers niet te breken om er een te redden. Deze modules zijn direct verkrijgbaar bij lokale elektronicawinkels en e-commercesites.

Laten we nu eens kijken naar de constructie van deze joystick.

Het heeft twee 10 kilo ohm potentiometer gepositioneerd in X- en Y-assen met veren, zodat het terugkeert naar zijn oorspronkelijke positie wanneer de gebruiker de kracht van de hendel loslaat. Het heeft een druk op de knop ON op de Z-as.

Het heeft 5 pinnen, 5 volt Vcc, GND, variabele X, variabele Y en SW (Z-asschakelaar). Wanneer we spanning toepassen en de joystick op zijn oorspronkelijke hendelpositie lieten. De X- en Y-pinnen produceren de helft van de aangelegde spanning.

Wanneer we de hendel verplaatsen, varieert de spanning in X- en Y-uitgangspennen. Laten we nu praktisch de joystick verbinden met Arduino.

Schematisch diagram:

Arduino Servomotorbesturing met joystick

De details van de pinverbinding worden naast het circuit gegeven. Sluit de voltooide hardware-installatie aan en upload de code.

Programma:

Open de seriële monitor en u kunt het spanningsniveau op de X- en Y-aspennen zien en de status van de Z-as, d.w.z. drukknop, zoals hieronder geïllustreerd.

Deze X-, Y-, Z-aswaarden worden gebruikt om de positie van de hendel te interpreteren. Zoals u kunt zien, zijn de waarden van 0 tot 1023.

Dat komt omdat Arduino een ingebouwde ADC-converter heeft die de spanning van 0V - 5V omzet naar 0 tot 1023 waarden.

U kunt op de seriële monitor zien dat wanneer de hendel onaangeroerd blijft, de hendel in de middenpositie van zowel de X- als de Y-as blijft en de halve waarde van 1023 laat zien.

Je kunt ook zien dat het niet de exacte helft van de 1023 is, omdat het vervaardigen van deze joysticks nooit perfect is geweest.

U zou nu enige technische kennis hebben over joysticks.

Laten we nu eens kijken hoe we twee servomotoren kunnen bedienen met één joystick.

Schakelschema:

De twee servomotoren worden bestuurd door één joystick. Wanneer u de joystick langs de X-as beweegt, beweegt de servo die is aangesloten op pin # 7 met de klok mee en tegen de klok in, afhankelijk van de positie van de hendel.

U kunt de servo-actuator ook op een positie houden, als u de joystick op een bepaalde positie horizontaal houdt.

Vergelijkbaar voor servomotor aangesloten op pin # 6, u kunt de hendel langs de Y-as verplaatsen.

Wanneer u op de hendel langs de Z-as drukt, voeren de twee motoren een zwaai van 180 graden uit.

Je kunt de Arduino aansluiten op 9v batterij of naar de computer. Als u de Arduino op de computer aansluit, kunt u de seriële monitor openen en de hoek van de servo-actuatoren en spanningsniveaus zien.

Programma voor servomotorbesturing:

Als je een specifieke vraag hebt over dit project, voel je dan vrij om dit te zeggen in het commentaargedeelte, je kunt snel antwoord krijgen.




Een paar: Circuit met digitale capaciteitsmeter met Arduino Volgende: Digitale potentiometer MCP41xx gebruiken met Arduino