Spisu treści:
- Krok 1: Wywierć, podłącz i zamontuj silnik
- Krok 2: Mocowanie pojemnika
- Krok 3: Zrób mały otwór na miotacz cukierków
- Krok 4: Konfiguracja Arduino
- Krok 5: Konfiguracja Dlib
- Krok 6: Podłączanie rozpoznawania twarzy do robota
Wideo: Robot rzucający cukierkami z Arduino, częściami z recyklingu i Dlib.: 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:32
Dzięki kilku częściom z recyklingu, osłonie silnika Arduino + i oprogramowaniu komputerowemu Dlib możesz stworzyć działający miotacz cukierków do wykrywania twarzy.
Materiały:
- Drewniana rama
- Laptop/komputer (najlepiej o jeden mocniejszy niż Raspberry Pi!).
- Arduino (najlepiej Uno lub taki, który pasuje do twojej osłony silnika.)
- Osłona silnika Arduino (użyłem starej osłony Adafruit, która nadal jest tutaj sprzedawana)
- Dowolna standardowa kamera internetowa
- Mała podkładka
Części z recyklingu:
- Obudowa (stare metalowe pudełko działa dobrze.)
- Silnik krokowy, silnik prądu stałego ze zdemontowanej starej drukarki.
- Stary zasilacz drukarki
- Dozownik cukierków (duży pojemnik na jogurt).
Wnętrze gotowego produktu będzie wyglądać trochę jak załączony przegląd.
Ostrzeżenie
Upewnij się, że odłączyłeś zasilanie od konfiguracji Arduino/silnika przed okablowaniem/ponownym okablowaniem. Upewnij się, że podłączasz zasilanie z właściwą polaryzacją!
Jest to projekt na poziomie średniozaawansowanym wykorzystujący Arduino i oprogramowanie, które musisz zainstalować lub skompilować na swoim komputerze. Instrukcje mogą się różnić i zostały przetestowane na Ubuntu.
Może być konieczne dostosowanie kodu Arduino do dowolnej używanej osłony silnika, jeśli nie używasz starej osłony silnika Adafruit.
Krok 1: Wywierć, podłącz i zamontuj silnik
Wywierć otwory w obudowie, mocując silnik krokowy, aby kamera internetowa mogła się poruszać na górze, a dozownik obracać się na dole.
Silniki krokowe mogą poruszać się w małych krokach (4 przewody), w przeciwieństwie do silników prądu stałego (2 przewody), które działają do tyłu/do przodu, a nie krokami.
Silnik prądu stałego ma 2 przewody (działa w obie strony), opcjonalny silnik krokowy będzie miał 4 w dwóch cewkach (przetestuj miernikiem rezystancji multimetru, aby zobaczyć, gdzie cewki są podłączone, jak opisano tutaj).
Jeśli używasz starej osłony Adafruit, jak w moim przykładzie, powinieneś podłączyć silnik DC candy spinner do silnika #3, a stepper do pierwszych dwóch silników (#1, #2), jak opisano w ich dokumentacji.
Po podłączeniu podłącz silniki do Arduino Motor Shield podłączonego do Arduino. Aby uzyskać najlepsze wyniki, zaleca się posiadanie drugiego zasilacza do silników, który można podłączyć do wyjścia prądu stałego na brodawce ściennej o wartości 2 USD ze sklepu z używanymi rzeczami.
Krok 2: Mocowanie pojemnika
Odmierz środek pojemnika po jogurcie lub innego dużego plastikowego pojemnika i wywierć uchwyt nieco większy niż koniec silnika.
Przymocuj pojemnik do pudełka za pomocą małej podkładki - przyklej Krazy do dna pojemnika i do wrzeciona silnika elektrycznego.
Pozostaw klej do wyschnięcia na dzień lub dwa, aby w pełni stwardniał - możesz umieścić małą przekładkę między pudełkiem a wirującym pojemnikiem, aby upewnić się, że nie jest krzywy.
Krok 3: Zrób mały otwór na miotacz cukierków
Po prawidłowym zamocowaniu spinnera, użyj końca ostrego noża, aby zarysować mały otwór na cukierki, które należy wyrzucić z końca - powinien znajdować się tuż nad dnem, w miejscu, w którym znajduje się warga.
(Aby uzyskać najlepsze wyniki, na koniec pokrywki dozownika, który będzie dnem, można załadować około 30 cukierków).
Delikatnie obrysuj ostrym nożem, aż wyskoczy, pozostawiając mały otwór (możesz później rozszerzyć otwór w razie potrzeby).
Krok 4: Konfiguracja Arduino
Jeśli jeszcze nie zainstalowałeś oprogramowania Arduino, pobierz je z
www.arduino.cc/en/Main/Software
Każda najnowsza wersja powinna działać.
Przetestuj silnik DC/Stepper z przykładami podanymi w przykładowym kodzie Arduino Shield.
Jeśli używasz tej osłony (nadal dostępnej u niektórych sprzedawców), możesz użyć mojego kodu bezpośrednio:
github.com/programmin1/HowToTrainYourRobot…
Po przetestowaniu i wydaniu cukierków, wpisując „d” w oknie szeregowym Arduino, nadszedł czas, aby połączyć to z aparatem rozpoznawania Dlib.
Krok 5: Konfiguracja Dlib
Dlib (https://dlib.net/) udostępnia otwartą, łatwą w użyciu bibliotekę do rozpoznawania obrazów. Zainstaluj moduł Python Dlib za pomocą:
sudo pip zainstaluj Dlib
- lub -
sudo easy_install Dlib
Poczekaj, aż Dlib się zainstaluje i skompiluje. (Będziesz potrzebował komputera z najlepiej kilkoma gigabajtami pamięci RAM lub będziesz musiał długo czekać i rozszerzyć przestrzeń wymiany). Kod używa również OpenCV dla modułu kamery internetowej, więc uruchom:
sudo apt-get zainstaluj python-opencv
Kroki instalacji mogą się różnić w przypadku korzystania z systemu MacOS lub innych systemów operacyjnych.
Teraz pobierz dane punktów orientacyjnych wykrywania twarzy z
dlib.net/files/shape_predictor_68_face_land…
Rozpakuj go (za pomocą Archive Manager / 7zip) i umieść w HOME/Downloads/shape_predictor_68_face_landmarks.dat
Krok 6: Podłączanie rozpoznawania twarzy do robota
Podłącz USB kontrolujący Arduino do komputera i sprawdź, czy istnieje plik „/dev/ttyACM0” (jest to urządzenie do wysyłania poleceń szeregowych). Jeśli to nie działa, a inny katalog o podobnej nazwie pojawia się w /dev po podłączeniu, zastąp /dev/ttyACM0 w pliku faceDetectThreadCorrelationCV2FaceSmile.py w repozytorium.
Podłącz kamerę internetową (jeśli nie ma wbudowanej kamery internetowej w używanym komputerze) i uruchom ten plik.py w wierszu poleceń lub za pomocą polecenia Uruchom/F5 w edytorze tekstu Geany. Jeśli chcesz używać drugiej/zewnętrznej kamery internetowej na laptopie, możesz zmienić „VideoCapture(0)” na „VideoCapture(1)”, aby użyć drugiej kamery internetowej, którą można umieścić na silniku krokowym na obudowie robota.
Jeśli wszystko pójdzie dobrze, zobaczysz zarys uśmiechu, gdy twarz znajduje się przed kamerą internetową.
Przeczytaj omówienie i kod źródłowy pliku.py, aby zobaczyć, jak działa wykrywanie uśmiechu na podstawie punktów, które Dlib daje w ramach funkcji charakterystycznej twarzy.:)
Zalecana:
Działający licznik Geigera z minimalnymi częściami: 4 kroki (ze zdjęciami)
Działający licznik Geigera z minimalnymi częściami: Oto, według mojej wiedzy, najprostszy działający licznik Geigera, jaki możesz zbudować. Ten wykorzystuje rosyjską lampę Geigera SMB-20, napędzaną przez obwód wysokiego napięcia, zrabowany z elektronicznej packi na muchy. Wykrywa cząsteczki beta i gam
Promiennik rentgenowski z częściami telewizora i lampą próżniową: 5 kroków
Promiennik rentgenowski z częściami do telewizora i lampą próżniową: ten trudny do wykonania pokaże podstawy budowy maszyny rentgenowskiej do majsterkowania z częściami do telewizora i lampami radiowymi
Łatwy, tani i niezawodny czujnik dotykowy z tylko 3 częściami: 3 kroki
Łatwy, tani i niezawodny czujnik dotykowy z tylko 3 częściami: Sterowanie wszelkiego rodzaju urządzeniami elektronicznymi za dotknięciem palca może być całkiem przydatne. W tej instrukcji pokażę, jak zbudować łatwy, ale potężny czujnik dotykowy, który działa bezbłędnie. Wszystko czego potrzebujesz to standardowy tranzystor i dwa
Süßigkeitenautomat - automat z cukierkami: 5 kroków (ze zdjęciami)
Süßigkeitenautomat - Candy Vending Machine: Dieser Automat sentet Süßigkeiten (oder andere Objekte), die die Form von Schokolinsen haben, auf sehr unständliche Weise. Das Ziel war es, einen interessanten Mechanismus zu bauen und unterschiedliche Methoden aus dem Making-Bereic
Jak zrobić łódź powietrzną RC! Z drukowanymi częściami 3D i innymi rzeczami: 5 kroków (ze zdjęciami)
Jak zrobić łódź powietrzną RC! Z częściami drukowanymi 3D i innymi rzeczami: łodzie pneumatyczne są świetne, ponieważ są naprawdę zabawne w prowadzeniu, a także pracują na różnych rodzajach powierzchni, takich jak woda, śnieg, lód, asfalt lub po prostu cokolwiek, jeśli silnik jest wystarczająco mocny. niezbyt skomplikowane, a jeśli masz już elektron