Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Baseboard
- Trinn 2: Testing av I2C LCD og tastatur
- Trinn 3: Kontrollere servoen
- Trinn 4: Fullført produkt
Video: Arduino Servo Tester: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Her demonstrerer vi hvordan du styrer en servo fra en Arduino uten datamaskin. Bruken av dette bærbare grensesnittet øker prototypeprosessen i stor grad når grenser for servorotasjon bestemmes. Det er spesielt nyttig når du har mange servoer, slik vi gjør.
Hvis du bruker denne Instructable som en del av Modified InMoov Robot -serien, må du huske på at dette er en uferdig versjon av kontrollpanelet, montert på baksiden av roboten. Du kan bruke den som vi gjorde, for å bestemme servo -grensene dine.
Hvis du bare håper å kontrollere noen servoer med vår metode for et annet prosjekt, eller bare for moro skyld, er denne Instructable fortsatt noe for deg, så ikke forlat siden! Vær oppmerksom på at noen bilder har notater på dem, så se på hver enkelt for seg.
La oss komme i gang!
Rekvisita
Ikke alle rekvisita er oppført her. Les gjennom hele instruksjonsboken
- 1 x Arduino Uno
- 1 x strømmodul, 5A DC-DC trinn ned omformer (Vi brukte denne modulen, men du kan også bruke noe slikt)
- 1 x I2C LCD (dette er det vi brukte, men seriell LCD eller praktisk talt standard LCD fungerer)
- 1 x 4x4 matrisetastatur (for eksempel)
- Et brødbrett og/ eller et perfbrett. Hvis du bruker perf -brettet trenger du toppnål som finnes her, samt alt nødvendig utstyr for lodding.
- Mann til mann, mann til kvinne, hun til hun jumper ledninger; diverse motstander, lysdioder og brødbrettledninger.
- En slags tavle. Vi brukte 1/4 gjennomsiktig akryl. Du kan bruke alt umålelig, lett å bore materiale.
- Hengsler, skruer, muttere/bolter, superlim
Trinn 1: Baseboard
Du vil lage en solid base for elektronikken din. Hvis du lager dette for den modifiserte InMoov -roboten, må den ha plass til en annen Arduino Uno (kanskje Mega), en Raspberry Pi3, og flere brødbrett og/eller perfbrett for servo/sensorkontroll. Basepanelet vårt var omtrent 7x15 . Du kan se bildene ovenfor for den generelle utformingen av modulene. Vi satte opp tastaturet og LCD -skjermen på dekselet slik at panelet bare måtte åpnes ved feil, prototyper eller vedlikehold. Som du kan se, henges dekselet ned fra bunnen og låses fast på toppen ved hjelp av litt borrelås.
Prøv å organisere mikrokontrollerne på den ene siden av brettet. Strømmodulen er ikke kraftig nok til å kjøre alle servoene dine på den ferdige roboten. Faktisk kan den ikke engang drive 3 høymoment-servoer av den typen som brukes i underarmen uten at den interne strømbryteren slår av strømmen. Uansett fungerer kodeeksemplet bare for ett servoobjekt, så du kan teste med dette oppsettet. Plasser denne modulen nær kontrollerne, da dette vil være deres effektregulator, samt gi strøm til noen mikroservoer som drenerer irrelevant stallstrøm- men det er for senere …
Sett opp LCD -skjermen og tastaturet på utsiden av dekselet du bruker, eller ved siden av, men nær Arduino.
Hvis du gjør dette selv, kan du prøve å konfigurere brettet ditt i en lignende layout. Du trenger kanskje ikke toppdekselet, og du trenger heller ikke tre brødbrett- men komponenter må legges på en logisk måte, for eksempel det siste bildet av et annet prosjekt, som også bruker tastatur og LCD. Du kan erstatte kretsen til venstre med et brødbrett, eller utelate det helt.
Trinn 2: Testing av I2C LCD og tastatur
Vi skal nå gå videre og teste tastaturet og LCD -skjermen samtidig. Gjør tilkoblingene som vist på bildet ovenfor, og kjør den vedlagte koden. Du må laste ned ZIP -bibliotekene for liquidCrystal_I2C.h hvis du ikke allerede har det; I tillegg må du importere tastatur.h og Wire.h bibliotekene (dette kan gjøres i IDE).
Fritzing -filen er også vedlagt. Du trenger ikke å drive noe fra strømmodulen ennå, selv om du kan hvis du vil. Arduinoen vil ha nok strøm fra USB -kabelen, som du laster opp kode etter.
Når du laster opp koden, bør LCD -skjermen be deg om å trykke på en tast på tastaturet; Når den er trykket, skriver LCD -en ut tasten som trykkes. Du må kanskje endre oppsettet til tastaturmatrisen; se kommentarene i koden for avklaring.
Trinn 3: Kontrollere servoen
Nå tar vi dette prosjektet et skritt videre og legger til en servo. Du må koble den til Digital Pin 10, som er angitt i koden, eller du kan endre den slik at den passer dine behov. Følg ovenstående Fritzing -diagram; den er den samme som den forrige med unntak av servoen, RGB felles katode LED og summer. De to sistnevnte brukes til å supplere brukergrensesnittet. Advarsler og status vises på LED-en og gjennom summeren. Vi ser ovenfor hvordan vi bruker den ferdige servotester for å sette grenser for InMoov robotarmen og hånden.
Last ned den vedlagte koden og kjør den. Trykk på A for å få frem et infopanel; alt annet burde være selvforklarende.
På dette tidspunktet kan du bruke strømmodulen til å drive servoen separat; spesielt hvis det er stor sjanse for at servoen når stallstrøm.
Hvis du vil, kan du montere summer og LED på et perf -bord, som vist ovenfor. Dette er nyttig fordi det senere vil fungere som utbruddstavle for servoene, og generelt sett er det bedre.
Prøv å legge inn en verdi større enn 180 grader for servoen- se hva som skjer!
Trinn 4: Fullført produkt
Du kan nå kontrollere servoer med dette manuelle grensesnittet. Noen tips er nevnt her.
Feilsøking:
-LCD fungerer ikke: sjekk alle tilkoblingene, og at du har initialisert LCD -skjermen med riktig antall rader og kolonner
-Tastaturet fungerer ikke: sjekk tilkoblinger
-Tastaturet fungerer, men feil tall skrives ut: Du har to alternativer her. Du kan enten merke matrisen på nytt i koden (dvs. hvis du skriver ut A i stedet for 1, merker 'A' til '1'), eller du kan gjøre om ledningene på nytt, og vær spesielt forsiktig med å sikre at alle ledningene går til de riktige pinnene på Arduino.
-LED virker ikke: Kontroller at du bruker en vanlig katode (felles bakken) LED. Hvis ikke, kan du invertere alle signalene du sender til den (dvs. endre HIGH til LOW) og koble den vanlige anoden til +5V.
Vi legger snart ut en kort Youtube -video som viser funksjonene til denne enheten; også, som en hel serie om konstruksjonen av vår modifiserte InMoov -robot. Du kan lese mer om den originale InMoov her. Hvis denne instruksen er med i en konkurranse, vennligst stem på den! Alt vi vinner vil hjelpe oss med å få fart på prosjektet og følgelig flere instrukser om dette emnet.
Denne instruksen ble sist redigert 5. oktober 2019.
Anbefalt:
4-20ma generator/tester som bruker Arduino: 8 trinn
4-20ma generator/tester ved bruk av Arduino: 4-20mA generatorer er tilgjengelig på ebay, men jeg elsker en DIY ting av ting og bruker deler jeg har rundt meg. for å teste utgangen på 4-20mA instrumenter. Det er loa
Arduino DMX 512 Tester og kontroller: 19 trinn
Arduino DMX 512 Tester og kontroller: Actualizaciones, ficheros, códigos … Engelsk versjonFacebook Este p
To-modus Servo Tester: 5 trinn (med bilder)
To-modus servotester: Når jeg kjøper en ny servomotor, vil jeg raskt sjekke om den fungerer. To-modus servotester lar meg gjøre det på et minutt. Servoer, i hvert fall de billigere jeg kjenner, fungerer noen ganger ikke som forventet når de kommer: Girene hopper, elektronet
IC Tester, Op-Amp, 555 Timer Tester: 3 trinn
IC Tester, Op-Amp, 555 Timer Tester: Alle dårlige eller erstatnings ICer ligger, men hvis de blandes med hverandre, tar det mye tid å identifisere dårlig eller god. I denne artikkelen lærer vi om hvordan vi kan lage IC tester, la oss fortsette
Arduino Triple Servo Tester: 6 trinn (med bilder)
Arduino Triple Servo Tester: Jeg bygger for tiden flere turroboter, alle drevet av flere servoer. Problemet oppstår da ved å regne ut bevegelsesgraden til hver servo, hvilket bevegelsesområde som er tilgjengelig. I tillegg prøver jeg å finne ut hva slags ganggang er