Sadržaj:

Samobalansirajući robot: 6 koraka (sa slikama)
Samobalansirajući robot: 6 koraka (sa slikama)

Video: Samobalansirajući robot: 6 koraka (sa slikama)

Video: Samobalansirajući robot: 6 koraka (sa slikama)
Video: Team 0x27 Unicyclone - Preliminary Testing 2024, Novembar
Anonim
Samobalansirajući robot
Samobalansirajući robot

U ovom Instructable-u pokazat ćemo vam kako izgraditi samobalansirajućeg robota koji smo napravili kao školski projekt. Zasnovan je na nekim drugim robotima, poput nBot -a i drugog Instructable -a. Robotom se može upravljati sa Android pametnog telefona putem Bluetooth veze. Kako ovaj Instructable pokriva samo proces izgradnje, napisali smo i dokument koji pokriva tehničku pozadinu koda i elektroniku. Sadrži i veze do izvora koji su korišteni, pa ih možete pogledati ako dokument nije dovoljno opsežan za vas.

Da biste slijedili sve korake ovog projekta, trebat će vam neke vještine 3D ispisa ili neki drugi pametan način pričvršćivanja kotača na motore.

Korak 1: Zahtjevi

Zahtevi
Zahtevi
Zahtevi
Zahtevi
Zahtevi
Zahtevi

Robot je zasnovan na Martinezovoj upravljačkoj ploči bez četkica. Postoje neke male varijacije ove ploče, ali sve dok imate jednu s čipom ATmega328 i motorom L6234, trebali biste biti u redu. Ako tražite "Martinez ploča" na Google slikama, vidjet ćete da postoje neke ploče s lakim konektorom za IMU čip i/ili bateriju, umjesto zaglavlja iglica ili rupa. U posljednjem slučaju, dobro će vam doći ako naručite paket igala zaglavlja koje zatim možete lemiti u rupe.

Partlist

Neke stavke na ovoj listi sadrže veze do web trgovina.

  • Kontroler: Martinez BoardDX.com (također dolazi s IMU -om i nekim pinovima zaglavlja).
  • IMU: MPU6050
  • Baterija (450 mAh 3S LiPo baterija) Napomena: trebat će vam i 3S LiPo punjač eBay.com
  • 2x motor: Motor bez četkica 2208, KV100DX.com
  • Točkovi (možete ih nabaviti iz postojećih igračaka ili LEGO -a)
  • 6x M2 vijak 5 mm
  • 8x vijak M3 (dužina ovisi o materijalu za vašu vanjštinu, mora biti ekstra dugačak)
  • Bluetooth čip HC-05 (obavezno nabavite jedan sa priključenom pločom sa serijskim interfejsom, a ne samo goli čip) VAŽNO: Uvjerite se da čip ima pin označen sa KLJUČ.
  • Žice: ženski na ženski DuPontKupovina pakovanja od 20 žica bit će više nego dovoljna
  • Velcro traka
  • USB kabl za povezivanje kontrolera sa računarom
  • Opcionalno: zaglavlje pinsDX.com (možete ih izrezati ili razbiti na željenu dužinu)
  • Plastične podloške i odstojnici

Konačno, potrebno vam je malo akrila, drveta ili kartona popraćeno ljepilom ili trakom-da biste stvorili strukturu koja drži sve komponente.

Korak 2: Konfiguracija Bluetooth čipa

Konfiguracija Bluetooth čipa
Konfiguracija Bluetooth čipa

Kad se uhvatite svih dijelova, vrijeme je za konfiguraciju Bluetooth čipa. Trebat će vam USB kabel za povezivanje ploče za povezivanje s računarom, kao i Arduino IDE za komunikaciju sa komponentama.

Da biste to učinili, morate preuzeti datoteku:

HC-05_Serial_Interface.ino

Zatim slijedite ove korake:

  1. Povežite kontroler sa računarom pomoću USB kabla.
  2. Otvorite.ino datoteku s Arduino IDE -om.
  3. U IDE -u idite na Tools, Board i provjerite je li postavljeno na Arduino/Genuino Uno.
  4. Sada idite na Tools, Port i postavite ga na COM port na koji je kontroler povezan. Obično postoji samo jedan port. Ako ih ima više, provjerite Upravitelj uređaja (u sustavu Windows) da biste saznali koji je kontroler.
  5. Sada pritisnite dugme Upload u IDE -u i pričekajte da se upload završi. Zatim odspojite USB kabel s računara ili kontrolera.

Nakon što to učinite, povežite HC-05 pomoću DuPont kabela na sljedeći način:

Kontroler HC-05

KLJUČ +5V GND GND TXD RX RXD TX

Sada ponovo priključite USB kabel, zatim spojite VCC pin HC-05 na drugi +5V na kontroleru. LED dioda bi trebala treptati u intervalu od ~ 1 sekunde.

U Arduino IDE -u odaberite ispravan COM port, a zatim idite na Tools, Serial Monitor.

Opciju Kraj linije u Serijskom monitoru postavite na NL i CR. Postavite brzinu prijenosa na 38400. Sada možete koristiti serijski monitor za slanje naredbi za postavljanje na Bluetooth čip. Ovo su naredbe:

AT Proverite vezu

AT+NAME Dobivanje/postavljanje Bluetooth prikazanog imena AT+UART Dobivanje/postavljanje brzine prijenosa AT+ORGL Vraćanje tvorničkih postavki AT+PSWD Dobivanje/postavljanje Bluetooth lozinke

Da biste promijenili ime, lozinku i brzinu prijenosa Bluetooth uređaja, pošaljite sljedeće naredbe:

AT+NAME = "Naziv primjera"

AT+PSWD = "PassWord123" AT+UART = "230400, 1, 0"

Opcije Ime i Lozinka mogu se postaviti na sve što želite, samo svakako postavite brzinu prijenosa koristeći potpuno istu naredbu kao što je gore navedeno. Ovo ga postavlja na 230400 bauda, sa 1 stop bitom i bez pariteta. Nakon što ste sve postavili, ponovo spojite USB kabel (za izlaz iz načina postavljanja) i pokušajte upariti telefon s čipom. Ako sve radi, odspojite USB kabel i prijeđite na sljedeći korak.

Korak 3: Pričvršćivanje kotača na motore

Pričvršćivanje točkova na motore
Pričvršćivanje točkova na motore
Pričvršćivanje točkova na motore
Pričvršćivanje točkova na motore

Točkovi koji su korišteni u ovom projektu imaju nepoznato porijeklo (ležali su u ladici s puno drugih stvari). Kako bismo pričvrstili kotače na motore, 3D smo odštampali komad koji odgovara rupama za vijke na motorima. Komadići su pričvršćeni pomoću tri 5-milimetarska 2M vijka po motoru. Oba komada imaju iglu koja odgovara rupama u osovinama kotača.

Uključen je model SolidWorks. Vjerojatno ćete ga morati izmijeniti za svoje kotače ili pronaći drugo praktično rješenje za uklapanje kotača. Na primjer, mogli biste upotrijebiti Dremel da izrežete rupu iste veličine kao motor (ili malo manju kako biste je prilagodili), a zatim možete pritisnuti motor u kotač. Samo budite sigurni da nabavite odgovarajuće kotače za ovaj posao ako to planirate.

Korak 4: Kreiranje eksterijera

Kreiranje eksterijera
Kreiranje eksterijera

Za vanjsku uporabu korištena su dva komada drveta izrezana u isti oblik. Za početak smo označili opseg motora na donjem središtu komada. Zatim smo svaki ugao označili linijom od 45 stepeni, pazeći da ostavimo dovoljno prostora da motor sjedne u donji centar. Zatim smo spojili dva komada drveta i odrezali uglove. Da bismo dovršili stvari, brusili smo uglove kako bismo ih učinili manje oštrim i uklonili krhotine.

Sada je vrijeme za bušenje rupa za vijke i os koja izviruje iz stražnje strane motora. Ako drvene komade spojite zajedno tijekom bušenja, svaku rupu morate izbušiti samo jednom.

Da bismo stvorili raspored rupa za vijke, upotrijebili smo komad papira i stavili ga na stražnju stranu motora, a olovkom utisnuli rupe za vijke, ravno kroz papir. Komad papira s četiri rupe za vijke stavljen je na drvo kako bismo mogli označiti lokaciju rupa koje će se izbušiti. Za bušenje rupa upotrijebite bušilicu od 3,5 mm. Sada upotrijebite olovku i ravnalo da pronađete središte ovih rupa i stvorite rupu za os pomoću svrdla od 5 mm. Pričvrstite motore vijcima M3, ali jedan od vijaka sa širim razmakom ostavite izvan jednog motora.

Da bismo konektor motora i žicu unijeli u robota, također smo izbušili rupu od 8 mm malo iznad motora. Uvjerite se da ima dovoljno mjesta za savijanje žica bez previše naprezanja.

Važno je raditi što preciznije kako biste stvorili (gotovo) savršenu simetričnu vanjštinu

Korak 5: Montiranje komponenti

Uklapanje komponenti
Uklapanje komponenti

Označite okomitu središnju vodilicu na drvetu kako biste komponente mogli postaviti u središte. Sve možete pričvrstiti na drvo pomoću čičak trake. U našem smo robotu koristili male vijke i matice za pričvršćivanje ploče upravljača, ali možete koristiti i čičak traku (još je nismo imali u vrijeme kad smo priključili kontroler). Obavezno priključite USB kabel nakon što završite s izgradnjom.

Kontroler smo postavili u središte s USB priključkom prema dolje, tako da smo mogli priključiti kabel između kotača. Takođe ga možete usmjeriti na jednu od strana.

Postavite bateriju što je više moguće kako bi robot postao jako težak. Priključak za punjenje postavite i na lako dostupno mjesto blizu ruba.

Bluetooth čip

Spojite VCC pin Bluetooth čipa na +5V na kontroleru, a Bluetooth GND na GND kontrolera. TXD pin kontrolera ide na Bluetooth RX, a RXD pin na kontroleru ide na Bluetooth TX pin. Zatim samo zalijepite Bluetooth čip negdje na drvenu ploču pomoću čičak trake.

Motion Chip

Čip za kretanje ima dvije rupe za vijke, pa smo čip pričvrstili odstojnikom na takav način da središte čipa pada preko središta motora. Orijentacija nije bitna, jer se robot kalibrira prilikom pokretanja. Obavezno koristite plastičnu podlošku ispod glave vijka kako biste spriječili kratki spoj.

Zatim upotrijebite DuPont žice za spajanje pinova na kontroler. Svaki pin je na kontroleru označen isto kao i na čipu za kretanje, pa je njegovo povezivanje prilično razumljivo.

Prekidač

Priključivanje prekidača za napajanje je jednostavno. Uzeli smo jedan iz starog uređaja i odlepili ga s ploče. Da biste ga koristili kao prekidač za napajanje robota, povezujete pozitivnu žicu baterije s pinom (pod pretpostavkom da je tropolni prekidač) sa strane na kojoj želite da prekidač bude uključen. Zatim spojite središnji pin na pozitivni ulaz napajanja kontrolera. Lemili smo DuPont žice na prekidač, tako da sama baterija nije trajno pričvršćena na prekidač.

Spajanje strana

Sada znate lokaciju komponenti i imate dvije strane robota. Posljednji korak u izgradnji robota bit će povezivanje dviju strana jedna s drugom. koristili smo četiri seta od tri komada drva zalijepljeni zajedno i pričvrstili ga sa strane tako da je naš čip za kretanje bio na srednjoj osi robota. Treba reći da upotrijebljeni materijal, pod uvjetom da je dovoljno čvrst, nije previše bitan. Možete čak koristiti i težu vezu na vrhu kako biste još više povećali visinu središta mase. No, za razliku od okomitog položaja središta mase, vodoravni položaj središta mase treba držati što je više moguće iznad osi kotača, jer bi kodiranje koda za pokretni čip postalo prilično tvrdo da je vodoravno središte izmještene mase.

Sada ste spremni za učitavanje koda i podešavanje kontrolera.

Korak 6: Učitavanje i podešavanje koda

Za učitavanje koda potrebno vam je računalo sa Arduino IDE -om. Preuzmite.ino datoteku ispod i otvorite je pomoću Arduino IDE -a. Učitavanje na kontroler vrši se na isti način kao što ste to učinili sa kodom iz postavke Bluetooth.

Da bi robot funkcionirao, morate preuzeti aplikaciju ‘Joystick bluetooth Commander’ iz Trgovine Play. Uključite napajanje robota i postavite ga na pod, sprijeda ili straga. Pokrenite aplikaciju i povežite se s Bluetooth čipom. Polje podataka 1 će preći iz XXX u READY nakon što se robot kalibrirao (5 sekundi da ga postavi na bok, nakon čega slijedi 10 sekundi kalibracije). Robota možete uključiti prebacivanjem gumba 1 u aplikaciji. Sada postavite robota okomito na tlo i pustite ga kad osjetite da se motori uključuju. Tada robot počinje balansirati.

Robot je sada spreman za podešavanje, jer njegova stabilnost vjerojatno nije velika. Možete pokušati ako radi bez dodatnog podešavanja, ali morate učiniti robota prilično identičnim kao naš kako bi ispravno radio. Stoga biste u većini slučajeva trebali podesiti kontroler da najbolje radi s vašim robotom. Prilično je jednostavno, iako oduzima dosta vremena. Evo kako to učiniti:

Podešavanje kontrolera

Negdje u kodu ćete pronaći 4 varijable, počevši od k. To su kp, kd, kc i kv. Započnite postavljanjem svih vrijednosti na nulu. Prva vrijednost koju treba postaviti je kp. Zadana vrijednost kp je 0,17. Pokušajte ga postaviti na nešto mnogo niže, poput 0,05. Isključite robota, učitajte kôd i pogledajte kako pokušava uravnotežiti. Ako padne naprijed, povećajte vrijednost. Najpametniji način za to je interpolacija:

  1. Postavite vrijednost na nešto nisko i isprobajte
  2. Postavite vrijednost na nešto visoko i isprobajte
  3. Postavite vrijednost na prosjek ove dvije i isprobajte je
  4. Sada pokušajte saznati je li bolje balansirao na niskoj ili visokoj vrijednosti i prosjeku trenutne vrijednosti i one na kojoj je bolje radio.
  5. Nastavite dok ne pronađete slatko mjesto

Slatka tačka za kp vrednost je kada se nalazi na ivici nedovoljne i prekomerne kompenzacije. Tako će ponekad pasti naprijed jer ne može pratiti svoju brzinu pada, a ponekad će pasti unatrag jer prelazi u drugom smjeru.

Nakon što postavite kp vrijednost, postavite kd. To se može učiniti na isti način kao što ste učinili s kp. Povećavajte ovu vrijednost sve dok robot ne bude gotovo uravnotežen, tako da će se njihati naprijed -natrag dok se ne prevrne. Ako ste ga postavili previsoko, već ga možete prilično uravnotežiti, ali kad se ravnoteža previše poremeti, ona će se prevrnuti (kao kad je pritisnete). Zato pokušajte pronaći mjesto na kojem nije baš izbalansirano, ali prilično blizu.

Kao što možete pretpostaviti, podešavanje kontrolera može potrajati nekoliko pokušaja jer postaje sve teže sa svakom novom uvedenom varijablom. Dakle, ako mislite da neće uspjeti, počnite ispočetka.

Sada je vrijeme za postavljanje kv. Interpolirajte ovo dok ne pronađete vrijednost pri kojoj robot prestaje ljuljati, ostaje uravnotežen i može podnijeti lagani pritisak. Kada je postavljen previsoko, to negativno utječe na stabilnost. Pokušajte se igrati s kv i kp kako biste pronašli točku u kojoj je najstabilniji. Ovo je korak pri ugađanju koji oduzima najviše vremena.

Zadnja vrijednost je kc. Ova vrijednost čini da se robot vrati u posljednji položaj nakon što je kompenzirao pritisak ili nešto drugo. Ovdje možete isprobati istu metodu interpolacije, ali 0.0002 bi u većini slučajeva trebalo prilično dobro funkcionirati.

To je to! Vaš robot je sada spreman. Za upravljanje robotom koristite joystick na svom pametnom telefonu. Pazite, međutim, kretanje naprijed najvećom brzinom može i dalje navesti robota da se prevrne. Poigrajte se varijablama kontrolera kako biste ovo nadoknadili što je više moguće. Najlogičniji korak bio bi pogledati vrijednost kp za to, jer to izravno kompenzira trenutni kut robota.

Važna napomena o LiPo baterijama

Preporučuje se da redovno provjeravate napon svoje LiPo baterije. LiPo baterije se ne smiju prazniti na manje od 3 volta po ćeliji-mjerenje 9 volti na 3S LiPo. Ako napon padne ispod 3 volta po ćeliji, doći će do trajnog gubitka kapaciteta baterije. Ako napon padne ispod 2,5 volti po ćeliji, odložite bateriju i kupite novu. Punjenje LiPo ćelije s manje od 2,5 volti opasno je jer unutarnji otpor postaje vrlo visok, što dovodi do vruće baterije i potencijalne opasnosti od požara tijekom punjenja.

Preporučuje se: