Cześć, czy jesteście nowicjuszami w świecie robotyki czy elektroniki? LUB Szukasz prostego, ale potężnego projektu, który zrobi wrażenie na Twoich przyjaciołach i nauczycielach? To jest to miejsce.
W tym projekcie wykorzystamy moc systemów wbudowanych i elektroniki, aby stworzyć własnego robota, który pomoże nam w utrzymaniu porządku i porządku w domu lub miejscu pracy. Ten robot to prosty czterokołowy odkurzacz, który może inteligentnie omijać przeszkody i jednocześnie odkurzać podłogę. Pomysł jest inspirowany słynnym odkurzaczem Robot Roomba, który pokazano na poniższym obrazku.
Naszym pomysłem jest stworzenie prostego robota od podstaw, który będzie mógł automatycznie omijać przeszkody podczas sprzątania podłogi. Zaufajcie mi ludzie, to fajnie !!
Wymagany materiał i komponenty:
W porządku, więc teraz mamy na myśli ideę naszego automatycznego robota do czyszczenia podłóg i wiemy, co robimy. Spójrzmy więc, gdzie powinniśmy rozpocząć naszą realizację. Aby zbudować robota według naszego pomysłu, musielibyśmy najpierw zdecydować, co następuje:
- Typ mikrokontrolera
- Wymagane czujniki
- Wymagane silniki
- Materiał podwozia robota
- Pojemność baterii
Teraz zdecydujmy o każdym z wyżej wymienionych punktów. W ten sposób nie tylko zbudujesz tego robota sprzątającego w domu, ale także inne roboty, które uderzą w Twoją wyobraźnię.
Typ mikrokontrolera:
Wybór mikrokontrolera jest bardzo ważnym zadaniem, ponieważ ten kontroler będzie działał jak mózg twojego robota. Większość projektów DIY jest wykonywana wokół Arduino i Raspberry Pi, ale nie muszą być takie same. Nie ma konkretnego mikrokontrolera, nad którym możesz pracować. Wszystko zależy od wymagań i kosztów.
Podobnie jak tablet nie można zaprojektować na 8-bitowym mikrokontrolerze i nie ma sensu używać ARM cortex m4 do projektowania elektronicznego kalkulatora.
Wybór mikrokontrolera zależy całkowicie od wymagań produktu:
1. Najpierw określa się wymagania techniczne, takie jak liczba wymaganych pinów I / O, rozmiar pamięci flash, liczba / typ protokołów komunikacyjnych, wszelkie specjalne cechy itp.
2. Następnie dobiera się listę kontrolerów zgodnie z wymaganiami technicznymi. Ta lista zawiera kontrolery różnych producentów. Dostępnych jest wiele kontrolerów specyficznych dla aplikacji.
3. Następnie kontroler jest finalizowany na podstawie kosztów, dostępności i wsparcia ze strony producenta.
Jeśli nie chcesz dużo dźwigać i po prostu chcesz nauczyć się podstaw mikrokontrolerów, a później zagłębić się w to, możesz wybrać Arduino. W tym projekcie będziemy używać Arduino. Wcześniej stworzyliśmy wiele typów robotów wykorzystujących Arduino:
- Robot sterowany DTMF przy użyciu Arduino
- Robot Line Follower wykorzystujący Arduino
- Robot sterowany komputerowo za pomocą Arduino
- Robot sterowany przez WiFi za pomocą Arduino
- Robot sterowany gestami rąk z akcelerometru przy użyciu Arduino
- Samochodzik sterowany przez Bluetooth za pomocą Arduino
Wymagane czujniki:
Na rynku dostępnych jest wiele czujników, z których każdy ma swoje własne zastosowanie. Każdy robot otrzymuje dane wejściowe za pośrednictwem czujnika, który działa jak narządy zmysłów robota. W naszym przypadku nasz robot powinien być w stanie wykrywać przeszkody i omijać je.
Jest wiele innych fajnych czujników, których będziemy używać w naszych przyszłych projektach, ale teraz skupmy się na czujniku podczerwieni i US (czujniku ultradźwiękowym), ponieważ ci dwaj faceci będą dostarczać wizję naszego robota-samochodu. Sprawdź działanie czujnika podczerwieni tutaj. Poniżej pokazano zdjęcia modułu czujnika podczerwieni i czujnika ultradźwiękowego:
Czujnik ultradźwiękowy składa się z dwóch okrągłych oczu, z których jedno służy do przesyłania sygnału US, a drugie do odbierania promieni amerykańskich. Mikrokontroler oblicza czas potrzebny na przesłanie i odebranie promieni. Teraz, skoro czas i prędkość dźwięku są znane, możemy obliczyć odległość za pomocą następujących wzorów.
- Odległość = czas x prędkość dźwięku podzielona przez 2
Wartość dzieli się przez dwa, ponieważ promień porusza się do przodu i do tyłu, pokonując tę samą odległość. Szczegółowe objaśnienie korzystania z czujnika ultradźwiękowego znajduje się tutaj.
Wymagane silniki:
Silników używanych w robotyce jest całkiem sporo, najczęściej używane są silniki krokowe i serwomotory. Ponieważ ten projekt nie ma żadnych skomplikowanych siłowników ani enkodera obrotowego, będziemy używać zwykłego silnika PMDC. Ale nasza bateria jest trochę nieporęczna i ciężka, dlatego używamy czterech silników do napędzania naszego robota, z których wszystkie są tymi samymi silnikami PMDC. Ale zaleca się ustawienie na silniki krokowe i serwomotory, gdy już zaznajomisz się z silnikami PMDC.
Materiał podwozia robota:
Jako student lub hobbysta najtrudniejszą częścią podczas tworzenia robota jest przygotowanie podwozia naszego robota. Problem polega na dostępności narzędzi i materiałów. Najbardziej idealnym materiałem do tego projektu będzie akryl, ale wymaga on wiertarek i innych narzędzi do pracy z nim. Dlatego wybiera się drewno tak, aby każdy mógł z łatwością na nim pracować.
Ten problem całkowicie zniknął z pola po wprowadzeniu drukarek 3D. Planuję kiedyś wydrukować części w 3D i zaktualizować was tym samym. Więc na razie użyjmy drewnianych arkuszy do zbudowania naszego robota.
Pojemność baterii:
Dobór pojemności akumulatora powinien być naszą ostatnią częścią pracy, ponieważ zależy to wyłącznie od podwozia i silników. Tutaj nasza bateria powinna napędzać odkurzacz, który pobiera około 3-5A i cztery silniki PMDC. Dlatego będziemy potrzebować ciężkiej baterii. Wybrałem 12V 20Ah SLAB (uszczelniony akumulator kwasowo-ołowiowy) i jest dość nieporęczny, co sprawia, że nasz robot ma cztery silniki PMDC, aby pociągnąć tego nieporęcznego faceta.
Teraz, gdy wybraliśmy wszystkie nasze wymagane składniki, wyszczególnij je
- Drewniane arkusze na podwozie
- Czujniki IR i US
- Odkurzacz zasilany prądem stałym
- Arduino Uno
- Akumulator 12V 20Ah
- Układ scalony sterownika silnika (L293D)
- Narzędzia robocze
- Przewody łączące
- Entuzjastyczna energia do nauki i pracy.
Większość naszych komponentów jest omówiona w powyższym opisie, wyjaśnię poniżej.
Odkurzacz DC:
Ponieważ nasz robot działa w systemie 12V 20Ah DC. Nasz odkurzacz powinien być również odkurzaczem 12V DC. Jeśli nie wiesz, gdzie je zdobyć, możesz odwiedzić eBay lub Amazon, aby uzyskać odkurzacze do czyszczenia samochodów.
Będziemy używać tego samego, co pokazano na powyższym obrazku.
Sterownik silnika (L293D):
Sterownik silnika jest modułem pośrednim między Arduino a silnikiem. Dzieje się tak, ponieważ mikrokontroler Arduino nie będzie w stanie dostarczyć prądu wymaganego do pracy silnika i może po prostu dostarczyć 40mA, stąd pobór większego prądu spowoduje trwałe uszkodzenie sterownika. Więc uruchamiamy sterownik silnika, który z kolei steruje silnikiem.
Będziemy używać układu scalonego sterownika silnika L293D, który będzie w stanie dostarczyć do 1A, stąd ten sterownik otrzyma informacje z Arduino i sprawi, że silnik będzie działał zgodnie z oczekiwaniami.
Otóż to!! Większość istotnych informacji podałem, ale zanim zaczniemy budować robota, warto zapoznać się z arkuszem danych L293D i Arduino. Jeśli masz jakiekolwiek wątpliwości lub problemy, możesz skontaktować się z nami za pośrednictwem sekcji komentarzy.
Budowa i testowanie robota:
Odkurzacz jest najważniejszym elementem umieszczania robota. Należy go ustawić pod kątem nachylonym jak na rysunku, aby zapewnić prawidłowe działanie podciśnienia. Odkurzacz nie jest sterowany przez Arduino. Po włączeniu robota włącza się również odkurzacz.
Jednym męczącym procesem budowy naszego Robota są prace drewniane. Musimy wyrzeźbić nasze drewno i wywiercić otwory, aby umieścić czujniki i odkurzacz.
Zaleca się przetestowanie robota za pomocą następującego kodu po ustawieniu silnika i sterownika silnika, przed podłączeniem czujników.
void setup () {Serial.begin (9600); pinMode (9, WYJŚCIE); pinMode (10, WYJŚCIE); pinMode (11, WYJŚCIE); pinMode (12, WYJŚCIE); } void loop () {opóźnienie (1000); Serial.print ("naprzód"); digitalWrite (9, WYSOKI); digitalWrite (10, NISKI); digitalWrite (11, WYSOKI); digitalWrite (12, NISKI); opóźnienie (500); Serial.print ("wstecz"); digitalWrite (9, NISKI); digitalWrite (10, WYSOKI); digitalWrite (11, NISKI); digitalWrite (12, WYSOKI); }
Jeśli wszystko działa dobrze, możesz podłączyć czujniki do Arduino, jak pokazano na schemacie obwodu i użyć pełnego kodu podanego na końcu. Jak widać zamontowałem czujnik ultradźwiękowy z przodu i dwa czujniki podczerwieni po obu stronach robota. Radiator jest zamontowany na L293D na wypadek, gdyby układ scalony szybko się nagrzał.
Możesz także dodać kilka dodatkowych części, takich jak ta
Jest to układ zamiatania, który można umieścić na obu końcach przedniej części, który popycha kurz wzdłuż boków do obszaru zasysania.
Ponadto masz również możliwość wykonania mniejszej wersji tego robota odkurzającego, takiego jak ten
Ten mniejszy robot jest wykonany na tekturze i działa na płycie rozwojowej ATMega16. Część odkurzacza została wykonana przy użyciu wentylatora BLDC i zamknięta w pudełku. Możesz to przyjąć, jeśli chcesz utrzymać niski budżet. Ten pomysł również działa, ale nie jest wydajny.
Schemat obwodu:
Kod tego robota odkurzającego można znaleźć w sekcji Kod poniżej. Po nawiązaniu połączenia i wrzuceniu programu do Arduino, robot jest gotowy do działania. Działanie kodu wyjaśniono za pomocą komentarzy. Jeśli chcesz zobaczyć tego robota w akcji, obejrzyj poniższe wideo.
Ponadto planuję również całkowicie wydrukować części w 3D w jego następnej wersji. Zamierzam również dodać kilka fajnych funkcji i skomplikowanych algorytmów, aby obejmowały cały obszar dywanu, były łatwe w obsłudze i kompaktowe. Więc bądź na bieżąco z przyszłymi aktualizacjami.