Istnieje wiele projektów robotycznych ramion, postanowiliśmy wybrać taki, który ograniczy do minimum ilość drogich serwomotorów kontrolujących jego ruch.
Co potrzebujesz do zbudowania podstawowego robota-żurawia:
- Komplet części drewnianych + śrubki i nakrętki
- Dwa standardowe serwomotory (docelowo trzy)
- Płytka prototypowa + kabelki
- Arduino
- Opcjonalnie – dwa potencjometry do sterowania
- Fragment rurki aluminiowej o średnicy 8mm i długości 35mm
- Opcjonalnie – komplet części drewnianych chwytaka + micro serwo
Pliki do pobrania:
CZĘŚCI DO WYCIĘCIA – WERSJA 1.0
Konstrukcja
Obecna wersja żurawia to zdecydowanie wersja BETA. Jej głównym ograniczeniem jest brak możliwości robota wokół własnej osi. Wynika to z problemu konstrukcyjnego, którego do tej pory nie udało nam się w satysfakcjonujący sposób rozwiązać, związanego z łożyskowaniem silnika obracającego robotem. Ze względu na fakt, że robot mocno wychyla się do przodu w punkcie obrotu podstaw powstają duże naprężenia, aby odtworzyć mechanizm podobny do prezentowanego wyżej uArm, konieczne jest wykorzystanie konkretnego modelu łożyska i dobranie kilku elementów sklejki o różnych grubościach, co zdecydowanie komplikuje projekt, a naszym założeniem jest konstruowanie robotów w możliwie jak najprostszy sposób.
-
Komplet części mechanicznych. -
Skręć podstawę żurawia. -
Do podstawy przymocuj boczne ścianki. W obecnej wersji podstawa robota jest sztywna, nie ma on możliwości wykonywania ruchów obrotowych. -
Przy pomocy małych śrubek dołączonych do serwomotorów przykręć odpowiednie klocki ramienia do plastikowych, sześcioramiennych orczyków. -
Orczyki na silnikach. -
Części górnego ramienia. -
Górne ramię z główką. -
Całe ramię.
Skończona konstrukcja, wraz z chwytakiem, wygląda w następujący sposób:
Elektronika
Każdy serwomotor posiada wbudowany analogowy lub cyfrowy układ sterujący, żeby go uruchomić nie wystarczy tak jak w przypadku silnika DC podłączyć do niego zasilanie, konieczne jest również wygenerowanie odpowiedniego sygnału sterującego typu PWM.
Przewód zasilający serwomotora posiada trzy żyły:
- czerwona – do zasilania +5V
- brązowa (lub czasem czarna) – do masy GND
- pomarańczowa (lub czasem biała) – do sygnału sterującego, podłączamy ją do pinu cyfrowego Arduino oznaczonego jako PWM (ze znakiem ~)
Schemat podłączenia serwomotora do Arduino
Schemat podłączenia dwóch serwomotorów i sterowania przy pomocy potencjometrów.
Oprogramowanie
Oprogramowanie sterujące ramieniem w najprostszy sposób (przy pomocy dwóch potencjometrów) składa się z elementarnych funkcji. Najważniejsza kwestia to poprawne załadowanie biblioteki obsługującej serwomotory (odpowiada za to linia #include <Servo.h>). Pozostała część programu odczytuje dane z potencjometrów i przepisuje je na wartości sterujące serwomotorami z uwzględnieniem faktu, że zakres ruchów potencjometru odczytujemy w skali 0-1023 punktów i musimy przeliczyć go na zakres ruchów serwa, czyli 0-179 stopni, tę operację wykonuje funkcja map().
#include <Servo.h> Servo myservo; // create servo object to control a servo Servo myservo2; // analog pin used to connect the potentiometer int val; // variable to read the value from the analog pin int val2; void setup() { myservo.attach(9); // attaches the servo on pin 9 to the servo object myservo2.attach(10); Serial.begin(9600); } void loop() { val = analogRead(0); // reads the value of the potentiometer (value between 0 and 1023) val = map(val, 0, 1023, 100, 177); // scale it to use it with the servo (value between 0 and 180) myservo.write(val); // sets the servo position according to the scaled value //delay(15); Serial.println(val); val2 = analogRead(1); // reads the value of the potentiometer (value between 0 and 1023) val2 = map(val2, 0, 1023, 0, 179); // scale it to use it with the servo (value between 0 and 180) myservo2.write(val2); // sets the servo position according to the scaled value delay(50); // waits for the servo to get there }
Co dalej? / Modyfikacje
- Jedną z najciekawszych modyfikacji jaką można wykonać przy pomocy zastawu części robota żurawia jest wykonanie konstrukcji zbliżonej do Drawbota. Wystarczy zmontować ramię tak bu poruszało się w poziomej płaszczyźnie. Szczegóły konstrukcji Drawbota.