Obsah:
- Krok 1: Přehled projektu
- Krok 2: Schémata
- Krok 3: Schéma ovladače PS2
- Krok 4: Nastavení připojení modulů Zio
- Krok 5: Připojte servo s robotickým ramenem k servo ovladači Zio 16
- Krok 6: Připojte 16 servo k posilovači DC/DC a nastavte jej na 6,0 V
- Krok 7: Připojte Zuino M Uno k servopohonu Zio 16
- Krok 8: Připojení Uno k přijímači PS2
- Krok 9: Kód pro robotické rameno
- Krok 10: Spusťte kód
- Krok 11: Vysvětlení kódu
Video: Robotické rameno s moduly Zio Část 2: 11 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
V dnešním tutoriálu využijeme k ovládání robotické paže všechna 4 serva a bezdrátový ovladač PS2.
Tento blogový příspěvek je součástí Zio Robotics Series.
Úvod
V našem předchozím blogu jsme zveřejnili část 1 návod, jak ovládat robotické rameno pomocí modulů Zio. Část 1 se většinou soustředila na automatické ovládání otevírání a zavírání drápu vaší robotické paže.
V dnešním tutoriálu to trochu pořešíme zahrnutím bezdrátového ovladače PS2 k ovládání robotické paže. Pro tento projekt použijeme 4 serva.
Krok 1: Přehled projektu
Stupeň obtížnosti:
Zio Padawan
Užitečné zdroje:
Měli byste mít základní znalosti o tom, jak nainstalovat vývojové desky Zio. V tomto kurzu předpokládáme, že vaše vývojová deska je již nakonfigurována a je připravena k nastavení. Pokud jste desku ještě nenakonfigurovali, podívejte se do našeho níže uvedeného tutoriálu Zio Qwiic Start Guide:
Zio Zuino M UNO Qwiic Průvodce spuštěním
Krok 2: Schémata
Zde je schéma zapojení projektu Robotic Arm Part 2 Project a schéma ovladače PS2 potřebné k pochopení vaší kódovací části.
Krok 3: Schéma ovladače PS2
Krok 4: Nastavení připojení modulů Zio
Níže je připojení našich modulů Zio, které mají být nastaveny pomocí robotického ramene. Propojení všech modulů dohromady je velmi snadné a nastavení nezabere více než 10 minut.
Krok 5: Připojte servo s robotickým ramenem k servo ovladači Zio 16
Krok 6: Připojte 16 servo k posilovači DC/DC a nastavte jej na 6,0 V
K posílení a úpravě napájecího napětí baterie na 6,0 používáme DC/DC Booster.
Pomocí potenciometru na DC Booster upravte napětí, dokud nezískáte 6,0. Stiskněte tlačítko In/Out, dokud se na displeji nezobrazí 6.0. Abyste mohli upravit napětí, musíte nejprve napájet (3,7 V baterii) posilovač DC/DC.
Krok 7: Připojte Zuino M Uno k servopohonu Zio 16
Qwiic připojte Zuino M Uno k ovladači Zio Servo pomocí kabelu qwiic.
Krok 8: Připojení Uno k přijímači PS2
Zde je pinový diagram připojení. Pro tuto část potřebujete 5 propojovacích kabelů mezi mužem a ženou.
Krok 9: Kód pro robotické rameno
Budeme používat knihovnu PS2 Arduino pro kódování našeho bezdrátového ovladače PS2, aby fungoval s naším robotickým ramenem. Zdrojový kód tohoto projektu Robotic Arm Part 2 můžete najít a stáhnout na naší stránce Github.
Stáhněte a nainstalujte následující knihovny a uložte je do své místní složky knihoven Arduino IDE:
- Knihovna servo ovladačů Adafruit PWM
- Knihovna PS2 Arduino
Chcete -li nainstalovat knihovny, otevřete Arduino IDE, přejděte na kartu Sketch, vyberte Include Library -> Add. Zip Library. Vyberte výše uvedené knihovny, které mají být zahrnuty do vašeho IDE.
Arduino má praktický průvodce instalací knihoven do vašeho Arduino IDE. Podívejte se na ně zde!
Krok 10: Spusťte kód
Otevřete Arduino IDE. V části Soubory> Příklady> PS2_Arduino_Library vyberte PS2X_Servo
Poznámka: Než budete moci ovládat svou robotickou ruku ovladačem PS2, zkontrolujte následující kroky: Zapněte ovladač PS2. Zkontrolujte, zda se rozsvítí kontrolka LED režimu. Pokud tomu tak není, stiskněte tlačítko Mode na ovladači. Poté, co provedete výše uvedené kroky, musíte na svém Zuino M Uno stisknout resetovací tlačítko, aby si přečetlo nastavení vašeho ovladače. Chcete -li pohybovat robotickou paží, musíte stisknout L1 a joystick.
- Levý joystick ovládá ohýbání paže nahoru nebo dolů
- Pravý joystick ovládá dráp buď k otevření nebo zavření a otáčení drápu doleva nebo doprava.
Krok 11: Vysvětlení kódu
Použití knihovny PS2X Arduino je jednoduché, vyžaduje pouze inicializaci, nastavení a poté příkaz ke čtení.
Chcete -li nastavit spojení pro váš ovladač PS2 s vaším Uno, níže jsou piny, které musíte definovat ve svém kódu:
/******************************************************* ****************nastavit piny připojené k řadiči PS2:* - 1e sloupec: původní* - 2e colmun: Stef? *nahraďte čísla pinů těmi, která používáte ********************************** **********************/#definovat PS2_DAT 13 // 14#definovat PS2_CMD 11 // 15#definovat PS2_SEL 10 // 16#definovat PS2_CLK 12 // 17
Vyměnili jsme piny za ty, které používáme k připojení k našemu Uno, jak je uvedeno na Pin Diagram výše.
/******************************************************* **************** vyberte režimy ovladače PS2:* - tlaky = analogové čtení tlačítek* - rachot = rachot motoru*odkomentujte 1 řádek pro každý výběr režimu ** ******************************************************** ************///#definovat tlaky true#definovat tlaky false //#definovat rachot true#definovat rachot nepravdy
Zde jsme definovali režim PS2 pro tlaky a rachot jako falešný. Komentovali jsme ty, které nepoužíváme.
K ovládání pohybu naší robotické paže budeme používat pouze příkaz Joystick ovladače a L1.
void loop () {/* Musíte si přečíst Gamepad, abyste získali nové hodnoty a nastavili hodnoty vibrací ps2x.read_gamepad (malý motor zapnuto/vypnuto, větší síla motoru od 0 do 255), pokud nepovolíte rachot, použijte ps2x.read_gamepad (); bez hodnot Měli byste to zavolat alespoň jednou za sekundu*/if (chyba == 1) // přeskočit smyčku, pokud nebyl nalezen žádný ovladač; else {// DualShock Controller ps2x.read_gamepad (false, vibrace); // přečtěte ovladač a nastavte velký motor, aby se točil rychlostí 'vibrace', pokud (ps2x. Button (PSB_START)) // bude PRAVDA, dokud bude stisknuto tlačítko Serial.println ("Start je držen"); if (ps2x. Button (PSB_SELECT)) Serial.println ("Výběr je držen"); vibrovat = ps2x. Analog (PSAB_CROSS); // tím se nastaví rychlost vibrací velkého motoru podle toho, jak silně stisknete modré tlačítko (X), pokud (ps2x. Button (PSB_L1) || ps2x. Button (PSB_R1)) {// vytiskne hodnoty stick, pokud je některá z 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 ("Hodnoty Stick:"); Serial.print (RX_Value); Serial.print (""); Serial.print (RY_Value); Serial.print (""); Serial.print (LY_Value); Serial.print (""); Serial.println (LX_Value);
Níže uvedený kód je místo, kde kódujeme naše serva, která ovládají naše robotické rameno, které zahrnujeme do volání funkce pod ps2x.button (PSB_L1) || tlačítko ps2x. (PSB_R1).
Chcete -li ovládat robotickou paži, musíte společně s joystickem stisknout tlačítko L1 nebo R1.
Levý joystick ovládá serva 2 a 3 pro část paže - ovládá ohýbání paže nahoru a dolů, zatímco pravý joystick ovládá serva 0 a 1 drápu robotického ramene otevírání nebo zavírání a otáčení doleva nebo doprava.
SERVO 0, 1 - Dráp SERVO 2, 3 - Arm
V této části můžete provádět změny hodnot a ovládat tak stupeň úhlu své robotické paže:
pulselen0 = mapa (RY_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen1 = mapa (RX_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen2 = mapa (LY_Value, 0, 127, SERVOMIN2, SERVOMAX2); pulselen3 = mapa (LX_Value, 0, 255, SERVOMIN3, SERVOMAX3);
Doporučuje:
MODULY ŘIDIČE NIXIE TUBE - Část II: 11 kroků
MODULY ŘIDIČE NIXIE TUBE - Část II: Tento Instructable navazuje na modul ovladače nixie tube (část I), který jsem zde zveřejnil. Deska ovladače nixie je navržena pro příjem sériového vstupu z externího mikrokontroléru (Arduino atd.) a výstupní desítkové informace a výkon trasy t
Ovládejte robotické rameno pomocí Zio pomocí ovladače PS2: 4 kroky
Ovládejte robotickou ruku pomocí Zio pomocí ovladače PS2: Tento blogový příspěvek je součástí série Zio Robotics. Úvod Toto je závěrečná instalace příspěvku „Ovládejte robotickou ruku pomocí Zio“. V tomto tutoriálu přidáme další část do naší robotické paže. Předchozí výukové programy neobsahují základ pro
Robotické rameno s moduly Zio Část 3: 4 kroky
Robotická paže s moduly Zio Část 3: Tento blogový příspěvek je součástí Zio Robotics Series. Úvod V našem předchozím blogu jsme zveřejnili část 1 a 2 návod, jak ovládat robotické rameno pomocí modulů Zio. Část 1 se většinou soustředila na automatické ovládání drápu vaší robotické paže
Představujeme I2C s moduly Zio a Qwiic: 6 kroků
Představujeme I2C s moduly Zio a Qwiic: Robin Sharma řekl: „Malé každodenní zlepšování v průběhu času vede k ohromujícím výsledkům“. Možná si říkáte: „Ach, další příspěvek na I2C?“. Pokud jde o I2C, určitě existují tisíce informací. Ale zůstaňte naladěni, toto není jen další I2C
MODULY ŘIDIČE NIXIE TUBE - Část I: 8 kroků (s obrázky)
MODULY ŘIDIČE NIXIE TUBE - Část I: To, co jsem hledal, byl způsob, jak se snadno vypořádat s několika číslicemi nixie trubek v různých projektech, na kterých jsem pracoval. Opravdu jsem chtěl snadný způsob, jak spojit mnoho číslic společně s minimální mezerou mezi číslicemi a nechat číslice ovládat b