Interactief Servo Motor Project met Arduino en HC‑SR04 Sensoren
Onderdelen en benodigdheden
| Onderdeel | Aantal |
|---|---|
| Arduino UNO | 1 |
| Adafruit 16‑kanaals PWM Servo Motor Controller | 3 |
| SG90 Micro‑servo motor | 36 |
| 5V 30W Schakelende voeding | 1 |
| Servo Motor Kabel Verlengingen | 1 |
| 24 x 48 inch Peg Board (karton/perforeerd bord) | 1 |
| IJsjesstokjes, geknipt tot 3 1/4 inch (ca. 8,3 cm) | 36 |
| Ultrasoon Afstandssensor HC‑SR04 (optioneel, voor interactieve modus) | 5 |
Benodigde gereedschappen
- Soldeerbout
- Lijm pistool
Apps en online services
- Arduino IDE
Over dit project
De onderstaande video toont 36 servomotoren die een elektronisch kunstwerk creëren. Op de achtergrond regelen een Arduino Uno en drie 16‑kanaals PWM‑servocontrollers de beweging. De inspiratie kwam van een veel grotere installatie met 450 servos in een modern kunstmuseum, maar zelfs deze compacte versie levert fascinerende effecten op.
Er is een optionele interactieve functie die niet in de video getoond wordt. Vijf ultrasoonafstandssensoren (HC‑SR04) worden langs de bovenrand van het display gemonteerd. Wanneer je je hand boven de middensor plaatst, schakelt de Arduino over naar interactieve modus: alle servos proberen je hand te volgen terwijl je deze boven de sensoren beweegt. Na enkele seconden zonder detectie keert het programma terug naar de standaard weergave. Deze functie is volledig optioneel; de software werkt ook zonder sensoren perfect.
Hardware
Het project is gebouwd op een 24 x 48 inch peg board (breedte teruggebracht tot 32 inch). De servos zitten 4 inch uit elkaar en zijn met lijmpistool aan de achterkant van het bord vastgelijmd. De ijsjesstokjes (3 1/4 inch) zijn eveneens met lijm aan de servo‑assen bevestigd.
De SG90 servos zijn het duurste onderdeel. Een set van 8 kost ca. $20 op Amazon; voor 36 servos investeer je ongeveer $100. Hoewel SG90’s als 180° servos worden verkocht, halen veel deze hoek niet. Sommige vallen ver tekort en zijn beter te discarberen. Koop 5 sets van 8, dan vind je meestal 36 exemplaren die minstens 160° draaien.
De servos moeten in hun minimumpositie (PWM 150) staan. De ijsjesstokjes worden horizontaal en naar rechts wijzend in deze minimumpositie bevestigd (gezien van voren). Er is een klein testprogramma meegeleverd: SetServosToMinimum.
De foto toont de achterkant: drie PWM‑controllers links, de 30W 5V voeding rechts. De Arduino wordt apart gevoed via een USB‑adapter, zodat de USB‑kabel makkelijk losgekoppeld kan worden voor programma‑wijzigingen.
De optionele ultrasoonsensoren zitten boven aan het display, bevestigd met lijm en extra ijsjesstokjes. Het kleine printplaatje onder de Arduino verdeelt stroom en massa naar alle ultrasoonsensoren.
Software
De code gebruikt de Adafruit PWM Servo Driver library voor de 16‑kanaals controllers (te installeren via Arduino Library Manager). De software werkt met of zonder de optionele ultrasoonsensoren. Het toont een reeks effecten in een show van iets meer dan drie minuten voordat hij herhaalt. Bij aanwezigheid van sensoren schakelt het over naar interactieve modus zodra een hand boven de middensor wordt gedetecteerd.
De kern van de software:
- Twee tabellen:
curPos(huidige positie / 3) entarPos(doelpositie / 3). Delen door 3 past in een byte en de servos bewegen in stappen van 3. - De
setup()zet alle servos verticaal en initialiseert beide tabellen. - De subroutine
goToTargets()beweegt servos naar hun doel in 15‑staps incrementen. Snelheid wordt bepaald doorreps(veelvouden van 15 stappen) enmydelay(ms wachttijd per aanroep). - De optionele interactieve functie wordt afgehandeld door
trackRoutine(), aangeroepen wanneergoToTargets()een object boven de middensor ziet. Alle servos volgen de handbeweging; na enkele seconden zonder detectie keert het programma terug naar de standaard show.
Code
ServosArt Software voor Arduino Uno (download via de projectpagina).
Schema's
- Verbinding Arduino – 3x 16‑kanaals controller – 36 servos
- Verbinding 5x HC‑SR04 ultrasoonsensoren aan Arduino voor handtracking
Productieproces
- Professionele Fanuc servo motor reparatiediensten
- Professionele Siemens Servomotor Reparatie – Snelle, Betrouwbare Service
- Expert Gids: Servomotor Reparatie & Probleemoplossing Tips
- Raspoulette: Zonnestroom-gevoede Autonome Koeienpoort Systeem Prototype
- Simple Pi Robot – Bouw een 2-WD Autonome Rover met Raspberry Pi
- MOSMusic Project Kit: MOSFET, Arduino en meer
- Lineaire motoren begrijpen: Van elektrische energie naar nauwkeurige lineaire beweging
- Waarom planeetwieltandwielen servomotorprestaties verbeteren
- Servopers Fundamenten: Vermogen, Precisie en Efficiëntie Uitgelegd
- Servomotoren Uitgelegd: Hoe Ze Werken en Waarom Ze Belangrijk Zijn
- Servomotor vertragers begrijpen: Functies, voordelen en toepassingen