DIY Segway. DIY Segway Collection av elektroniska delar

Numera blir en liten självgående plattform med två hjul, den så kallade Segway, som uppfanns av Dean Kamen, allt mer populär. När han märkte svårigheten som en rullstolsanvändare hade när han gick ut på en trottoar, såg han en möjlighet att skapa ett fordon som kunde hjälpa människor att ta sig runt utan större ansträngning. Kamen omsatte sin idé om att skapa en självbalanserande plattform i praktiken. Den första modellen testades 2001 och det var ett fordon med knappar på handtaget. Den var designad för personer med funktionshinder och gjorde det möjligt för dem att röra sig självständigt även i ojämn terräng. Den nya modellen blev känd som "Segway RT", och tillät redan styrning genom att luta spaken åt vänster eller höger. 2004 började den säljas i Europa och Asien. Pris på de mest avancerade moderna modeller, till exempel Segway PTi2 - cirka $5 000. I nyligen Kinesiska och japanska företag skapar enheter med olika modifieringar och innovativ design. Vissa tillverkar till och med liknande fordon med bara ett hjul, men låt oss titta på den klassiska Segwayen.


Segway består av en plattform och två hjul placerade på tvären, drivna av två elmotorer. Systemet i sig stabiliseras av en komplex elektronisk krets som styr motorerna, med hänsyn till inte bara förarens lutning utan också tillståndet fordon, vilket gör att den alltid kan förbli i en vertikal, stabil position. Föraren, som står på plattformen, kontrollerar hastigheten genom att helt enkelt föra handtaget framåt eller bakåt, och sväng vid lutning åt höger eller vänster. Styrkortet övervakar signaler från lämpliga rörelse- och orienteringssensorer (liknande de som låter smartphones ändra skärmorientering) för att hjälpa den inbyggda mikroprocessorn att orientera plattformen korrekt. Huvudhemlighet Segway är inte så mycket i den elektromekaniska delen, utan i koden som tar hänsyn till rörelsens fysik med betydande matematisk noggrannhet i databehandling och beteendeförutsägelse.

Segwayen är utrustad med två borstlösa elmotorer tillverkade av en neodym-järn-bor-legering, som kan utveckla en effekt på upp till 2 kW, tack vare ett litium-polymerbatteri.

Segway delar

För att skapa en Segway behöver du två växelmotorer med hjul, ett batteri, en elektronisk krets, en plattform och en ratt.

Motoreffekten för billiga modeller är cirka 250W, vilket ger hastigheter på upp till 15 km/h, med relativt låg strömförbrukning. De kan inte snurra hjulen direkt, eftersom den höga hastigheten hos dessa motorer inte tillåter dem att få den nödvändiga dragkraften. Liknande vad som händer när du använder växlarna på din cykel: genom att öka utväxlingen kommer du att tappa fart men öka kraften som appliceras på pedalen.

Plattformen är placerad under motoraxeln. Batteriet, vars vikt är ganska hög, är också placerat under fotstödet i ett symmetriskt läge, vilket garanterar att även utan förare ombord förblir Segway i upprätt läge. Dessutom kommer den interna mekaniska stabiliteten att underlättas av den elektroniska stabilitetskontrollenheten, som är fullt aktiv när föraren är närvarande. Närvaron av en person på plattformen höjer tyngdpunkten över hjulaxeln, vilket gör systemet instabilt - detta kommer redan att kompenseras av elektronikkortet.

I princip kan du göra en sådan sak själv genom att köpa den nödvändiga elektronikenheten på en kinesisk webbplats (de är till rea). Alla delar monteras med skruvar och muttrar (ej skruvar). Särskild uppmärksamhet Försiktighet måste iakttas för att säkerställa korrekt kedjespänning. Batterierna säkras med U-formade klämmor med små gummipackningar för att säkerställa erforderligt tryck. Det rekommenderas att lägga till dubbelhäftande tejp mellan batteriet och plattformen så att det inte glider. Manöverpanelen ska sättas in mellan två batterier och säkras med speciella distanser.

Det kanske finns en kontrollspak eller inte - trots allt är Segway-modeller utan den (mini-Segway) nu populära. I allmänhet är saken intressant och inte särskilt dyr, eftersom enligt information från vänner är grossistpriset i Kina bara 100 $.

Hoverboard inuti

Huvuddetaljer

Vad består en hoverboard av? Om man tittar utifrån är en hoverboard det intressant apparat. Den första är en arbetsplattform eller bräda. Det är på detta som en person står och försöker bibehålla balansen, styr, rider eller faller. Det finns två hjul på sidorna av plattformen, de är det som ger oss möjlighet att åka och röra oss framåt eller bakåt.

Låt oss först titta på plattformen. Arbetsplattformen är uppdelad i två delar, höger och vänster. Precis rätt för höger och vänster fötter. Detta gjordes så att det var möjligt att svänga höger eller vänster, bara genom att trycka på tån på dessa plattformar.

Hur fungerar en hoverboard?

Mini Segway enhet

Hjul

Det finns två hjul på sidorna. Vanligtvis finns hoverboards i 4 typer, och de skiljer sig åt i klass och hjulstorlek. Den första klassen av hoverboards är en barnhoverboard med hjul med en diameter på 4,5 tum. Liten storlek hjul gör hoverboarden mycket obekväm och oframkomlig på vissa delar av vägen.

Nästa klass är 6,5-tums hoverboard. Den har redan en större hjuldiameter, men är fortfarande avsedd endast för att köra på plana ytor. 8-tums hoverboarden är den gyllene medelvägen bland alla hoverboards. Det har han optimal storlek hjul som kan färdas på nästan vilken väg som helst.

Och den största är SUV:n av alla mini-Segways - 10-tums hoverboarden. Detta är en modell som har intressant funktion, förutom stora hjul har dessa hjul ett kammarsystem. Det vill säga att hjulen är uppblåsbara, de har en mjukare gång och sådana hoverboards är mer slitstarka än mindre prototyper.

Ram

Kroppen på alla hoverboards är gjord av olika material, men med samma funktion. Överallt täcker huset hjulen och skyddar dem från stänk, smuts, vatten, snö och damm. Hoverboards med små hjul 4,5 och 6 är vanligtvis gjorda av vanlig plast. Eftersom dessa modeller är designade för att köra på en plan väg, och inte utvecklar sådana hög hastighet, då beslutade ingenjörerna att inte installera dyr plast och därmed inte höja priset på hoverboarden.

För hoverboards med 8-tums hjul är karosserna gjorda av olika material, både av enkel plast och av kol, slagtålig magnesiumplast. Sådan plast tål nästan vilken som helst fysisk påverkan och blåser. Kol är till exempel också ett lättviktsmaterial, vilket minskar belastningen på elmotorer och minskar batteriets urladdningshastighet.

Motorer

När du tar bort kåpan bör du se en elmotor på sidorna närmare hjulet. Elmotorer är annan kraft. Genomsnittet bland alla mini-Segways är 700 watt på båda hjulen. Eller 350 watt per hjul. Faktum är att hoverboards elektriska motorer fungerar oberoende av varandra. Ett hjul kan röra sig med en hastighet och det andra i en annan, eller så kan de röra sig i olika riktningar, det ena bakåt, det andra framåt. Detta system ger således hoverboarden styrbarhet.

Det blir mer känsligt för svängar hög hastighet. Du kan även vända dig 360 grader. Ju högre motoreffekt, desto högre belastning och desto högre hastighet, men inte alltid. Du måste förstå att ju högre massa lasten på plattformen är, desto lägre hastighet och desto snabbare laddas batteriet ur. Därför är hoverboards med kraftfulla motorer dyrare.

Balanseringssystem

Balanseringssystemet består av och innehåller en hel del komponenter. Först och främst är dessa två gyroskopiska sensorer, som är placerade på höger och vänster sida av plattformen. Om du tar bort kåpan kan du se två hjälpbrädor det är till dem som de gyroskopiska sensorerna är anslutna. Hjälpkort hjälper till att bearbeta information och skicka den till processorn.

Längre till höger kan du se huvudkortet, det är här 32-bitarsprocessorn finns och all kontroll och beräkningar utförs. Det finns också ett program som reagerar på varje förändring i plattformen till höger eller vänster.

Om plattformen lutar framåt skickar processorn, efter att ha bearbetat informationen, en signal till elmotorer som fysiskt håller kortet i ett plant läge. Men om plattformen lutar mer med ett visst tryck, börjar hjulet genast röra sig framåt eller bakåt.

Det är absolut nödvändigt att komma ihåg att alla nuvarande hoverboards måste ha två extrakort för gyroskopiska sensorer och ett huvudkort där processorn är placerad. Äldre modeller kan ha tvåkortssystem men sedan hösten 2015 gjordes en ändring av standarden och nu är alla hoverboards och mini-Segways gjorda med 3 brädor.

I Kinesiska förfalskningar eller hoverboards av låg kvalitet, det kan finnas en bräda, den huvudsakliga. Tyvärr har en sådan mini-Segway dålig prestanda i förvaltningen. Kan vibrera eller tippa över föraren. Och därefter kan hela systemet misslyckas helt.

Schema inre struktur Att styra en hoverboard är inte så svårt som det verkar. Hela systemet är utformat för att reagera så snabbt som möjligt på plattformens beteende. Beräkningen sker på en bråkdel av en sekund och med otrolig noggrannhet.

Batteri

Hoverboardens strömförsörjningssystem drivs av två eller flera batterier. I standard billiga modeller Vanligtvis installerar de ett batteri med en kapacitet på 4400 mAh. Batteriet ansvarar för driften av hela systemet som helhet och förser det med elektricitet, så batteriet måste vara av hög kvalitet och märkt. Vanligtvis används två märken av batterier - Samsung och LG.

Batterier skiljer sig också från klass. Det finns lågnivåbatterier av klasserna 1C, 2C. Sådana batterier installeras vanligtvis på hoverboards med 4,5 och 6,5 tums hjul. Allt av samma anledning, eftersom dessa hoverboards är designade för släta vägar, slät asfalt, marmor eller golv.

Hoverboards med 8-tumshjul använder vanligtvis medelklass 3C-batterier, detta är en mer pålitlig batterimodell. Den stängs inte av vid ett plötsligt stopp eller när den träffar en trottoarkant eller ett hål.

Storhjuliga 10-tumsmodeller har vanligtvis 5C-klassbatterier. Denna hoverboard kan köra på nästan alla vägar, mark, pölar eller gropar. Därför måste batteriet vara mer pålitligt.

Grundprincipen för hoverboarden är att upprätthålla balansen. På tung vikt Hoverboard-föraren behöver mer el för att manövrera och röra sig.

Andra

Många hoverboards har även ett Bluetooth-system och högtalare. Med den kan du lyssna på din favoritmusik och åka med vänner. Men detta system gör det också möjligt att ansluta din smartphone till hoverboarden och övervaka ditt fordons skick. Du kan övervaka din medelhastighet och se hur långt du har tillryggalagt. Ställ in högsta tillåtna hastighet och mycket mer.

Många fler modeller har bakgrundsbelysning, den lyser upp din väg i mörkret och kan även blinka starkt i takt med musiken. Men du måste komma ihåg att musik och belysning dränerar batteriet mycket. Många människor stänger av bakgrundsbelysningen helt för att öka energireserven.

Slutsats

Hoverboarden är designad för att vara kompakt och lätt, men ändå snabb, kraftfull och hållbar. Det viktigaste är att köpa en hoverboard från pålitliga leverantörer som har all nödvändig dokumentation så att du inte behöver demontera den efter en misslyckad resa.

Om du tror att det är omöjligt att göra en hoverboard eller mini-Segway hemma med dina egna händer och styrka, har du mycket fel. Märkligt nog finns det många filmer på Internet där många hantverkare gör sin egen hoverboard. För vissa visar det sig vara väldigt hemlagad, men det finns också de som verkligen kunde komma närmare själva skapelsetekniken och återge en verkligt intressant och högkvalitativ sak. Så är det möjligt att göra en hoverboard med dina egna händer? Adrian Kundert, ingenjör och bara en bra person, kommer att berätta om detta.

Vad är en hoverboard?

Hur man gör en hoverboard med egna händer? För att förstå hur man gör en hemmagjord hoverboard måste du först förstå vad en hoverboard är, vad den består av och vad som behövs för att skapa den intressanta medel rörelse. En hoverboard är ett självbalanserat fordon, vars funktionsprincip är baserad på ett system av gyroskopiska sensorer och intern teknik upprätthålla balansen på arbetsplattformen. Det vill säga när vi sätter på hoverboarden slås även balanseringssystemet på. När en person står på en hoverboard börjar plattformens position att ändras av gyroskopiska sensorer.

Dessa sensorer avläser alla förändringar i position i förhållande till jordytan eller punkten från vilken gravitationspåverkan kommer. Efter läsning skickas informationen till hjälptavlor, som finns på båda sidor av plattformen. Eftersom själva sensorerna och elmotorerna fungerar oberoende av varandra kommer vi i framtiden att behöva två elmotorer. Från hjälpkorten går informationen i bearbetad form redan till moderkortet med en mikroprocessor. Där genomförs balanshållningsprogrammet redan med nödvändig noggrannhet.

Det vill säga, om plattformen lutar framåt med ungefär ett par grader, så får motorerna en signal att röra sig i motsatt riktning och plattformen planas. Tiltningen åt andra hållet utförs också. Om hoverboarden lutar i högre grad förstår programmet direkt att det finns ett kommando för att flytta elmotorerna framåt eller bakåt. Om hoverboarden lutar mer än 45 grader stängs motorerna och själva hoverboarden av.

Hoverboarden består av en kropp, en stål- eller metallbas, på vilken all elektronik kommer att fästas. Sedan finns det två elmotorer med tillräckligt med effekt för att kunna köra under en personvikt på upp till 80-90 kg. Nästa kommer moderkort med en processor och två hjälpkort, på vilka de gyroskopiska sensorerna är placerade. Och naturligtvis ett batteri och två hjul med samma diameter. Hur gör man en hoverboard? För att lösa det här problemet måste vi skaffa vissa designdetaljer för själva hoverboarden.

Vad behöver vi?

Hur man gör en hoverboard med egna händer? Det första och viktigaste du behöver är två elmotor, med kraften att bära vikten av en vuxen. Den genomsnittliga effekten för fabriksmodeller är 350 watt, så vi kommer att försöka hitta motorer med denna effekt.

Därefter måste du förstås hitta två identiska hjul, ungefär 10-12 tum. Det är bättre att ha mer, eftersom vi kommer att ha mycket elektronik. Så att längdåkningsförmågan är högre och avståndet mellan plattformen och marken är på erforderlig nivå.

Två batterier, bly-syra, du behöver välja en märkeffekt på minst 4400 mAh, och gärna mer. Eftersom vi inte kommer att göra metallstruktur, men den kommer att väga mer än den ursprungliga mini-segway eller hoverboard.

Produktion och process

Hur gör man en hoverboard som är kraftfull och så att den kan hålla balansen när man åker? Först måste vi göra en plan för vilken typ av fordon vi kommer att behöva. Vi behöver göra ett ganska kraftfullt fordon med stora hjul och bra manövrerbarhet på olika vägar. Minimivärdet för kontinuerlig körning bör vara 1-1,5 timmar. Vi kommer att spendera cirka 500 euro. Låt oss installera ett trådlöst kontrollsystem för vår hoverboard. Vi kommer att installera en läsenhet för problem och fel, all information kommer att gå till SD-kortet.

Hoverboard diagram

I diagrammet ovan kan du tydligt se allt: elmotorer, batterier etc. Först måste du välja exakt den mikrokontroller som ska utföra kontrollen. Av alla Arduino-mikrokontroller på marknaden kommer vi att välja UnoNano, och ATmega 328 kommer att fungera som ett ytterligare informationsbearbetningschip.

Men hur gör man en hoverboard säker? Vi kommer att ha två batterier kopplade i serie, så vi får den spänning som krävs. För elmotorer är en dubbelbryggkrets precis vad som behövs. En redo-knapp kommer att installeras, när den trycks in kommer ström till motorerna. När du trycker på den här knappen stängs motorerna och själva hoverboarden av. Detta är nödvändigt för säker körning av föraren själv och vårt fordon.

Arduino-mikrokontrollern kommer att köras med cirka 38400 baud, med seriell kommunikation med XBee-kretsen. Vi kommer att använda två InvenSense MPU 6050 gyrosensorer baserade på GY-521-moduler. De kommer i sin tur att läsa information om plattformens position. Dessa sensorer är tillräckligt exakta för att göra en mini Segway. Dessa sensorer kommer att placeras på ytterligare två extra kort som kommer att utföra den primära behandlingen.

Vi kommer att använda I2C-bussen, den har tillräckligt genomströmning för att snabbt kommunicera med en Arduino-mikrokontroller. Den gyroskopiska sensorn med adress 0x68 har en ipå en gång var 15:e ms. Den andra adresssensorn 0x68 fungerar direkt från mikrokontrollern. Vi har också en lastbrytare som sätter hoverboarden i balansläge när plattformen är i ett plant läge. I detta läge förblir hoverboarden på plats.

Tre trädelar, där våra hjul och elmotorer kommer att sitta. Rattstången är gjord av en vanlig träpinne och kommer att fästas på framsidan av själva hoverboarden. Här kan du ta vilken pinne som helst, även ett mopphandtag. Det är nödvändigt att ta hänsyn till det faktum att batterier och andra kretsar kommer att producera tryck på plattformen och därmed kommer balanseringen att omkonfigureras något, just i den del där det blir mer tryck.

Motorerna måste vara jämnt fördelade på höger och vänster sida av plattformen, och batteriet ska vara maximalt i mitten i en speciell låda. Vi fäster styrstolpen på de vanliga finterna och fäster klarknappen på toppen av pinnen. Det vill säga om något går fel och knappen trycks in kommer hoverboarden att stängas av. I framtiden kan den här knappen göras om till en fotdel eller justeras till en viss lutning på själva plattformen, men det kommer vi inte att göra i nuläget.

Den interna kretsen och lödningen av alla ledningar utförs enligt samma schema. Därefter måste vi ansluta två gyroskopiska sensorer till vår mikrokontroller, med hjälp av en bryggkrets med en motor, enligt denna tabell.

Balanseringssensorerna ska installeras parallellt med marken eller längs själva plattformen, men sensorerna för höger- och vänstersvängarna ska installeras vinkelrätt mot de gyroskopiska sensorerna.

Konfigurera sensorer

Därefter konfigurerar vi mikrokontrollern och laddar ner källkoden. Därefter måste du kontrollera det korrekta förhållandet mellan de gyroskopiska sensorerna och rotationssensorerna. Använd Arduino Terminal-programmet för att programmera och konfigurera hoverboarden. Det är nödvändigt att konfigurera PID-balansregulatorn. Faktum är att du kan välja motorer med olika kraft och egenskaper, för dem kommer inställningen att vara annorlunda.

Det finns flera alternativ i detta program. Den första huvudparameter, detta är Kp-parametern, den är ansvarig för balanseringen. Öka först denna indikator för att göra hoverboarden instabil och minska sedan indikatorn till önskad parameter.

Nästa parameter är Ki-parametern, den är ansvarig för accelerationen av hoverboarden. När lutningsvinkeln minskar, minskar eller ökar hastigheten med backverkan. och den sista parametern är Kd-parametern, den återställer själva plattformen till ett plant läge och sätter motorerna i hållläge. I detta läge står hoverboarden helt enkelt stilla.

Därefter slår du på strömknappen på Arduino-mikrokontrollern och hoverboarden går in i standby-läge. Efter att du står på själva hoverboarden står du med fötterna på tryckknappen, så att hoverboarden går in i "stationärt" läge. Balanssensorer slås på och när lutningsvinkeln ändras rör sig hoverboarden framåt eller bakåt. Vid eventuella haverier kan du enkelt reparera hoverboarden själv.

Är det möjligt att göra en Segway med dina egna händer? Hur svårt är det och vilka delar krävs? Kommer det att finnas hemgjorda apparater utföra alla samma funktioner som en fabrikstillverkad? En massa liknande frågor uppstår i huvudet på en person som bestämmer sig för att bygga den med sina egna händer. Svaret på den första frågan kommer att vara enkelt och tydligt: ​​alla som har åtminstone lite förståelse för elektronik, fysik och mekanik kan göra en "elektrisk skoter" själva. Dessutom kommer enheten inte att fungera sämre än en som produceras på en fabriksmaskin.

Hur man gör en Segway med egna händer?

Om du tittar noga på hoverboarden kan du se en ganska enkel struktur i den: det är bara en skoter utrustad med ett automatiskt balanseringssystem. Det finns 2 hjul på båda sidor av plattformen. För att utföra effektiv balansering är Segway-designerna utrustade med ett indikatorstabiliseringssystem. Pulser som kommer från lutningssensorerna transporteras till mikroprocessorer, som i sin tur producerar elektriska signaler. Som ett resultat rör sig hoverboarden i en given riktning.

För att göra en Segway med dina egna händer behöver du följande element:

  • 2 hjul;
  • 2 motorer;
  • ratt;
  • aluminiumblock;
  • stödstål eller aluminiumrör;
  • 2 blybatterier;
  • aluminiumplatta;
  • motstånd;
  • nödbroms;
  • stålaxel 1,2 cm;
  • PCB;
  • kondensatorer;
  • LiPo batteri;
  • Grindförare;
  • LED-indikatorer;
  • 3 x ATmtga168;
  • spänningsregulator;
  • ADXRS614;
  • 8 Mosfets;
  • två fjädrar;
  • och ADXL203.

Bland de listade föremålen finns både mekaniska delar och elektroniska element och annan utrustning.

Segway monteringsprocedur

Att montera en Segway med dina egna händer är inte så svårt som det verkar vid första anblicken. Om du har alla nödvändiga komponenter tar processen väldigt lite tid.

Samling av mekaniska delar

  1. Motorer, hjul, växlar och batterier går att låna från kinesiska skotrar och det är inga som helst problem med att hitta en motor.
  2. Den stora växeln på ratten tar emot transmissionen från den lilla växeln på motorn.
  3. Växeln på hjulet (12 tum) är frigående - detta kräver vissa modifieringar för att låta de roterande elementen arbeta i båda riktningarna.
  4. En fast axel, fäst med tre aluminiumblock (som kan fästas med 5 mm ställskruvar), utgör basen på plattformen.
  5. Med hjälp av SolidWorks-programmet måste du rita en ritning av en del som gör att hoverboarden kan vända sig åt sidorna medan du lutar överkroppen. Därefter måste delen vändas på en CNC-maskin. Maskinen använde programmet CAMBAM, som även användes vid tillverkningen av lådan till nödbromsenheten.
  6. Styret är fäst i ett 2,5 cm ihåligt stålrör.
  7. För att säkerställa att rattstången alltid är placerad i mitten, och den omvända dragkraften är mer intensiv, kan du använda ett par stålfjädrar.
  8. Ratten är utrustad med en speciell nödknapp kopplad till ett relä - detta gör att du kan minska motoreffekten.
  9. Motorströmkällor är 24 V-batterier.

Samling av elektroniska delar

För att montera en Segway med egna händer räcker det inte bara att fästa de mekaniska delarna. Elektronisk styrning är inte mindre viktig i en hoverboard, eftersom det är en ganska viktig komponent i enheten.

  1. Ett kretskort med en beräkningsfunktion samlar in information från sensorer - gyroskop, accelerometer, potentiometer och ställer sedan in rotationsriktningen.
  2. Utan ATmtga168-processorn kommer skotern inte att kunna fungera normalt. Anslutningen till datorn görs via Bluetooth och RN-41.
  3. Med hjälp av två H-bryggor omvandlas styrpulser från baskortet till motorernas kraft. Varje bro är utrustad med ATmtga168, korten kommunicerar med varandra via UART.
  4. All elektronik drivs av ett separat batteri.
  5. För att snabbt komma åt batterierna, samt program grundavgift och ändra parametrarna för kontrollslingorna, du måste göra en liten låda med kontakter, utrusta huset med en trimpotentiometer på toppen och även utrusta den med en elektronikströmbrytare.

Segway programvara

Hur gör man en Segway med egna händer så att den definitivt fungerar? Det stämmer - installera programvaran (eller programvaran). Här är de nödvändiga stegen för att slutföra denna uppgift:

  1. Mikrokontrollerns programvara inkluderar ett filter för accelerometern och gyroskopet och PD-kontrollslingan.
  2. Kalman och komplementfilter kommer att göra jobbet perfekt.
  3. Skriv applikationer med Java-programmeringsspråket - detta gör att du kan se batteriladdningsnivån, alla sensoravläsningar och kontrollparametrar.

Det är kanske allt som krävs av en person som bestämmer sig för att göra en Segway på egen hand. Att förstå ämnet och processen, såväl som de nödvändiga komponenterna, gör att du kan bygga en utmärkt hoverboard hemma.

Låt oss prata om hur du kan använda Arduino för att skapa en robot som balanserar som en Segway.

Segway från engelska. Segway är ett tvåhjuligt stående fordon utrustad med en elektrisk drivning. De kallas även hoverboards eller elektriska skotrar.

Har du någonsin undrat hur en Segway fungerar? I den här handledningen kommer vi att försöka visa dig hur man gör en Arduino-robot som balanserar sig precis som en Segway.

För att balansera roboten måste motorerna motstå att roboten faller. Denna åtgärd kräver feedback och korrigerande element. Återkopplingselement - som ger både acceleration och rotation i alla tre axlarna (). Arduino använder detta för att veta robotens nuvarande orientering. Det korrigerande elementet är kombinationen av motor och hjul.

Slutresultatet borde bli ungefär så här:

Robotdiagram

L298N Motordrivrutinsmodul:

Växelmotor DC med hjul:

En självbalanserande robot är i grunden en inverterad pendel. Det kan vara bättre balanserat om massans centrum är högre i förhållande till hjulaxlarna. Ett högre masscentrum innebär ett högre tröghetsmoment hos massan, vilket motsvarar en lägre vinkelacceleration (långsammare fall). Det är därför vi lägger batteripaketet ovanpå. Men höjden på roboten valdes baserat på tillgången på material :)

Den färdiga versionen av den självbalanserande roboten kan ses i figuren ovan. Överst finns sex Ni-Cd-batterier för ström kretskort. Mellan motorerna används ett 9-volts batteri för motorföraren.

Teori

I kontrollteorin kräver det att hålla någon variabel (i detta fall robotens position). speciell styrenhet, kallad PID (proportionell integralderivata). Var och en av dessa parametrar har en "förstärkning", vanligtvis kallad Kp, Ki och Kd. PID ger korrigering mellan det önskade värdet (eller ingången) och det faktiska värdet (eller utgången). Skillnaden mellan input och output kallas "fel".

PID-regulatorn reducerar felet till minsta möjliga värde genom att kontinuerligt justera utgången. I vår Arduino självbalanserande robot ställs ingången (som är den önskade lutningen i grader). programvara. MPU6050 läser av robotens nuvarande lutning och matar den till PID-algoritmen, som utför beräkningar för att styra motorn och hålla roboten upprätt.

PID kräver att Kp-, Ki- och Kd-värdena justeras 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. Istället kommer vi att justera PID-värdena. Så här gör du:

  1. Gör Kp, Ki och Kd lika med noll.
  2. Justera Kp. En för liten Kp gör att roboten faller eftersom korrigeringen inte räcker. För mycket Kp får roboten att gå vilt fram och tillbaka. En bra Kp kommer att få roboten att röra sig fram och tillbaka ganska mycket (eller svänga lite).
  3. När Kp är inställt, justera Kd. Ett bra Kd-värde kommer att minska svängningarna tills roboten blir nästan stabil. Dessutom kommer rätt Kd att hålla roboten även om den trycks.
  4. Slutligen, installera Ki. När den är påslagen kommer roboten att svänga även om Kp och Kd är inställda, men stabiliseras över tiden. Rätt betydelse Ki kommer att minska tiden som krävs för att stabilisera roboten.

Robotens beteende kan ses i videon nedan:

Arduino-kod för självbalanserande robot

Vi behövde fyra externa bibliotek för att skapa vår robot. PID-biblioteket förenklar beräkningen av P-, I- och D-värden. LMotorController-biblioteket används för att styra två motorer med L298N-modulen. I2Cdev-biblioteket och MPU6050_6_Axis_MotionApps20-biblioteket är designade för att läsa data från MPU6050. Du kan ladda ner koden, inklusive bibliotek, i det här arkivet.

#omfatta #omfatta #inkludera "I2Cdev.h" #inkludera "MPU6050_6Axis_MotionApps20.h" #if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE #inkludera "Wire.h" #endif #define MIN_ABS_SPEED 20 MPU6050 mpu; // MPU-kontroll/status vars bool dmpReady = false; // ställ in sant om DMP init lyckades uint8_t mpuIntStatus; // innehåller faktisk avbrottsstatusbyte från MPU uint8_t devStatus; // returnera status efter varje enhetsoperation (0 = framgång, !0 = fel) uint16_t packetSize; // förväntad DMP-paketstorlek (standard är 42 byte) uint16_t fifoCount; // antal av alla bytes för närvarande i FIFO uint8_t fifoBuffer; // FIFO-lagringsbuffert // orientering/rörelse vars Quaternion q; // quaternion container VectorFloat gravity; // gravity vector float ypr; //yaw/pitch/roll behållare och gravitationsvektor //PID dubbel originalbörvärde = 173; dubbelt börvärde = originalbörvärde; double movingAngleOffset = 0,1; dubbel ingång, utgång; //justera dessa värden för att passa din egen design dubbel Kp = 50; dubbel Kd = 1,4; dubbel Ki = 60; PID pid(&ingång, &utgång, &börvärde, Kp, Ki, Kd, ​​DIRECT); dubbel motorSpeedFactorLeft = 0,6; dubbel motorSpeedFactorRight = 0,5; //MOTORSTYRNING int ENA = 5; int INl = 6; int IN2 = 7; int IN3 = 8; int IN4 = 9; int ENB = 10; LMotorController motorController(ENA, IN1, IN2, ENB, IN3, IN4, motorSpeedFactorLeft, motorSpeedFactorRight); volatile bool mpuInterrupt = false; // indikerar om MPU-avbrottsstiftet har blivit högt void dmpDataReady() ( mpuInterrupt = true; ) void setup() ( // join I2C bus (I2Cdev-biblioteket gör inte detta automatiskt) #if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE Wire.begin( ); TWBR = 24; // 400kHz I2C klocka (200kHz om CPU är 8MHz) #elif I2CDEV_IMPLEMENTATION == I2CDEV_BUILTIN_FASTWIRE Fastwire::setup(400, true #endif mpu.initialize din egen /); , skalad för min känslighet mpu.setXGyroOffset(220 mpu.setYGyroOffset(-85); slå på DMP, nu när den är klar mpu.setDMPEnabled(true); // aktivera Arduino interrupt detectionInterrupt(0 , dmpDataReady, RISING); mpuIntStatus = mpu.getIntStatus(); // ställ in vår DMP Ready-flagga så loop()-funktionen vet att det är okej att använda den dmpReady = true; // få förväntad DMP-paketstorlek för senare jämförelse packetSize = mpu.dmpGetFIFOPacketSize(); //setup PID pid.SetMode(AUTOMATIC); pid.SetSampleTime(10); pid. SetOutputLimits(-255, 255); ) else ( // FEL! // 1 = initial minnesladdning misslyckades // 2 = DMP-konfigurationsuppdateringar misslyckades // (om den kommer att gå sönder kommer vanligtvis koden att vara 1) Serial.print(F("DMP-initiering misslyckades (kod ")); Serial.print(devStatus); Serial.println(F()") ) ) void loop() ( // om programmeringen misslyckades, försök inte göra någonting om (!dmpReady ) return; // vänta på MPU-avbrott eller extra paket tillgängliga medan (!mpuInterrupt && fifoCount< packetSize) { //no mpu data - performing PID calculations and output to motors pid.Compute(); motorController.move(output, MIN_ABS_SPEED); } // reset interrupt flag and get INT_STATUS byte mpuInterrupt = false; mpuIntStatus = mpu.getIntStatus(); // get current FIFO count fifoCount = mpu.getFIFOCount(); // check for overflow (this should never happen unless our code is too inefficient) if ((mpuIntStatus & 0x10) || fifoCount == 1024) { // reset so we can continue cleanly mpu.resetFIFO(); Serial.println(F("FIFO overflow!")); // otherwise, check for DMP data ready interrupt (this should happen frequently) } else if (mpuIntStatus & 0x02) { // wait for correct available data length, should be a VERY short wait while (fifoCount < packetSize) fifoCount = mpu.getFIFOCount(); // read a packet from FIFO mpu.getFIFOBytes(fifoBuffer, packetSize); // track FIFO count here in case there is >1 paket tillgängligt // (detta låter oss omedelbart läsa mer utan att vänta på ett avbrott) fifoCount -= packetSize; mpu.dmpGetQuaternion(&q, fifoBuffer); mpu.dmpGetGravity(&gravity, &q); mpu.dmpGetYawPitchRoll(ypr, &q, &gravity); input = ypr * 180/M_PI + 180; ))

Kp, Ki, Kd-värdena kanske fungerar eller inte. Om de inte gör det, följ stegen ovan. Observera att lutningen i koden är inställd på 173 grader. Du kan ändra detta värde om du vill, men observera att detta är lutningsvinkeln som roboten måste behålla. Om dina motorer är för snabba kan du dessutom justera värdena för motorSpeedFactorLeft och motorSpeedFactorRight.

Det var allt för nu. Vi ses.



Dela