Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
W tej instrukcji wykonamy bioniczne ramię obsługiwane zdalnie, które jest ramieniem robota podobnym do ludzkiej dłoni z sześcioma stopniami swobody (pięć dla figur i jeden dla nadgarstka). Jest kontrolowany ludzką ręką za pomocą rękawicy, która ma dołączone czujniki zgięcia do informacji zwrotnej palca i IMU do informacji zwrotnej o kącie nadgarstka.
Oto kluczowe cechy ręki:
- Zautomatyzowana ręka z 6 stopniami swobody: pięć na każdy palec kontrolowany przez sznurki przymocowane do serwomechanizmu i ruch nadgarstka ponownie wykonywany za pomocą serwomechanizmu. Ponieważ wszystkie stopnie swobody są kontrolowane za pomocą serwomechanizmu, nie potrzebujemy dodatkowych czujników do sprzężenia zwrotnego.
- Czujniki zgięcia: Pięć czujników zgięcia jest przymocowanych do rękawicy. Te czujniki flex dają informację zwrotną do mikrokontrolera, który służy do kontrolowania ramienia bionicznego.
- IMU: IMU służy do określania kąta nadgarstka ręki.
- Wykorzystywane są dwa evive (mikrokontrolery oparte na Arduino): jeden przymocowany do rękawicy, aby uzyskać kąt nadgarstka i ruch zgięcia, a drugi jest przymocowany do ramienia bionicznego, które steruje serwomechanizmami.
- Obaj eve komunikują się ze sobą za pomocą Bluetooth.
- Dwa dodatkowe stopnie swobody zapewniają ruch płaszczyzny bionicznego ramienia X i Z, które można dodatkowo zaprogramować do wykonywania złożonych zadań, takich jak ROBOTY WSKAZANIA I UMIESZCZANIA.
- Dwa dodatkowe ruchy są sterowane za pomocą joysticka.
Ponieważ masz teraz krótkie pojęcie, co zrobiliśmy w tym bionicznym ramieniu, przeanalizuj szczegółowo każdy krok.
Krok 1: Ręka i przedramię
Nie sami zaprojektowaliśmy całej dłoni i przedramienia. W Internecie dostępnych jest wiele wzorów na rękę i przedramię. Wzięliśmy jeden z projektów od InMoov.
Wykonaliśmy prawą rękę, więc oto części wymagane do wydrukowania w 3D:
- 1x kciuk
- 1x indeks
- 1x wyższa
- 1x Auriculaire
- 1x Pinky
- 1x Bolt_entretoise
- 1x Nadgarstek
- 1x mały nadgarstek
- 1x górna powierzchnia
- 1x palec osłonowy
- 1x robcap3
- 1x robpart2
- 1x robpart3
- 1x robpart4
- 1x robpart5
- 1x obrotowy nadgarstek2
- 1x obrotowy nadgarstek1
- 1x obrotowy nadgarstek3
- 1x przekładnie na nadgarstki
- 1x uchwyt na kabel nadgarstek
Cały przewodnik po montażu znajdziesz tutaj.
Krok 2: Projekt osi Z
Zaprojektowaliśmy niestandardową część przymocowaną na końcu przedramienia, która ma otwory na łożysko i śrubę pociągową. Łożysko służy do prowadzenia ramienia w osi z, a ruch osi sterowany jest za pomocą mechanizmu pociągowo-śrubowego. W mechanizmie śruby pociągowej, gdy śruba jak wał obraca się, nakrętka śruby pociągowej przekształca ten ruch obrotowy w ruch liniowy, powodując ruch liniowy ramienia.
Śruba pociągowa jest obracana za pomocą silnika krokowego, co zapewnia dokładny ruch ramienia robota.
Silnik krokowy, wały i śruba pociągowa są przymocowane do niestandardowej drukowanej części 3D, pomiędzy którą porusza się ramię robota.
Krok 3: Ruch osi X i rama
Jak wspomniano w poprzednim kroku, druga niestandardowa część została zaprojektowana do mocowania silnika krokowego i wałków. Ta sama część ma również otwory na łożysko i nakrętkę do mechanizmu śruby pociągowej dla ruchu osi X. Silnik krokowy i wspornik wału są zamontowane na aluminiowej ramie wykonanej z aluminiowych profili t-slot 20mm x 20mm.
Mechaniczny aspekt projektu jest gotowy, teraz spójrzmy na część elektroniczną.
Krok 4: Uruchamianie silnika krokowego: schemat obwodu sterownika A4988
Używamy evive jako naszego mikrokontrolera do sterowania naszymi serwomechanizmami i silnikami. Oto elementy wymagane do sterowania silnikiem krokowym za pomocą joysticka:
- Joystick XY
- Przewody połączeniowe
- Sterownik silnika A4988
- Bateria (12V)
Powyżej pokazano schemat obwodu.
Krok 5: Kod silnika krokowego
Używamy biblioteki BasicStepperDriver do sterowania silnikiem krokowym za pomocą evive. Kod jest prosty:
- Jeśli odczyt potencjometru na osi X jest większy niż 800 (odczyt analogowy 10 bitów), przesuń chwytak w górę.
-
Jeśli odczyt potencjometru na osi X jest mniejszy niż 200 (odczyt analogowy 10 bitów), przesuń chwytak w dół.
- Jeśli odczyt potencjometru na osi Y jest większy niż 800 (odczyt analogowy 10 bitów), przesuń chwytak w lewo.
- Jeśli odczyt potencjometru na osi Y jest mniejszy niż 200 (odczyt analogowy 10 bitów), przesuń chwytak w prawo.
Kod podano poniżej.
Krok 6: Czujniki Flex
Ten czujnik flex jest rezystorem zmiennym. Opór czujnika zginania wzrasta wraz ze zginaniem się korpusu elementu. Do poruszania palcami użyliśmy pięciu czujników o długości 4,5 cala.
Najprostszym sposobem włączenia tego czujnika do naszego projektu było użycie go jako dzielnika napięcia. Ten obwód wymaga jednego rezystora. W tym przykładzie użyjemy rezystora 47kΩ.
Elastyczne czujniki są podłączone do analogowego pinu A0-A4 na co dzień.
Podany powyżej jest jednym z potencjalnych obwodów dzielnika z eve.
Krok 7: Kalibracja czujnika Flex
"loading="lazy" efekt końcowy był fantastyczny. Udało nam się kontrolować bioniczne ramię za pomocą rękawicy.
Co to jest? Z Arduino Mega w sercu, evive oferuje unikalny interfejs graficzny oparty na menu, który eliminuje potrzebę wielokrotnego programowania Arduino. evive oferuje świat IoT, z zasilaczami, czujnikami i obsługą siłowników w jednym małym urządzeniu przenośnym.
Krótko mówiąc, pomaga szybko i łatwo budować projekty/prototypy.
Aby dowiedzieć się więcej, odwiedź tutaj.