Innehållsförteckning:
- Tillbehör
- Steg 1: Baseboard
- Steg 2: Testa I2C LCD och knappsats
- Steg 3: Kontroll av servon
- Steg 4: Slutförd produkt
Video: Arduino Servo Tester: 4 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:38
Här visar vi hur man styr en servo från en Arduino utan dator. Användningen av detta bärbara gränssnitt påskyndar kraftigt prototypprocessen när gränser för servorotation fastställs. Det är särskilt användbart när du har många servon, som vi gör.
Om du använder denna instruerbara som en del av Modified InMoov Robot -serien, kom ihåg att detta är en oavslutad version av kontrollpanelen, monterad på baksidan av roboten. Du kan använda den som vi gjorde för att fastställa dina servogränser.
Om du bara hoppas kunna styra några servon med vår metod för ett annat projekt, eller bara för skojs skull, är den här instruktionsboken fortfarande något för dig, så lämna inte sidan! Observera att vissa bilder har anteckningar på dem, så titta på var och en för sig.
Låt oss börja!
Tillbehör
Alla förnödenheter finns inte listade här, läs igenom hela instruktionsboken
- 1 x Arduino Uno
- 1 x strömmodul, 5A DC-DC-stegomvandlare (vi använde denna modul men du kan också använda något liknande)
- 1 x I2C LCD (detta är vad vi använde, men seriell LCD eller praktiskt taget alla standard LCD -skärmar fungerar)
- 1 x 4x4 matris knappsats (till exempel)
- En brödbräda och/ eller en perfbräda. Om du använder perf -brädet behöver du huvudstiften som finns här, liksom all nödvändig utrustning för lödning.
- Man till han, man till kvinna, kvinnlig till kvinnlig bygelkabel; diverse motstånd, lysdioder och trådbräda.
- Någon form av baseboard. Vi använde 1/4 transparent akryl. Du kan använda otänkbart, lättborrat material.
- Gångjärn, skruvar, muttrar/bultar, superlim
Steg 1: Baseboard
Du kommer att vilja göra en robust bas för din elektronik. Om du gör detta för den modifierade InMoov -roboten måste den rymma en annan Arduino Uno (kanske Mega), en Raspberry Pi3 och flera brödbrädor och/eller perf -brädor för servo/sensorkontroll. Vår baspanel var cirka 7x15 . Du kan se bilderna ovan för den allmänna layouten av modulerna. Vi satte upp knappsatsen och LCD -skärmen på omslaget så att panelen bara skulle behöva öppnas vid fel, prototyper eller underhåll. Som ni ser hänger gångjärnet nedifrån och spärras fast upptill med hjälp av kardborre.
Försök att organisera dina mikrokontroller på ena sidan av brädet. Kraftmodulen är inte tillräckligt kraftfull för att driva alla dina servon på den färdiga roboten. Faktum är att den inte ens kan köra 3 servomoment med högt vridmoment av den typ som används i underarmen utan att den interna strömbrytaren stänger av strömmen. Kodprovet som tillhandahålls fungerar i alla fall bara för ett servoobjekt, så du kan testa med den här inställningen. Placera den här modulen nära kontrollerna eftersom detta kommer att vara deras effektregulator, samt ge ström till några mikroservos som dränerar irrelevant stallström- men det är för senare …
Ställ in LCD -skärmen och knappsatsen på utsidan av omslaget som du använder, eller bredvid sidan, men nära Arduino.
Om du gör det här själv, försök fortfarande konfigurera ditt kort i en liknande layout. Du kanske inte behöver topplocket, inte heller behöver du 3 brödbrädor- men komponenter måste läggas ut på ett logiskt sätt, till exempel det sista fotot av ett annat projekt, som också använder en knappsats och LCD. Du kan ersätta kretsen till vänster med en brödbräda, eller utelämna den helt.
Steg 2: Testa I2C LCD och knappsats
Nu ska vi testa knappsatsen och LCD -skärmen samtidigt. Gör anslutningarna enligt bilden ovan och kör den bifogade koden. Du måste ladda ner ZIP -biblioteken för liquidCrystal_I2C.h om du inte redan har det; du måste också importera Keypad.h- och Wire.h -biblioteken (detta kan göras i IDE).
Fritzing -filen bifogas också. Du behöver inte driva något från strömmodulen än, även om du kan om du vill. Arduino kommer att ha tillräckligt med ström från USB -kabeln, som du laddar upp kod med.
När du laddar upp din kod bör LCD -skärmen uppmana dig att trycka på en knapp på knappsatsen; en gång tryckt ut trycker LCD -skärmen ut tangenten som trycks in. Du kan behöva ändra layouten för knappsatsmatrisen; se kommentarerna i koden för förtydligande.
Steg 3: Kontroll av servon
Nu tar vi detta projekt ett steg längre och lägger till en servo. Du måste ansluta den till Digital Pin 10, som anges i koden, eller så kan du ändra det för att passa dina behov. Följ ovanstående Fritzing -diagram; den är densamma som den föregående med undantag för servon, RGB gemensam katod -LED och summer. De två sistnämnda används för att komplettera användargränssnittet. Varningar och status visas på lysdioden och via summern. Vi ser ovan hur vi använder den färdiga servotestaren för att sätta gränser för InMoovs robotiska underarm och hand.
Ladda ner den bifogade koden och kör den. Om du trycker på A visas en informationspanel; allt annat ska vara självförklarande.
Vid denna tidpunkt kan du använda strömmodulen för att driva servon separat; speciellt om det finns en stor chans att servon når stallström.
Om du vill kan du montera summern och lysdioden på ett perf -kort, som visas ovan. Detta är användbart eftersom det senare kommer att fungera som utbrottskort för servon och är snyggare överlag.
Försök att mata in ett värde som är större än 180 grader för servon- se vad som händer!
Steg 4: Slutförd produkt
Du kan nu styra servon med detta manuella gränssnitt. Några tips nämns här.
Felsökning:
-LCD fungerar inte: kontrollera alla dina anslutningar och att du har initierat LCD -skärmen med rätt antal rader och kolumner
-Knappsatsen fungerar inte: kontrollera anslutningar
-Knappsats fungerar, men fel nummer skrivs ut: Du har två alternativ här. Du kan antingen märka om matrisen i koden (dvs. om du skriver ut A istället för 1, märker om 'A' till '1'), eller så kan du göra om din ledning med särskild omsorg för att alla ledningar ska gå till de högra stiften på Arduino.
-LED fungerar inte: Kontrollera att du använder en gemensam katod -LED. Om inte, kan du invertera alla signaler du skickar till den (dvs. ändra HIGH till LOW) och ansluta den gemensamma anoden till +5V.
Vi kommer snart att lägga upp en kort Youtube -video som visar funktionerna i den här enheten; liksom en hel serie om konstruktionen av vår modifierade InMoov -robot. Du kan läsa mer om den ursprungliga InMoov här. Om denna instruktör deltar i en tävling, rösta på den! Allt vi vinner hjälper oss att påskynda projektet och därmed ytterligare instruktioner om detta ämne.
Denna instruktionsbok redigerades senast den 5 oktober 2019.
Rekommenderad:
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)
Handledning 30A Micro Brush Motor Brake Controller med Servo Tester: 3 steg
Handledning 30A Micro Brush Motor Brake Controller med Servo Tester: Specifikation: 30A brush speed controller. Funktion: framåt, bakåt, broms Arbetsspänning: 3.0V --- 5.0V. Ström (A): 30A BEC: 5V/1A Drivfrekvens: 2KHz Ingång: 2-3 Li-Po/Ni-Mh/Ni-cd 4-10cell Konstant ström 30A Max 30A <
IC Tester, Op-Amp, 555 Timer Tester: 3 steg
IC Tester, Op-Amp, 555 Timer Tester: Alla dåliga eller ersättande IC: er ligger, men om de blandas med varandra tar det mycket tid att identifiera dålig eller bra. I den här artikeln lär vi oss om hur vi kan göra IC testare, Låt oss fortsätta
Arduino Triple Servo Tester: 6 steg (med bilder)
Arduino Triple Servo Tester: Jag bygger för närvarande flera gångrobotar, alla drivna av flera servon. Problemet uppstår då att räkna ut rörelseomfånget för varje servo inom det tillgängliga rörelseområdet. Dessutom försöker jag räkna ut vilken typ av gånggång som är
Hacka din servo V1.00 - Förvandla din servo till en kraftfull linjär manöverdon: 7 steg
Hacka din servo V1.00 - Förvandla din servo till en kraftfull linjär ställdon: förutsatt att du har verktygen och servon som du kan bygga detta för under ett par dollar. Ställdonet sträcker sig med en hastighet av cirka 50 mm/min. Det är ganska långsamt men mycket kraftfullt. Se min video i slutet av inlägget där det lilla ställdonet