Hur man gör en robot på Arduino gör det själv: Hemlagad Robot Arduino hemma. Arduino Robot med egna händer Kontrollera polariteten och korrekta anslutningen av modulerna
Hej alla. Den här artikeln är en liten historia om hur att göra Robot stygg hända. Varför exakt historien, frågar du? Allt på grund av det faktum att för tillverkningen av sådant hantverk Det är nödvändigt att använda betydande kunskap av kunskap, vilket är mycket svårt att presentera i en artikel. Vi kommer att vidarebefordra samlingsprocessen, titta på ett öga i programkoden och i slutändan återuppliva "Silicon Valley" brainchild. Jag råder dig att titta på videon för att få en uppfattning om att i slutändan ska träna.
Innan du går vidare, vänligen notera följande i tillverkningen hantverk En laserskärare användes. Från laserskäraren kan du vägra, ha tillräcklig erfarenhet med dina händer. Noggrannhet utskjuter att nyckeln som hjälper till att slutföra projektet framgångsrikt!
Steg 1: Hur fungerar det?
Roboten har 4 ben, med 3 servostyrningar på var och en av dem, vilket gör det möjligt att flytta lem i 3 grader av frihet. Han rör sig "Crawling Gait." Låt det sakta, men en av de minsta.
Först måste du lära roboten framåt, tillbaka, vänster och höger, lägg sedan till en ultraljudssensor, som hjälper till att upptäcka hinder / hinder, och sedan Bluetooth-modulen, tack vare vilken robothantering som kommer att släppas.
Steg 2: Obligatoriska detaljer
Skelett Den är gjord av plexiglas med en tjocklek på 2 mm.
Den elektroniska delen av hemlagad kommer att bestå av:
- 12 servostyrningar;
- arduino nano (kan ersättas med någon annan Arduino bräda);
- Shilde för servostyrning;
- strömförsörjning (i projektet använde BP 5V 4A);
- ultraljudssensor;
- hC 05 Bluetooth-modul;
För att göra sköld behöver du:
- monteringsbräda (helst med delade linjer (däck) av näring och mark);
- interplaniala PIN-kontakter - 30 st;
- board Sockets - 36 st;
- ledningar.
Instrument:
- Laserskärare (eller skickliga händer);
- Superlim;
- Plock.
Steg 3: Skelett
Vi använder grafikprogrammet för att rita kompositdelar av skelettet.
Efter det, på något tillgängligt sätt, skär ut 30 detaljer om den framtida roboten.
Steg 4: Montering
Efter skärning tar vi bort det skyddande papperslocket från plexiglaset.
Fortsätt sedan till benets montering. Fästelement inbyggda i bitar av skelett. Allt som återstår att göra är att ansluta detaljerna tillsammans. Anslutningen är ganska tät, men för större tillförlitlighet kan du tillämpa en droppe superklon på fästena.
Då måste du slutföra servokrifterna (limmade längs skruven mitt emot servos axlar).
Denna förbättring vi kommer att göra en robot mer stabil. Förbättring behöver endast utföras för 8 servostyrningar, de återstående 4 kommer att fästas direkt på kroppen.
Fäst benen på bindemedelselementet (krökt föremål) och i sin tur till servo på kroppen.
Steg 5: Vi gör sköld
Tillverkningen av styrelsen är ganska enkel, om du följer de bilder som presenteras i steg.
Steg 6: Elektronik
Bill Servo Slutsatser på Arduino Board. Slutsatser bör anslutas i rätt ordning, annars kommer ingenting att fungera!
Steg 7: Programmering
Det är dags att återuppliva Frankenstein. Först ladda ner programmet Legs_init och se till att roboten är i en sådan position som på bilden. Nästa, ladda ner Quattro_Test för att kontrollera om roboten reagerar på de grundläggande rörelserna, som att gå framåt, bakåt, vänster och höger.
VIKTIGT: Du måste lägga till ett valfritt bibliotek till Arduino IDE-programvarumiljö. Länk till biblioteket presenteras nedan:
Roboten ska ta 5 steg framåt, 5 steg tillbaka, sväng till vänster om 90 grader, sätt på 90 grader till höger. Om Frankenstein gör allt, flyttar vi i rätt riktning.
P.. S.: Installera roboten på en kopp, som på stativet, för att hålla den på den ursprungliga punkten varje gång. Så snart testen visade robotens normala drift kan vi fortsätta provet genom att sätta det på marken / våningen.
Steg 8: Inverse Kinematics
Inverse (Reverse) Kinematics - Det är i verkligheten och hanterar roboten (om du inte är intresserad av den matematiska sidan av det här projektet och du har bråttom för att avsluta projektet kan du hoppa över det här steget, men vet att roboten flyttas kommer alltid vara användbar).
Enkla ord, invers kinematik eller förkortad IR är "del" av trigonometriska ekvationer, vilket bestämmer läget för den akuta änden av benet, vinkeln för varje servo, etc., som i slutändan bestämmer ett par preliminära installationsparametrar. Till exempel kommer längden på varje steg i roboten eller höjden av kroppen att vara belägen under rörelse / vila. Med hjälp av dessa fördefinierade parametrar kommer systemet att extrahera det värde som ska flyttas av varje servo för att styra roboten med hjälp av kommandona.
Låt oss prata om hur man använder Arduino för att skapa en robot som balanserar som en Sigway.
Sigway från engelska. Segway - ett tvåhjuligt fordon som är utrustat med en elektrisk enhet. De kallas också gyros eller elektriska skotrar.
Har du någonsin undrat hur Sigway fungerar? I den här lektionen kommer vi att försöka visa dig hur man gör Arduino's Robot, som balanserar dig precis som Segway.
För att balansera roboten bör motorer motverka robotens fall. Denna åtgärd kräver feedback och korrigerande element. Feedback Element - som ger både acceleration och rotation i alla tre axlarna (). Arduino använder det för att känna till robotens nuvarande orientering. Korrigeringselementet är en kombination av motorn och hjulen.
Som ett resultat borde det vara ungefär en sådan vän:
Robotschema
MOTOR DRIVER MODULE L298N:
DC Växellåda Motor med hjul:
Den självbalanserande roboten är i huvudsak en inverterad pendel. Det kan bättre balanseras om mitten av massan är över i förhållande till hjulaxeln. Massens högsta centrum betyder ett högre ögonblick av tröghetsmassa, vilket motsvarar en lägre vinkelacceleration (långsammare droppe). Det är därför vi sätter batteriet på toppen. Höjden på roboten valdes emellertid på grundval av närvaron av material 🙂
Den färdiga versionen av en oberoende balanseringsrobot kan ses i figuren ovan. På toppen finns sex NI-CD-batterier för att driva ett tryckt kretskort. I intervallet mellan motorerna används ett 9 volt batteri för motordrivrutinen.
Teori
I teorin om ledning, som håller en variabel (i det här fallet, är robotens läge), som krävs, kallad PID (proportionellt integrerat derivat). Var och en av dessa parametrar har en "ökning", vanligen kallad KP, KI och KD. PID ger en korrigering mellan önskat värde (eller ingång) och det faktiska värdet (eller utmatningen). Skillnaden mellan ingången och utgången kallas ett "fel".
PID-styrenheten minskar felet till det minsta möjliga värdet, ständigt justering av utgången. I vår självbalanserande robot Arduino-ingång (som är önskad lutning i grader) installeras av programvara. MPU6050 läser robotens nuvarande lutning och levererar den till PID-algoritmen som utför beräkningar för att styra motorn och håller roboten i ett vertikalt läge.
PID kräver att värdena på KP, KI och KD är konfigurerade till optimala värden. Ingenjörer använder programvara som Matlab för att automatiskt beräkna dessa värden. Tyvärr kan vi inte använda Matlab i vårt fall, eftersom det kommer att komplicera projektet ännu mer. I stället anpassar vi PID-värdena. Så här gör du det:
- Gör kp, ki och kd lika noll.
- Justera kp. För lite kp kommer att tvinga en robot att falla, eftersom korrigeringarna inte räcker. För mycket kp gör roboten vild och bakåt. En bra kp kommer att göra att roboten helt kommer att avvika och gå framåt (eller svänger något).
- Så snart KP är installerat, justera KD. Det goda värdet av KD kommer att minska oscillationer tills roboten blir nästan stabil. Dessutom håller den korrekta KD roboten, även om den tolper.
- Slutligen installera KI. När du slår på roboten, varierar den, även om KP och KD är installerade, men kommer att stabiliseras i tid. Det korrekta värdet av KI kommer att minska den tid som krävs för att stabilisera roboten.
Robotens beteende kan ses nedan på videon:
Arduino Code självbalanseringsrobot
Vi behövde fyra externa bibliotek för att skapa vår robot. PID-biblioteket förenklar beräkningen av värdena på P, I och D. LmotorController-biblioteket används för att styra två motorer med L298N-modulen. I2CDEV-biblioteket och MPU6050_6_Axis_motionApps20-biblioteket är utformat för att läsa data med MPU6050. Du kan ladda ner koden, inklusive bibliotek i detta förråd.
#Omfatta.
KP, KI, KD-värden kan fungera eller arbeta. Om de inte gör det, följ de ovan beskrivna stegen. Observera att lutning i koden är inställd på 173 grader. Du kan ändra detta värde om du vill, men notera att det här är en lutningsvinkel som bör stödjas av en robot. Dessutom, om dina motorer är för snabba, kan du justera värdena för MotorSpeedFactorleft och MotorSpeedFactorright.
Det är allt. Vi ses.
Men med inköp av en färdig fullfjädrad robot på grundval av denna avgift. För barn av grundskola eller förskoleålder är sådana färdiga Arduino-projekt ännu bättre, eftersom "Unexplus" avgiften ser tråkig ut. Ett sådant sätt Lämplig för dem som de elektriska scheman inte är särskilt lockade.
Genom att köpa robotens arbetsmodell, d.v.s. Egentligen redo högteknologisk leksak, du kan vakna intresse för oberoende design och skapa robotar. Efter att ha spelat i en sådan leksak och deråt i hur det fungerar kan du fortsätta att förbättra modellen, demontera allt i delar och börja samla nya projekt på Arduino, med hjälp av en plattform som släpps, kör och sensorer. Öppenheten på Arduino-plattformen gör att du kan skapa nya leksaker från samma komponentdelar.
Vi erbjuder en liten översyn av de färdiga robotarna på Arduino-styrelsen.
Maskin på Arduino, styrd via Bluetooth
Maskinstyrd via Bluetooth, värt lite mindre än $ 100. Kommer i demonterad form. Förutom huset, motorn, hjul, litiumbatterier och laddare, mottar vi Arduino UNO328-kortet, en motorstyrenhet, en Bluetooth-adapter, fjärrkontroll och så vidare.
Video med detta och en mer robot:
En mer detaljerad beskrivning av leksaken och möjligheten att köpa på webbplatsen för online-butiken DealExtreme.
Arduino Robot Turtle
Kit för montering av robotsköldpadda värt ca $ 90. Det finns inte tillräckligt med skal, allt som är nödvändigt för livet för den här hjälten, komplett: Arduino Uno, servo-enheter, sensorer, spårningsmoduler, IR-mottagare och fjärrkontroll, batteri.
En sköldpadda kan köpas på DealExtreme, en liknande billigare robot på AliExpress.
Crawler Machine på Arduino, hanterad från mobiltelefon
Crawler, styrd av Bluetooth med mobiltelefon, värt $ 94. Förutom Caterpillar-databasen får vi Arduino Uno Board och Extension Board, Bluetooth-avgift, batteri och laddare.
Den spårade bilen kan också köpas på DealExtreme hemsida, det finns en detaljerad beskrivning. Kanske mer intressant järn Arduino-tank på aliexpress
Arduino bil som passerar labyrinter
Bil som passerar labyrinter, värt $ 83. Förutom motorer, Arduino Uno-kort och andra nödvändiga fitnessmoduler och hinderkopplingsmoduler.
Klarrobot eller robotram
Förutom användningen av färdiga kit för att skapa arduino-robotar kan du köpa en separat ram (kropp) på roboten - det kan vara en plattform på hjul eller caterpillage, humanoid, spindel och andra modeller. I det här fallet måste fyllningen av roboten göra det själv. En översikt över sådana byggnader ges i vårt.
Var annars köpa färdiga robotar
I granskningen valde vi det billigaste och intressanta i vår åsikt färdiga Arduino-robotar från kinesiska nätbutiker. Om det inte finns någon tid att vänta på paketet från Kina - ett stort urval av färdiga robotar i nätbutiker Amperka och Tessy. Låga priser och snabb leverans erbjuder online-butik Robstore. Lista över rekommenderade butiker.
Kanske är du också intresserad av våra projektrecensioner på Arduino:
Utbildning Arduino.
Vet inte var du ska börja lära dig arduino? Tänk att du är närmare - församlingen av dina egna enkla modeller och gradvis deras komplikationer eller bekanta med mer komplexa, men färdiga lösningar?
Lite om roboten. Först och främst var projektet det billigaste. Korps skapade utan beräkningar och balansering, huvudbehovet för kroppen är minimala dimensioner. Så låt oss börja samla denna robot.
Lista över delar:
1. En uppsättning komponenter i huset och en tass från plexiglas 1,5 mm.
2. Arduino Mega eller Uno (används mega) - 1 st.
3. Micro Servos (Begagnade TowerPro SG90) - 8 st.
4. Ultrasonic Range Finder HC-SR04 - 1 st.
5. Batterisstorlek 18560, 3.7V (Begagnad Trustfire 2400 mAh) - 2 st.
6. Batterihållare av storlek 18560 (en förmedlad behållare används - förpackning) - 1 st.
7. Rack för ett tryckt kretskort på 25 mm. (Dessa ställen används) - 4 st.
8. En del av dumpningskortet.
9. WIRES-JUMPER.
10. Skruva DIN 7985 m2, 8 mm. - 18 st.
11. NUT DIN 934 m2 - 18 st
Z-Robodog Robotmontering:
1. Robotskrovet är tillverkat av en transparent plexiglas med en tjocklek av 1,5 mm. Alla delar skärs av en laser genom att dra i CorelDRAW-programmet:
2. Kläm fast fallet med andra lim. Styrkan i det limmade skrovet blir tillräckligt. Vid montering, ta hänsyn till hålens läge på bottenkåpan (se bilder) och bättre bifoga en avgift och se till att allt sammanfaller. Sidoväggar är fäst så att hålen för ledningarna är närmare bakväggen. En bredare öppning på bakväggen är avsedd för USB-ledningar, anser detta vid montering.
3. Markera och borra hål (2 mm borr.). Säkra servostyrningarna i fallet med hjälp av bultar och muttrar (objekt 10, 11 från listan). Axlarna på de främre servo-enheterna måste vara närmare framväggen. Bakre servoaxlar närmare bakväggen.
4.1. Samla tassar. Ta de övre delarna av tassan (med två hål). Posta mitten av delen. Att ersätta gungning av servos, markera fästplatserna med skruvar och borrhål (1,5 mm borr). Säkra de rockande sakerna så att skruvarna på skruvarna var från landningsområdena. Gungskor fäster från olika sidor och säten för axlar som är i motsatt riktning.
4,2. Markera och borra hål för montering av servostyrningar (2 mm borr). Axlar av fasta servostyrningar måste vara närmare den smala kanten av tassen.
4,3. Så att tassarna inte släpper närmare dem till exempel gummi. Men pastens framsida bör inte fastna, med stegen, hunden kan engagera och hålla fast. Jag klistrade på remsor av en liputmatta gjord av bil.
5. Markera och borra hål för fastsättning av ultraljudsfallet (2 mm borr). Installera mätaren, måste kontakternas ben riktas uppåt.
6. Montera batterihållaren så att den i det fall är beläget i mitten. Säkra Arduino-kortet och anslut alla komponenter. För kraftförgrening användes en del av dumpavgiften.
Konfigurera och starta Robot Z-Robodog:
I detta skede måste du självständigt installera tassarna så att du kan kalibrera stegen. Det största problemet i knapparna, som är fäst på axlarna endast i vissa positioner. Och även servo-enheterna kan skilja sig från arbetsgrader.
Så här ser mina hunds hundar på de extrema punkterna i servo-vinklarna (variablerna ZS1, ZS2, ZS3, etc.). Försök att sätta tassarna som på bilden. Visuellt tassar bör vara i samma positioner.
I huvudstället kan du också ställa in tassarna. Efter det, glöm inte att fästa gungstolarna till servos av servo-enheter.
Z-Robodog Software Del:
Koden är väldigt enkel, kommentarer läggs till överallt. Alla rörelser är i matrisen, för att inte bli förvirrad i antal använde jag variabler för varje servo. Till exempel S1-servo 1, S2-servo 2 och så vidare. För att förenkla förståelsen och erbjuda dig detta system.
I diagrammet är tassarna numrerade, varje del av tassen som är associerad med servoen som rör den. Även för varje tass anger rörelsens riktningar, tecknen plus och minus indikerar var tassen kommer att röra sig med ökande eller minskning i vinkeln. De initiala vinklarna är valda hörn av huvudstativet (S1, S2, S3, etc.). Om du till exempel behöver dra ut den 2: a tassen måste du öka vinkeln S3 och S4, i den matris som den kommer att se ut så här (S1, S2, S3 + 100, S4 + 50, S5, S6, S7, S8 ). Här är en komplett skiss. Koden skrevs på grund av min kunskap, låt mig veta om jag valde fel sätt att genomföra.
Video:
Skiss i arkivet: Du har inte tillgång till att ladda ner filer från vår server.