Sadržaj:
- Korak 1: Pregled projekta
- Korak 2: Sheme
- Korak 3: Dijagram kontrolera PS2
- Korak 4: Postavljanje povezivanja Zio modula
- Korak 5: Povežite servo upravljač robotske ruke sa servo kontrolerom Zio 16
- Korak 6: Povežite svoj 16 servo na DC/DC pojačivač i postavite ga na 6,0 V
- Korak 7: Povežite Zuino M Uno sa Zio 16 servo kontrolerom
- Korak 8: Povežite Uno sa PS2 prijemnikom
- Korak 9: Kôd za robotsku ruku
- Korak 10: Pokrenite svoj kôd
- Korak 11: Objašnjenje koda
Video: Robotska ruka sa Zio modulima Dio 2: 11 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
U današnjem vodiču koristit ćemo sva 4 servo servera i PS2 bežični kontroler za upravljanje robotskom rukom.
Ovaj blog je dio Zio Robotics serije.
Uvod
U našem prethodnom blogu objavili smo prvi dio vodiča o tome kako upravljati robotskom rukom pomoću Zio modula. Prvi dio se uglavnom koncentrirao na automatsko upravljanje otvaranjem i zatvaranjem kandže robotske ruke.
U današnjem vodiču ćemo to malo poboljšati uključivanjem bežičnog kontrolera PS2 za upravljanje robotskom rukom. Za ovaj projekt koristit ćemo 4 serva.
Korak 1: Pregled projekta
Nivo teškoće:
Zio Padawan
Korisni izvori:
Trebali biste imati osnovno razumijevanje o tome kako instalirati Zio razvojne ploče. U ovom vodiču pretpostavljamo da je vaša razvojna ploča već konfigurirana i spremna za postavljanje. Ako još niste konfigurirali svoju ploču, za početak pogledajte naš vodič Zio Qwiic Start Guide ispod:
Zio Zuino M UNO Qwiic Vodič za početak
Korak 2: Sheme
Ovdje su sheme ožičenja projekta Robotic Arm Part 2, kao i dijagram PS2 kontrolera koji su potrebni za razumijevanje vašeg kodiranja.
Korak 3: Dijagram kontrolera PS2
Korak 4: Postavljanje povezivanja Zio modula
U nastavku je prikazana veza naših Zio modula za postavljanje s robotskom rukom. Povezivanje svih modula zajedno prilično je jednostavno i neće vam trebati više od 10 minuta za postavljanje.
Korak 5: Povežite servo upravljač robotske ruke sa servo kontrolerom Zio 16
Korak 6: Povežite svoj 16 servo na DC/DC pojačivač i postavite ga na 6,0 V
Koristimo DC/DC pojačivač za pojačavanje i podešavanje napona napajanja baterije na 6,0.
Pomoću potenciometra na DC Boosteru podesite napon dok ne dobijete 6,0. Pritiskajte dugme za ulaz/izlaz sve dok se na ekranu ne prikaže 6.0. Morate prvo napajati DC/DC pojačivač napajanjem (baterija od 3,7 V) kako biste podesili napon.
Korak 7: Povežite Zuino M Uno sa Zio 16 servo kontrolerom
Qwiic povežite Zuino M Uno sa Zio Servo kontrolerom pomoću qwiic kabela.
Korak 8: Povežite Uno sa PS2 prijemnikom
Ovdje je pin dijagram veza. Za ovaj dio vam je potrebno 5 žica kratkospojnika muško -žensko.
Korak 9: Kôd za robotsku ruku
Koristit ćemo PS2 Arduino biblioteku za kodiranje našeg PS2 bežičnog kontrolera za rad s našim robotskim rukavom. Izvorni kod za ovaj projekt Robotic Arm Part 2 možete pronaći i preuzeti na našoj stranici Github.
Preuzmite i instalirajte sljedeće biblioteke i spremite ih u lokalnu mapu Arduino IDE biblioteka:
- Biblioteka Adafruit PWM servo upravljačkih programa
- Biblioteka PS2 Arduino
Da biste instalirali biblioteke, otvorite svoj Arduino IDE, idite na karticu Sketch, odaberite Include Library -> Add. Zip Library. Odaberite gornje biblioteke koje ćete uključiti u svoj IDE.
Arduino ima praktičan vodič o tome kako instalirati biblioteke na vaš Arduino IDE. Provjerite ih ovdje!
Korak 10: Pokrenite svoj kôd
Otvorite Arduino IDE. U odjeljku Datoteke> Primjeri> PS2_Arduino_Library odaberite PS2X_Servo
Napomena: Prije nego što možete upravljati svojom robotskom rukom pomoću PS2 kontrolera, provjerite sljedeće korake: Uključite PS2 kontroler. Proverite da li LED lampica režima svetli. Ako se to ne dogodi, pritisnite tipku Mode na kontroleru. Nakon što ste učinili gore navedeno, trebate pritisnuti gumb za poništavanje na vašem Zuino M Uno kako bi pročitao postavke vašeg kontrolera. Morate pritisnuti L1 i joystick za pomicanje robotske ruke.
- Lijevi joystick kontrolira savijanje ruke prema gore ili prema dolje
- Desni joystick kontrolira kandžu za otvaranje ili zatvaranje i okretanje kandže nalijevo ili nadesno.
Korak 11: Objašnjenje koda
Korištenje PS2X Arduino biblioteke je jednostavno, samo zahtijeva inicijalizaciju, postavljanje, a zatim naredbu za čitanje.
Za postavljanje veze za vaš PS2 kontroler s vašim Uno -om, u nastavku se nalaze pinovi koje morate definirati u svom kodu:
/************************************************* ****************postavite pinove povezane sa PS2 kontrolerom:* - 1e kolona: original* - 2e colmun: Stef? *zamijenite PIN brojeve onima koje koristite **************************************** **********************/#define PS2_DAT 13 // 14 #define PS2_CMD 11 // 15#define PS2_SEL 10 // 16#definiraj PS2_CLK 12 // 17
Zamijenili smo pinove onima koje koristimo za povezivanje s našim Uno -om, kako je navedeno na Pin -dijagramu gore.
/************************************************* **************** odabir načina rada PS2 kontrolera:* - pritisci = analogno očitavanje tipki* - tutnjava = tutnjava motora*raskomentirajte 1 redak za svaki odabir načina rada ** ************************************************ ************///#definiraj pritiske true#definiraj pritiske false //#definiraj rumble true#definiraj rumble false
Ovdje smo definirali PS2 način rada za pritiske i tutnjavu kao lažne. Komentirali smo one koje ne koristimo.
Koristit ćemo naredbu upravljačke ručice i L1 za kontrolu kretanja naše robotske ruke.
void loop () {/* Morate pročitati Gamepad da biste dobili nove vrijednosti i postavili vrijednosti vibracija ps2x.read_gamepad (mali motor uključen/isključen, veća snaga motora od 0-255) ako ne omogućite tutnjavu, koristite ps2x.read_gamepad (); bez vrijednosti Trebali biste to nazvati barem jednom u sekundi*/if (error == 1) // preskočite petlju ako nije pronađen kontroler return; else {// DualShock kontroler ps2x.read_gamepad (lažno, vibrira); // čitač kontrolera i postavljanje velikog motora da se okreće brzinom 'vibriranja' ako (ps2x. Button (PSB_START)) // bude TRUE sve dok je dugme pritisnuto Serial.println ("Start se drži"); if (ps2x. Button (PSB_SELECT)) Serial.println ("Odabir se zadržava"); vibrirati = ps2x. Analog (PSAB_CROSS); // ovo će postaviti veliku brzinu vibriranja motora na osnovu toga koliko jako pritisnete plavo (X) dugme ako (ps2x. Button (PSB_L1) || ps2x. Button (PSB_R1)) {// vrijednosti štapa za ispis ako je TRUE RY_Value = ps2x. Analog (PSS_RY); RX_Value = ps2x. Analog (PSS_RX); LY_Value = ps2x. Analog (PSS_LY); LX_Value = ps2x. Analog (PSS_LX); Serial.print ("Vrijednosti štapića:"); Serial.print (RX_Value); Serial.print (""); Serial.print (RY_Value); Serial.print (""); Serial.print (LY_Value); Serial.print (""); Serial.println (LX_Value);
U donjem kodu kodiramo naše servo sisteme koji kontrolišu našu robotsku ruku koju uključujemo u poziv funkcije pod ps2x.button (PSB_L1) || dugme ps2x. (PSB_R1).
Morate pritisnuti tipku L1 ili R1 zajedno s joystickom za upravljanje vašim robotskim rukom.
Lijevi joystick kontrolira servo upravljače 2 i 3 za dio ruke - kontrolira savijanje gore i dolje ruke, dok desni joystick kontrolira servo upravljače 0 i 1 kandže robotske ruke za otvaranje ili zatvaranje, te za rotiranje ulijevo ili udesno.
SERVO 0, 1 - Kandža SERVO 2, 3 - Arm
Možete promijeniti vrijednosti u ovom odjeljku kako biste kontrolirali stupanj kuta robotske ruke:
pulselen0 = map (RY_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen1 = mapa (RX_Vrednost, 0, 127, SERVOMIN0, SERVOMAX0); pulselen2 = mapa (LY_Vrednost, 0, 127, SERVOMIN2, SERVOMAX2); pulselen3 = mapa (LX_Vrednost, 0, 255, SERVOMIN3, SERVOMAX3);
Preporučuje se:
Robotska ruka sa hvataljkom: 9 koraka (sa slikama)
Robotska ruka sa hvataljkom: Berba stabala limuna smatra se teškim radom, zbog velike veličine drveća, kao i zbog vruće klime u regijama u kojima se sadi limunovo drveće. Zato nam je potrebno još nešto da pomognemo poljoprivrednim radnicima da više završe svoj posao
3D robotska ruka sa koračnim motorima sa Bluetooth kontrolom: 12 koraka
3D robotska ruka sa koračnim motorima kontroliranim Bluetooth-om: U ovom vodiču ćemo vidjeti kako napraviti 3D robotsku ruku, sa 28byj-48 koračnim motorima, servo motorom i 3D ispisanim dijelovima. Štampana ploča, izvorni kod, električni dijagram, izvorni kod i mnogo informacija nalaze se na mojoj web stranici
Robotska ruka sa Zio modulima Dio 3: 4 koraka
Robotska ruka sa Zio modulima 3. dio: Ovaj blog je dio Zio Robotics serije. Uvod U naš prethodni blog objavili smo 1. i 2. dio uputstva o tome kako upravljati robotskom rukom pomoću Zio modula. Dio 1 uglavnom je koncentriran na automatsku kontrolu kandže vašeg robotskog kraka
Predstavljanje I2C sa Zio modulima i Qwiic -om: 6 koraka
Predstavljamo I2C sa Zio modulima i Qwiic -om: Robin Sharma je rekao: „Mala dnevna poboljšanja s vremenom dovode do zapanjujućih rezultata“. Možda mislite: ‘Aw, još jedan I2C post?’. Pa, sigurno postoje hiljade informacija kada je u pitanju I2C. Ali pratite nas, ovo nije samo još jedan I2C
KAKO MONTIRATI IMPRESIVNU DRVENU ROBOTSKU RUKU (DIO 3: ROBOTSKA RUKA) - NA MIKRO: BITN: 8 koraka
KAKO MONTIRATI IMPRESIVNU DRVENU ROBOTSKU RUKU (DIO 3: ROBOTSKA RUKA) - ZASNOVANO NA MIKRO: BITN: Sljedeći postupak instalacije temelji se na završetku načina izbjegavanja prepreka. Postupak instalacije u prethodnom odjeljku isti je kao i postupak instalacije u načinu praćenja linija. Pogledajmo onda konačni oblik A