Sadržaj:
- Korak 1: Zahtjevi
- Korak 2: Konfiguracija Bluetooth čipa
- Korak 3: Pričvršćivanje kotača na motore
- Korak 4: Stvaranje vanjštine
- Korak 5: Ugradnja komponenti
- Korak 6: Prijenos i ugađanje koda
Video: Samobalansirajući robot: 6 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
U ovom Instructableu pokazat ćemo vam kako izgraditi samobalansirajućeg robota koji smo napravili kao školski projekt. Temelji se na nekim drugim robotima, kao što su nBot i drugi Instructable. Robotom se može upravljati s 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 korištenih izvora, pa ih možete pogledati ako vam dokument nije dovoljno opsežan.
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
Robot se temelji na Martinezovoj upravljačkoj ploči bez getbala bez četkica. Postoje neke male varijacije ove ploče, ali sve dok imate onu s čipom ATmega328 i motorom L6234, trebali biste biti u redu. Tražite li "Martinezova ploča" na Google slikama, vidjet ćete da postoje neke ploče s jednostavnim priključkom za IMU čip i/ili bateriju, umjesto zaglavlja iglica ili rupa. U posljednjem slučaju dobro će vam doći ako naručite paket zatiča zaglavlja koje zatim možete lemiti u rupe.
Popis dijelova
Neke stavke na ovom popisu sadrže veze na web trgovine.
- Kontroler: Martinez BoardDX.com (također dolazi s IMU -om i nekim iglama zaglavlja).
- IMU: MPU6050
- Baterija (3S LiPo baterija od 450 mAh) Napomena: trebat će vam i 3S LiPo punjač eBay.com
- 2x motor: Motor bez četkica 2208, KV100DX.com
- Kotači (možete ih nabaviti iz postojećih igračaka ili LEGO -a)
- 6x M2 vijak 5 mm
- 8x vijak M3 (duljina ovisi o materijalu za vašu vanjštinu, mora biti ekstra dugačak)
- Bluetooth čip HC-05 (obavezno nabavite onaj s serijskom pločom sučelja, a ne samo goli čip) VAŽNO: Provjerite ima li čip pin s oznakom KLJUČ.
- Žice: ženski na ženski DuPontKupovina pakiranja od 20 žica bit će više nego dovoljna
- Čičak traka
- USB kabel za povezivanje kontrolera s računalom
- Izborno: zaglavlje pinsDX.com (možete ih izrezati ili razbiti na željenu duljinu)
- Plastične podloške i odstojnici
Konačno, potrebno vam je malo akrila, drva ili kartona popraćeno ljepilom ili trakom-da biste stvorili strukturu koja sadrži sve komponente.
Korak 2: 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čunalom, 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:
- Spojite kontroler na računalo pomoću USB kabela.
- Otvorite.ino datoteku s Arduino IDE -om.
- U IDE -u idite na Tools, Board i provjerite je li postavljeno na Arduino/Genuino Uno.
- Sada idite na Alati, Port i postavite ga na COM port na koji je kontroler spojen. Obično postoji samo jedan port. Ako ih ima više, provjerite Upravitelj uređaja (u sustavu Windows) da biste saznali koji je upravljač.
- Sada pritisnite gumb Upload u IDE -u i pričekajte da prijenos završi. Zatim odspojite USB kabel s računala ili kontrolera.
Nakon što to učinite, spojite HC-05 pomoću DuPont kabela na sljedeći način:
Kontroler HC-05
KLJUČ +5V GND GND TXD RX RXD TX
Sada ponovno priključite USB kabel, zatim spojite VCC pin HC-05 na drugi +5V na kontroleru. LED dioda bi trebala treptati u razmaku od ~ 1 sekunde.
U Arduino IDE -u odaberite ispravan COM port, a zatim idite na Alati, Serijski 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 Provjerite vezu
AT+NAME Dohvati/postavi Bluetooth prikazno ime AT+UART Dohvati/postavi brzinu prijenosa AT+ORGL Vrati tvorničke postavke AT+PSWD Dohvati/postavi Bluetooth lozinku
Da biste promijenili naziv, 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. Time se postavlja na 230400 bauda, s 1 stop bitom i bez pariteta. Nakon što ste sve postavili, ponovno 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
Kotači koji su korišteni u ovom projektu imaju nepoznato podrijetlo (ležali su u ladici s puno drugih stvari). Kako bismo pričvrstili kotače na motore, 3D smo ispisali 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 za izrezivanje rupe iste veličine kao i motor (ili za 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 namjeravate učiniti.
Korak 4: Stvaranje vanjštine
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 stupnjeva, pazeći da ostavimo dovoljno prostora da motor sjedi u donjem središtu. 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 tijekom bušenja spojite komade drva, svaku rupu morate izbušiti samo jednom.
Za izradu izgleda 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 mjesto 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 izradite 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: Ugradnja komponenti
Na drvetu označite okomitu središnju vodilicu 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 trenutku kad smo priključili kontroler). Provjerite možete li priključiti 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đer ga možete usmjeriti na jednu od strana.
Postavite bateriju što je više moguće kako bi robot postao jako težak. Također postavite priključak za punjenje 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 razmaknicom, na način da središte čipa pada preko središta motora. Orijentacija nije bitna, jer se robot kalibrira prilikom pokretanja. Ispod glave vijka obavezno upotrijebite plastičnu podlošku kako biste spriječili kratki spoj strujnog kruga.
Zatim pomoću DuPont žica spojite pinove na regulator. Svaki pin je na kontroleru označen isto kao i na čipu za kretanje, pa je njegovo povezivanje prilično razumljivo.
Prekidač za napajanje
Priključivanje prekidača za napajanje je jednostavno. Uzeli smo jedan iz starog uređaja i odspojili 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 regulatora. Lemili smo DuPont žice na prekidač, tako da sama baterija nije trajno pričvršćena na prekidač.
Spajanje strana
Sada znate mjesto komponenti i imate dvije strane robota. Posljednji korak u izgradnji robota bit će povezivanje dviju strana jedna s drugom. upotrijebili smo četiri seta od tri komada drva zalijepljena 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, nema previše značaja. 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 istisnute mase.
Sada ste spremni za učitavanje koda i podešavanje kontrolera.
Korak 6: Prijenos i ugađanje koda
Za učitavanje koda potrebno vam je računalo s Arduino IDE -om. Preuzmite.ino datoteku u nastavku i otvorite je s Arduino IDE -om. Učitavanje u kontroler vrši se na isti način kao što ste to učinili s 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. Podatkovno polje 1 preći će iz XXX u READY nakon što se robot sam kalibrirao (5 sekundi za postavljanje 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 se 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 ugađanja, ali morate učiniti robota prilično identičnim našem kako bi ispravno radio. Stoga biste u većini slučajeva trebali podesiti kontroler da najbolje radi s vašim robotom. Vrlo je jednostavno, unatoč tome što oduzima dosta vremena. Evo kako to učiniti:
Podešavanje kontrolera
Negdje u kodu pronaći ćete 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, prenesite kôd i pogledajte kako pokušava uravnotežiti. Ako padne naprijed, povećajte vrijednost. Najpametniji način za to je interpolacija:
- Postavite vrijednost na nešto nisko i isprobajte
- Postavite vrijednost na nešto visoko i isprobajte
- Postavite vrijednost na prosjek dva i isprobajte
- Sada pokušajte saznati je li bolje balansirao na niskoj ili visokoj vrijednosti i prosjek trenutne vrijednosti i one na kojoj je bolje radio.
- Nastavite dok ne pronađete slatko mjesto
Slatko mjesto za kp vrijednost je kad je na rubu nedovoljne i prekomjerne 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 dok robot ne bude gotovo uravnotežen, tako da će se njihati naprijed -natrag sve dok ne padne. Ako ga postavite 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š uravnoteženo, 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. Stoga, 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 njihati, ostaje uravnotežen i može podnijeti lagani pritisak. Kad 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 on najstabilniji. Ovo je najduži korak ugađanja.
Posljednja 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 dosta dobro funkcionirati.
To je to! Vaš robot je sada spreman. Za upravljanje robotom koristite joystick na pametnom telefonu. Pazite, međutim, budući da će pri kretanju naprijed najvećom brzinom robot ipak moći pasti. Poigrajte se varijablama kontrolera kako biste to 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 redovito 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čeni:
Samobalansirajući robot - PID kontrolni algoritam: 3 koraka
Self Balancing Robot - PID Control Algorithm: Ovaj je projekt zamišljen jer me zanimalo saznati više o upravljačkim algoritmima i kako učinkovito implementirati funkcionalne PID petlje. Projekt je još uvijek u fazi razvoja jer se Bluetooth modul tek treba dodati što će omogućiti
Samobalansirajući robot iz Magicbita: 6 koraka
Samobalansirajući robot iz Magicbita: Ovaj vodič prikazuje kako napraviti samo balansirajućeg robota pomoću Magicbit dev ploče. Koristimo magicbit kao razvojnu ploču u ovom projektu koji se temelji na ESP32. Stoga se u ovom projektu može koristiti bilo koja razvojna ploča ESP32
Samobalansirajući robot na dva kotača: 7 koraka
Samobalansirajući robot s dva kotača: Ovaj instruktor će proći kroz proces projektiranja i izgradnje samobalansirajućeg robota. Kao napomenu, samo želim reći da samo uravnotežujući roboti nisu novi koncept i da su ih drugi izgradili i dokumentirali. Želim iskoristiti ovu priliku
HeadBot-samobalansirajući robot za STEM učenje i Outreach: 7 koraka (sa slikama)
HeadBot-samobalansirajući robot za učenje i informiranje o STEM-u: Headbot-dva metra visok, samobalansirajući robot-zamisao je tima South Eugene Robotics Team (SERT, FRC 2521), konkurentnog srednjoškolskog tima za robotiku u PRVOM Robotics Competition, iz Eugenea, Oregon. Ovaj popularni terenski robot čini
Samobalansirajući Robo-vitez: 7 koraka (sa slikama)
Samo uravnotežujući Robo-vitez: Video igre i društvene igre izvrstan su način provođenja vremena s prijateljima i obitelji. Ponekad se osjećate kao da provodite vrijeme izvan mreže i odlažete svu svoju elektroniku, drugi put zaronite u virtualni svijet sporta, arkada ili borbene igre