Close

Robotická ruka – CCRH MK1

Arduino robotická ruka

Robotická ruka CCRH (Coordinates Controled Robotic Hand)

Tuto ruku jsme stavěli s kamarádem jako studentský projekt. Nyní chceme, aby se náš projekt rozšířil mezi lidi, kteří by měli zájem na něm dále pracovat a vylepšovat jej.


Popis projektu

Jedná se o robotickou ruku, kterou jsme navrhli a vytiskli na 3D tiskárně.

Robotická ruka - návrh pro 3D tisk

Robotická ruka – návrh pro 3D tisk

Robotická ruka - 3D tisk

Robotická ruka – 3D tisk

Dále jsem pro ní vytvořili ovládací prostředí do PC, pomocí kterého můžete ovládat její základní funkce. Tento program jsme psali v prostředí Processing 3, takže dokonale spolupracuje s naší řídicí jednotkou, která je sestavena ze dvou čipů ATmega328p. Jako převodník pro komunikaci s PC využíváme Arduino UNO bez čipu.

Jako pohon využíváme silné digitální servo motory, podrobnosti najdete na konci článku v soupisce materiálů.

Ruka nyní funguje jako malý pomocník, se kterým je zatím víc práce, než dokáže sama udělat. Nyní pracujeme na ovládání pomocí souřadnicového systému (XYZ) tak, že na SD kartu umístíme soubor, který buď ručně napíšeme, nebo jej vytvoříme pomocí našeho programu.

Ruku lze tedy ovládat pomocí softwaru v PC, nebo z SD karty, kterou umístíte do ovládacího panelu, na kterém je umístěna membránová klávesnice a LCD display.

Popis výroby

Začali jsme tím že jsme vytvořili kompletní 3D model, který jsme pak postupně začali tisknout na 3D tiskárně z PLA plastu. Mezitím jsem si připravili desku 80 x 80 cm, na kterou jsme ruku umístili. Pro demonstraci jsme na desku udělali čtverečkovou síť, která slouží jako pomocník pro určování souřadnic.

Po vytištění jsme začali vše montovat dohromady. Některé díly bylo třeba dočistit, takže jsme je dočistili a pak smontovali dohromady. V ruce jsou dvě kuličková ložiska, která jsme taky navrhovali. Jako kuličky do nich jsme použili kuličky do airsoftových zbraní (průměr 6 mm). Tato ložiska jsme pak ještě promazali silikonový olejem. Jako pohon jsme použili několik druhů servo motorů. Nejsilnější serva (60Kg/m) přišla do spodní části ruky.

Robotická ruka - základna

Robotická ruka – základna

Dále jsme použili už slabší motory (50Kg/m).

Jako řídicí jednotku jsme chtěli původně použít Arduino UNO, ale nakonec jsme se rozhodli že si vyrobíme vlastní. V programu Fritzing jsme navrhli desku PCB, kterou jsme si pak fotocestou i vyrobili. Na této desce jsou umístěné dva řídící čipy ATmega328p, krystaly 16 MHz, několik kondenzátorů, stabilizátor napětí (7805), který napájel celý řídicí obvod. Dále jsou na desce umístěné konektory pro připojení motorů, SD karty, membránové klávesnice atd.

Robotická ruka - PCB

Robotická ruka – PCB

Konec ruky je zakončen jakýmsi “upínacím nástavcem”, kam lze napojit několik možných nástavců. Nástavce které my nyní používáme jsou dva druhy extruderů, např. na palačinkové těsto, dále pak tříbodové úchopové klepeto. Do budoucna máme v plánu i nějaké nástavce s čidly a měřícími systémy.

Robotická ruka - extruder

Robotická ruka – extruder

Pro napájení řídicí desky i ruky samotné jsme použili průmyslový spínaný zdroj 7,4V (20A), který dokáže napájet všechny části ruky, plus je tam i malá rezerva pro připojení něčeho dalšího.

Software

Počítačová část

Pro počítač jsme vytvořili software v prostředí Processing 3. V tomto programu lze ovládat naší ruku pomocí souřadnic. V programu si zvolíte nejprve souřadnice XY (na vodorovné ploše), pak zvolíte hodnotu na ose Z (hodnota na svislé ose). Dále je pak možnost zvolit, co se má stát s nástavcem (uchopit x uvolnit). Nasledují pak dvě možnosti jak do ruky příkaz dostat – buď jej exportujete do souboru a ten pak nahrajete na SD kartu, ze které ho pak spustíte pomocí ovládacího panelu na ruce, nebo PC připojíte k ruce přes USB a posíláte příkazy napřímo.

Řídicí jednotka

Pro řídicí jednotku jsme museli napsat dva programy (pro každý čip zvlášť). K jednomu čipu jsou připojená všechna zařízení z ovládacího terminálu a k druhému jsou připojené všechny motory.

Pro čip, který má na starosti ovládací panel jsme použili několik knihoven a to hlavně pro LCD display (20 x 4), pak pro membránovou klávesnici (4 x 4), také pro SD kartu a operace s ní.

Robotická ruka - ovládací panel

Robotická ruka – ovládací panel

Na druhém čipu je umístěn program, který čte úhly v určitém formátu ze sériové linky a následně je zapisuje do serv, která se do dané pozice otočí. Na sériovou komunikaci (RX, TX) je připojen druhý čip nebo počítač (to záleží na tom, jestli chcete ruku ovládat přes PC, a nebo z SD karty).


Soupis použitých součástek

  • 2x Servo motor 60Kg/m
  • 1x Servo motor 48Kg/m
  • 2x Servo motor 13,56Kg/m
  • 1x Robotické servo 17Kg/m
  • Průmyslový spínaný zdroj
  • Součástky pro osazení PCB řídicí jednotky (čipy ATmega328p)
  • Arduino UNO
  • LCD display 20 x 4
  • Membránová klávesnice 4 x 4
  • Modul pro SD karty

      +Pro montáž jsme použili nějaké M3 šroubky a matky různých délek.
      +K uchycení ruky jsem použil M8 x 50 šroub a matky.


V budoucnu bychom na ruku chtěli umístit infračervenou kalibrační sondu, která by pak ruku zkalibrovala pomocí kalibračních bodů na dané podložce. Další naší myšlenkou by bylo ruku předělat na krokové motory, které by měly být daleko přesnější než dosavadní serva.

Pokud by někdo z vás z řad čtenářů měl nějaký nápad, co by se dalo vylepšit, nebo nějaké další využití, či úkol, který by ruka mohla plnit, nebo nějaký zvídavý dotaz, tak budeme rádi když nám je napíšete do komentářů, nebo na arduino.rady@gmail.com. Budeme také rádi, když vás naše práce inspiruje k vytvoření něčeho dalšího, s čím se pak budete moci pochlubit zase na zpět.

Honza Czapek

3 Comments on “Robotická ruka – CCRH MK1

chashitsu
14.4.2017 at 16:08

Super projekt! Zajimalo by me, na kolik vyjdou soucastky (hlavne serva). A hlavne jak jste na tom s vyvojem ovladani pomoci souradnic? Vyrabel jsem 3oseho robota na ovladani telefonu a nejaky typ na prepocitavani souradnich na uhly by se hodil 🙂 https://youtu.be/I5W45G870Jc

Honza Czapek
15.4.2017 at 9:47

Díky! Součástky jsme počítaly a odhadem vyjdou na 12 000,- i s nějakou tou náplní do 3D tiskárny. Pro výpočet souřadnic máme program napsaný v Processingu (lze stáhnout na Google disku, odkaz je v článku), pro výpočet používáme hlavně sinusovu a cosinusovu větu a goniometrické funkce. Program má ještě spoustu možností vylepšení, na kterých teď pracujeme.

Napsat komentář