Obsah:
- Zásoby
- Krok 1: Vytlačte všetky 3D komponenty
- Krok 2: (Voliteľné) Na spodnej strane škatule pripevnite drevenú dosku, aby ste ju posilnili
- Krok 3: Zmerajte a vyrežte drevenú dosku, aby sa zmestila do škatule
- Krok 4: Označte polohy motorov
- Krok 5: Označte polohy zátvoriek a potrubia
- Krok 6: Vyvŕtajte otvor pre káble vychádzajúce z krabice (USB a napájanie)
- Krok 7: Vŕtajte a pílte všetky označené otvory
- Krok 8: Pripojte motory a potrubie k doske
- Krok 9: Pripevnite dosku k škatuľke pomocou držiakov L
- Krok 10: Vezmite si koncové bloky a spájkujte drôty dohromady
- Krok 11: Odstrihnite koniec napájacieho kábla adaptéra a odizolujte drôty
- Krok 12: Identifikujte a označte kladné a záporné vodiče
- Krok 13: Pripojte vodiče k koncovým blokom tak, aby boli zapojené všetky + servo vodiče a + vodič z napájacieho kábla, to isté platí pre - drôty
- Krok 14: Odrežte hlavu z drôtu na doske
- Krok 15: V spodnej časti škatule vyvŕtajte tri otvory pre drôty vychádzajúce z vašej ruky
- Krok 16: Pripojte konektor základne k krabici
- Krok 17: Nôž alebo pilník na nechty urobte drážky drôtu hlbšie
- Krok 18: Zostrojte ruku
- Krok 19: Nainštalujte Processing a Arduino
- Krok 20: Prilepte programy kódu
- Krok 21: Pripojte riadiace piny serva k Arduinu
- Krok 22: Pri spracovaní stlačte tlačidlo Reset, čím sa všetky ramená nastavia na 90 stupňov
- Krok 23: Horizontálne zafixujte servo ramená k motoru
- Krok 24: Prevlečte drôty cez ruky tak, aby nedošlo k uvoľneniu
- Krok 25: Otestujte rameno a podľa potreby dotiahnite alebo uvoľnite drôty
- Krok 26: Horúce prilepte drôty k servo ramenám, aby boli trvalé
- Krok 27: Poznámky
- Krok 28: Riešenie problémov
- Krok 29: Odkazy
- Krok 30: Kód
- Krok 31: Ďalšie obrázky
Video: Rameno robota riadené robotom: 31 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Toto je návod, ako vyrobiť rameno robota ovládané drôtmi. Výhodou použitia drôtov je, že vaša ruka je ľahšia a v spodnej časti ramena môžete mať všetky motory, čo uľahčuje stavbu a údržbu. Tu je video ruky v akcii. V budúcnosti plánujem pridať pazúr, aby mohol veci zdvihnúť a nie ich len tlačiť.
3D tlač:
Tu a Tu
Zásoby
6 servomotorov (MG995)
Arduino Uno
Asi 6 metrov oceľového drôtu potiahnutého plastom (0,5 mm)
Box 23x33x10 (môže byť užší, rozhodne by nemal byť kratší)
Doska z dreva 33x10
Skrutky a matice
Rúra 14 cm (to je potrebné na vedenie strún)
4 držiaky L.
5-voltový adaptér
2 7-cestné svorkovnice
Drôty na chlieb
3D tlačené komponenty (nenavrhnuté mnou, odkazy na prvky v popise):
3 „skrutky“
2 „Prvok 1“
1 „Prvok 2“
2 „Prvok 3“
1 Základný konektor
Krok 1: Vytlačte všetky 3D komponenty
Možno budete potrebovať podporu pre otvory a oblúky pre skrutky, ale uistite sa, že nepridáte podperu k telu vašich komponentov; tým sa zatvoria malé otvory pre drôt a budete musieť vytvoriť nové otvory
Krok 2: (Voliteľné) Na spodnej strane škatule pripevnite drevenú dosku, aby ste ju posilnili
Moja schránka bola dosť slabá, tvoja možno nie
Krok 3: Zmerajte a vyrežte drevenú dosku, aby sa zmestila do škatule
Krok 4: Označte polohy motorov
uistite sa, že sa žiadne z ramien navzájom nedotýkajú
Krok 5: Označte polohy zátvoriek a potrubia
Rúra by mala byť umiestnená asi jeden centimeter pred otvorom
Krok 6: Vyvŕtajte otvor pre káble vychádzajúce z krabice (USB a napájanie)
Krok 7: Vŕtajte a pílte všetky označené otvory
Krok 8: Pripojte motory a potrubie k doske
Krok 9: Pripevnite dosku k škatuľke pomocou držiakov L
Krok 10: Vezmite si koncové bloky a spájkujte drôty dohromady
Krok 11: Odstrihnite koniec napájacieho kábla adaptéra a odizolujte drôty
Krok 12: Identifikujte a označte kladné a záporné vodiče
Krok 13: Pripojte vodiče k koncovým blokom tak, aby boli zapojené všetky + servo vodiče a + vodič z napájacieho kábla, to isté platí pre - drôty
Krok 14: Odrežte hlavu z drôtu na doske
Odizolovaný koniec drôtu na nepájivom poli pripevnite k mínusovej svorkovnici a koniec kolíka na uzemňovací kolík vo svojom arduine. Ak to neurobíte, motory sa budú bez akéhokoľvek pohybu pohybovať nepravidelne.
Krok 15: V spodnej časti škatule vyvŕtajte tri otvory pre drôty vychádzajúce z vašej ruky
Otvory by sa mali zhodovať s otvormi v základňovom konektore.
Krok 16: Pripojte konektor základne k krabici
Krok 17: Nôž alebo pilník na nechty urobte drážky drôtu hlbšie
Drátené drážky pre prvky 2 a 3 sú príliš plytké.
Krok 18: Zostrojte ruku
Zostrojte rameno podľa pokynov tu, možno budete musieť diely opilovať tak, aby sedeli
Krok 19: Nainštalujte Processing a Arduino
Spracovanie a Arduino
Krok 20: Prilepte programy kódu
Kód je v spodnej časti tejto stránky
Krok 21: Pripojte riadiace piny serva k Arduinu
Pripojil som prvý motor k tretiemu digitálnemu kolíku, druhý motor k štvrtému digitálnemu kolíku a tak ďalej. Uistite sa, že uzemňovací kolík je stále pripojený k - svorkovnici.
Krok 22: Pri spracovaní stlačte tlačidlo Reset, čím sa všetky ramená nastavia na 90 stupňov
Krok 23: Horizontálne zafixujte servo ramená k motoru
Krok 24: Prevlečte drôty cez ruky tak, aby nedošlo k uvoľneniu
Uistite sa, že prevlečiete drôt toľkými otvormi, koľko len môžete, dočasne to udrží drôt a dá sa ľahko odstrániť.
Krok 25: Otestujte rameno a podľa potreby dotiahnite alebo uvoľnite drôty
Krok 26: Horúce prilepte drôty k servo ramenám, aby boli trvalé
Krok 27: Poznámky
Použil som 0,5 mm šperkový drôt, ale 0,4 mm by mal byť v poriadku. Pôvodný dizajn používal drôt z PVC, ktorý sa však príliš ľahko zlomil a ťažko sa s ním pracovalo.
Ak sa chystáte pohybovať ramenom v aute alebo na bicykli, zabaľte kĺby ruky páskou, aby ste sa presvedčili, že nevyskočia. Toto je obzvlášť dôležité pre prvok 1.
Keď som začínal s týmto projektom, zaujímalo ma, prečo som našiel iba jeden návod, ako vytvoriť rameno ovládané drôtmi. Teraz chápem, prečo to nie je najbežnejší spôsob výroby ručného robotického ramena. Drôty občas vypadnú z drážok a celé je to akési chatrné. Neviem, či sú problémy preto, že nemám veľa skúseností, alebo je celá myšlienka problematická, aj keď som si istý, že by bolo pevnejšie, keby som vedel, čo robím.
Krok 28: Riešenie problémov
Otvory pre drôty sú uzavreté v 3D tlačených prvkoch:
Pridali ste podporu pre celý prvok, nielen pre otvory pre skrutky. Buď prvok znova vytlačte, alebo otvorte otvory skutočne horúcou ihlou.
Port COM je zatvorený, nemôžete komunikovať s arduino:
Vaše arduino nemusí akceptovať porty USB 3 (moje nie), môžete si kúpiť predlžovací kábel USB 2 alebo použiť počítač, ktorý má porty USB 2
Kód nefunguje:
Nasledujte tento návod a upravte ho, aby ste si vytvorili vlastný kód
Časť ramena sa nepohybuje:
Káble sa mohli zamotať, aby ste to skontrolovali, zložte rameno serva zo serva a skúste ťahať drôty ručne. Rozmotajte drôty a ak je stále ťažké ťahať drôty, skúste použiť nejaký WD-40 alebo mazivo, aby ste uľahčili pohyb
Krok 29: Odkazy
Nerobotické rameno:
Arm 3D Printable:
3D tlač mojej ruky:
Arduino a spracovanie:
Krok 30: Kód
Upravené z tohto kódu
Arduino kód:
#include // Deklarujte motory Servo myservo1; Servo myservo2; Servo myservo3; Servo myservo4; Servo myservo5; Servo myservo6; // Všetky motory sú predvolene nastavené na 90 stupňov int current1 = 90; int current2 = 90; int current3 = 90; int current4 = 90; int current5 = 90; int current6 = 90; // Minimálne a maximálne stupne, ktoré môžu motory dosiahnuť int mini1 = 0; int maxi1 = 180; int mini2 = 0; int maxi2 = 180; int mini3 = 0; int maxi3 = 180; int mini4 = 0; int maxi4 = 180; int mini5 = 0; int maxi5 = 180; int mini6 = 0; int maxi6 = 180; // Stupne, ktoré sa majú sčítať alebo odčítať z aktuálnej polohy v stupňochFoward = 5; // Oneskorenie, aby sa dve funkcie nestali v zlom poradí int delayBetweenSteps = 100; void setup () {// Nastavenie ovládacích pinov pre každý motor myservo1.attach (3); myservo2.attach (4); myservo3.attach (5); myservo4.attach (6); myservo5.attach (7); myservo6.attach (8); // Nastav všetky motory na predvolené nastavenie myservo1.write (current1); myservo2.write (current2); myservo3.write (current3); myservo4.write (current4); myservo5.write (current5); myservo6.write (current6); // spustenie sériovej komunikácie @9600 bps Serial.begin (9600); } void loop () {if (Serial.available ()) {// ak sú k dispozícii údaje na čítanie char val = Serial.read (); // vložte to do tohto znaku // Ovládacie prvky motora if (val == 'a' && current1 + stupneFoward mini1) {myservo1.write (current1 - stupneFoward); current1 = current1 - stupneFoward; oneskorenie (delayBetweenSteps); } if (val == 'c' && current2 mini2) {myservo2.write (current2 - stupňůFoward); current2 = current2 - stupňovFoward; oneskorenie (delayBetweenSteps); } if (val == 'e' && current3 mini3) {myservo3.write (current3 - stupňůFoward); current3 = current3 - stupňovFoward; oneskorenie (delayBetweenSteps); } if (val == 'g' && current4 mini4) {myservo4.write (current4 - stupňůFoward); current4 = current4 - stupneFoward; oneskorenie (delayBetweenSteps); } if (val == 'i' && current5 mini5) {myservo5.write (current5 - stupňůFoward); current5 = current5 - stupneFoward; oneskorenie (delayBetweenSteps); } if (val == 'k' && current6 mini6) {myservo6.write (current6 - stupňůFoward); current6 = current6 - stupneFoward; oneskorenie (delayBetweenSteps); } // Ovládanie rýchlosti if (val == 'w') {// Ak je stlačené tlačidlo rýchlosti 1 stupneFoward = 1; oneskorenie (delayBetweenSteps); } if (val == 'x') {// Ak je stlačené tlačidlo rýchlosti 5 stupňovFoward = 5; oneskorenie (delayBetweenSteps); } if (val == 'y') {// Ak je stlačené tlačidlo rýchlosti 10 stupňov Foward = 10; oneskorenie (delayBetweenSteps); } if (val == 'z') {// Ak je stlačené tlačidlo rýchlosti 20 stupňov Foward = 20; oneskorenie (delayBetweenSteps); } if (val == 'r') {// Ak stlačíte tlačidlo rýchlosti 20 myservo1.write (90); prúd1 = 90; myservo2.write (90); prúd2 = 90; myservo3.write (90); prúd3 = 90; myservo4.write (90); prúd4 = 90; myservo5.write (90); prúd5 = 90; myservo6.write (90); prúd6 = 90; oneskorenie (delayBetweenSteps); }}}
Kód spracovania:
spracovanie importu.sériové.*; kontrola dovozuP5.*; // import knižnice ControlP5 Sériový port; ControlP5 cp5; // vytvorenie objektu ControlP5 PFont font; neplatné nastavenie () {// rovnaké ako veľkosť programu arduino (300, 700); // veľkosť okna, (šírka, výška) printArray (Serial.list ()); // vytlačí všetky dostupné sériové porty // Ak máte problém, pravdepodobne pochádza odtiaľto. String portName = Serial.list () [0]; port = new Serial (this, portName, 9600); // arduino som pripojil na com3, v linuxe a mac os by to bolo ine // dovoli pridat buton do prazdneho okna cp5 = new ControlP5 (this); font = createFont ("Arial", 13); // vlastné písma pre tlačidlá a názov // Tlačidlá ovládania rýchlosti cp5.addButton ("One") // "One" je názov tlačidla.setPosition (50, 50) // súradnice x a y v ľavom hornom rohu tlačidla.setSize (55, 25) // (šírka, výška).setFont (písmo); cp5.addButton ("Five").setPosition (110, 50).setSize (55, 25).setFont (písmo); cp5.addButton ("Ten").setPosition (170, 50).setSize (55, 25).setFont (písmo); cp5.addButton ("Dvadsať").setPosition (230, 50).setSize (55, 25).setFont (písmo); cp5.addButton ("Reset").setPosition (110, 2).setSize (55, 25).setFont (písmo); cp5.addButton ("Servo_1_Foward").setPosition (50, 90).setSize (190, 40).setFont (písmo); // Tlačidlá ovládania motora cp5.addButton ("Servo_1_Back").setPosition (50, 140).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_2_Foward").setPosition (50, 190).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_2_Back").setPosition (50, 240).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_3_Foward").setPosition (50, 290).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_3_Back").setPosition (50, 340).setSize (190, 40) // (šírka, výška).setFont (písmo); cp5.addButton ("Servo_4_Foward").setPosition (50, 390).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_4_Back").setPosition (50, 440).setSize (190, 40) // (šírka, výška).setFont (písmo); cp5.addButton ("Servo_5_Foward").setPosition (50, 490).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_5_Back").setPosition (50, 540).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_6_Foward").setPosition (50, 590).setSize (190, 40).setFont (písmo); cp5.addButton ("Servo_6_Back").setPosition (50, 640).setSize (190, 40).setFont (písmo); } void draw () {// to isté ako slučka na pozadí arduina (192, 215, 249); // farba pozadia okna (r, g, b) alebo (0 až 255) // Pridajte text, ktorý hovorí, že ovládanie rýchlosti je vyplnenie riadenia rýchlosti (0, 10, 25); // farba textu (r, g, b) textFont (font); text („Ovládanie rýchlosti“, 50, 40); // ("text", súradnica x, súradnica y)} // umožňuje pridať do našich tlačidiel niektoré funkcie // takže po stlačení ľubovoľného tlačidla odošle konkrétny znak na sériový port // Som si istý, že je možné odosielať reťazce namiesto znakov a dávalo by to väčší zmysel, ale neviem, ako to urobiť // Príkazy na ovládanie rýchlosti void One () {port.write ('w'); } void Five () {port.write ('x'); } void Ten () {port.write ('y'); } void Twenty () {port.write ('z'); } // Príkazy riadenia motora neplatné Servo_1_Foward () {port.write ('a'); } neplatné Servo_1_Back () {port.write ('b'); } neplatné Servo_2_Foward () {port.write ('c'); } neplatné Servo_2_Back () {port.write ('d'); } neplatné Servo_3_Foward () {port.write ('e'); } neplatné Servo_3_Back () {port.write ('f'); } neplatné Servo_4_Foward () {port.write ('g'); } neplatné Servo_4_Back () {port.write ('h'); } neplatné Servo_5_Foward () {port.write ('i'); } neplatné Servo_5_Back () {port.write ('j'); } neplatné Servo_6_Foward () {port.write ('k'); } neplatné Servo_6_Back () {port.write ('l'); } void Reset () {port.write ('r'); }
Krok 31: Ďalšie obrázky
Odporúča:
Rameno robota: 15 krokov
Robot Arm: Have Auto System
Rameno robota ovládané rotačným kodérom: 6 krokov
Rameno robota ovládané rotačným kodérom: Navštívil som stránku howtomechatronics.com a videl som tam rameno robota ovládané bluetooth. Nerád používam bluetooth a navyše som videl, že môžeme ovládať servo pomocou rotačného enkodéra, a tak som ho prepracoval tak, aby som mohol ovládať robota. rameno použite rotačný snímač a zaznamenajte ho
ROBOTICKÁ RAMENO Xbox 360 [ARDUINO]: RAMENO AXIOM: 4 kroky
ROBOTICKÁ RÁMČKA Xbox 360 [ARDUINO]: RAMENO AXIOM:
Bluetooth robotom riadené auto: 13 krokov (s obrázkami)
Bluetooth riadené robotické auto: vždy vás fascinovali RC autá? Chceli ste si niekedy nejaký vyrobiť sami? ovládate vlastným smartfónom? ---- > Hej, chlapci, tu v tomto projekte som sa pokúsil vytvoriť auto ovládané pomocou Bluetooth pomocou Arduina. Mám vrátane
Bluetooth robotom riadené auto využívajúce Arduino: 8 krokov (s obrázkami)
Bluetooth riadené robotické auto pomocou Arduina: V tomto návode vás prevediem výrobou robotického auta, ktoré bude ovládať Bluetooth z vášho mobilného telefónu s Androidom. Nielen to, robotické auto má špeciálnu schopnosť vyhýbať sa prekážkam, s ktorými sa stretáva pri posúvaní auta dopredu. Robo