Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Baseboard
- Trin 2: Test af I2C LCD og tastatur
- Trin 3: Styring af servoen
- Trin 4: Færdiggjort produkt
Video: Arduino Servo Tester: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Her demonstrerer vi, hvordan du styrer en servo fra en Arduino uden en computer. Brugen af denne bærbare grænseflade fremskynder i høj grad prototypeprocessen, når der fastsættes grænser for servorotation. Det er især nyttigt, når du har mange servoer, som vi gør.
Hvis du bruger denne Instructable som en del af Modified InMoov Robot -serien, skal du huske på, at dette er en ufærdig version af kontrolpanelet, der er monteret på bagsiden af robotten. Du kan bruge det som vi gjorde, til at hjælpe med at bestemme dine servo -grænser.
Hvis du bare håber på at styre et par servoer med vores metode til et andet projekt eller bare for sjov, er denne Instructable stadig noget for dig, så lad ikke være med at forlade siden! Bemærk, at nogle billeder har noter på dem, så se på hver enkelt for sig.
Lad os komme igang!
Forbrugsvarer
Ikke alle forbrugsstoffer er angivet her. Læs hele instruktionsbogen igennem
- 1 x Arduino Uno
- 1 x strømmodul, 5A DC-DC step down converter (Vi brugte dette modul, men du kan også bruge noget lignende)
- 1 x I2C LCD (det er det, vi brugte, men enhver seriel LCD eller praktisk talt enhver standard LCD fungerer)
- 1 x 4x4 matrix tastatur (f.eks.)
- Et brødbræt og/ eller et perfbræt. Hvis du bruger perf boardet, skal du bruge header pins som findes her, samt alt nødvendigt udstyr til lodning.
- Mand til mand, mand til kvinde, hun til hun jumpertråde; diverse modstande, lysdioder og brødbrætstråde.
- En slags fodliste. Vi brugte 1/4 gennemsigtig akryl. Du kan bruge ethvert umådeligt, let at bore materiale.
- Hængsler, skruer, møtrikker/bolte, superlim
Trin 1: Baseboard
Du vil gerne lave en robust base til din elektronik. Hvis du laver dette til Modified InMoov Robot, skal det rumme en anden Arduino Uno (måske Mega), en Raspberry Pi3 og flere brødbrætter og/eller perf boards til servo/sensor kontrol. Vores bundpanel var cirka 7x15 . Du kan se ovenstående fotos for det generelle layout af modulerne. Vi opsatte tastaturet og LCD'et på dækslet, så panelet kun skulle åbnes i tilfælde af fejl, prototyper eller vedligeholdelse. Som du kan se, hænges dækslet nedefra og låses fast øverst ved hjælp af en velcro.
Prøv at organisere dine mikrokontrollere på den ene side af brættet. Strømmodulet er ikke stærkt nok til at køre alle dine servoer på den færdige robot. Faktisk kan den ikke engang køre 3 højmomentservoer af den type, der bruges i underarmen, uden at den interne strømafbryder slukker for strømmen. Under alle omstændigheder fungerer den angivne kodeeksempel kun for et servoobjekt, så du kan teste med denne opsætning. Placer dette modul tæt på controllerne, da dette vil være deres effektregulator, samt give strøm til nogle mikroservoer, der dræner irrelevant staldstrøm- men det er til senere …
Opsæt LCD'et og tastaturet på ydersiden af dækslet, som du bruger, eller ud til siden, men tæt på Arduino.
Hvis du gør dette for dig selv, kan du stadig prøve at konfigurere dit board i et lignende layout. Du har muligvis ikke brug for topdækslet, og du skal heller ikke bruge 3 brødbrætter- men komponenter skal lægges på en logisk måde, f.eks. Det sidste foto af et andet projekt, som også bruger et tastatur og LCD. Du kan udskifte kredsløbet til venstre med et brødbræt eller udelade det helt.
Trin 2: Test af I2C LCD og tastatur
Vi vil nu gå videre og teste tastaturet og LCD -skærmen på samme tid. Lav forbindelserne som vist på billedet ovenfor, og kør den vedhæftede kode. Du skal downloade ZIP -bibliotekerne til liquidCrystal_I2C.h, hvis du ikke allerede har det; også skal du importere tastaturet.h og Wire.h bibliotekerne (dette kan gøres i IDE).
Fritzing -filen er også vedhæftet. Du behøver ikke at drive noget fra strømmodulet endnu, selvom du kunne, hvis du ville. Arduinoen har nok strøm fra USB -kablet, som du uploader kode efter.
Når du uploader din kode, skal LCD'en bede dig om at trykke på en tast på tastaturet; når der trykkes på, udskriver LCD'et den tast, der trykkes på. Du skal muligvis ændre layoutet på tastaturmatrixen; se kommentarerne i koden for afklaring.
Trin 3: Styring af servoen
Nu tager vi dette projekt et skridt videre og tilføjer en servo. Du skal tilslutte den til Digital Pin 10, som det er angivet i koden, eller du kan ændre det, så det passer til dine behov. Følg ovenstående Fritzing -diagram; det er det samme som det forrige med undtagelse af servoen, RGB fælles katode LED og summer. De to sidstnævnte bruges til at supplere brugergrænsefladen. Advarsler og status vises på LED'en og gennem summeren. Vi ser ovenfor, hvordan vi bruger den færdige servotester til at sætte grænser for InMoov Robotic Underarm og Hånd.
Download den vedhæftede kode og kør den. Ved at trykke på A vises et infopanel; alt andet burde være selvforklarende.
På dette tidspunkt kan du bruge strømmodulet til at drive servoen separat; især hvis der er stor sandsynlighed for, at servoen når staldstrøm.
Hvis du vil, kan du montere summer og LED på et perf board, som vist ovenfor. Dette er nyttigt, fordi det senere vil fungere som udbrudstavle til servoerne og generelt er pænere.
Prøv at indtaste en værdi større end 180 grader for servoen- se hvad der sker!
Trin 4: Færdiggjort produkt
Du kan nu styre servoer med denne manuelle grænseflade. Nogle tips er nævnt her.
Fejlfinding:
-LCD virker ikke: Kontroller alle dine forbindelser, og at du har initialiseret LCD'et med det korrekte antal rækker og kolonner
-Tastaturet virker ikke: Kontroller forbindelserne
-Tastatur fungerer, men forkerte tal udskrives: Du har to alternativer her. Du kan enten ommærke matricen i koden (dvs. hvis du udskriver A i stedet for 1, ommærker 'A' til '1'), eller du kan lave om på dine ledninger, idet du skal være særlig opmærksom på at sikre, at alle ledninger går til de rigtige ben på Arduino.
-LED virker ikke: Kontroller, at du bruger en fælles katode (fælles jord) LED. Hvis ikke, kan du invertere alle de signaler, du sender til den (dvs. ændre HIGH til LOW) og slutte den fælles anode til +5V.
Vi sender snart en kort Youtube -video, der viser funktionerne i denne enhed; samt en hel serie om konstruktionen af vores modificerede InMoov -robot. Du kan læse mere om den originale InMoov her. Hvis denne instruktør deltager i en konkurrence, skal du stemme på den! Alt, hvad vi vinder, hjælper os med at fremskynde projektet og dermed yderligere instruktioner om dette emne.
Denne instruks blev sidst redigeret den 5. oktober 2019.
Anbefalede:
Lav din egen ESC/Servo Tester: 5 trin
Lav din egen ESC/Servo Tester: I dette lille projekt vil jeg vise dig, hvordan du bygger en brugerdefineret ESC/Servo Tester. Undervejs vil jeg vise dig, hvordan du indstiller timeren til ATmega328P for at oprette det nødvendige styresignal. I slutningen vil jeg derefter tilføje taktile kontakter, en poten
Two-Mode Servo Tester: 5 trin (med billeder)
To-mode servotester: Når jeg køber en ny servomotor, vil jeg hurtigt kontrollere, om den virker. Two-Mode Servo Tester lader mig gøre det på et minut. Servoer, i hvert fald de billigere, jeg kender, fungerer nogle gange ikke som forventet, når de ankommer: Gearene hopper, elektronen
IC Tester, Op-Amp, 555 Timer Tester: 3 trin
IC Tester, Op-Amp, 555 Timer Tester: Alle dårlige eller erstatnings IC'er ligger, men hvis de blandes med hinanden, tager det masser af tid at identificere dårlig eller god, i denne artikel lærer vi om, hvordan vi kan lave IC tester, lad os fortsætte
Arduino Triple Servo Tester: 6 trin (med billeder)
Arduino Triple Servo Tester: Jeg bygger i øjeblikket flere vandrerobotter, der alle drives af flere servoer. Problemet opstår derefter ved at beregne bevægelsesomfanget for hver servo inden for det tilgængelige bevægelsesområde. Derudover forsøger jeg at finde ud af, hvilken type gangart der er
Li-Ion batterikapacitets tester (litium power tester): 5 trin
Li-ion batterikapacitetstester (litiumstrømstester): ============ ADVARSEL & ANSVARSFRASKRIVELSE =========== Li-ion-batterier er meget farlige, hvis de ikke håndteres korrekt. GØR IKKE OVER LADNING / BRÆND / ÅBN Li-Ion-flagermus Alt, hvad du gør med disse oplysninger, er din egen risiko ====== ========================================