Spisu treści:

Robot Bluetooth: 4 kroki
Robot Bluetooth: 4 kroki

Wideo: Robot Bluetooth: 4 kroki

Wideo: Robot Bluetooth: 4 kroki
Wideo: Flamewheel - Робот с управлением по bluetooth 4.0 2024, Listopad
Anonim
Robot Bluetooth
Robot Bluetooth
Robot Bluetooth
Robot Bluetooth
Robot Bluetooth
Robot Bluetooth

SAMOCHÓD ROBOTA ARDUINO BLUETOOTH

Data projektu: sierpień 2018

Wyposażenie projektu:

1. 1 * Niestandardowa platforma podstawowa.

2. 4 * silnik prądu stałego + koła.

3. 3 * 18650 baterie z 3 uchwytami na baterie i 2 * 18650 baterie z 2 uchwytami na baterie.

4. 2 * Przełączniki kołyskowe.

5. 2 * czerwone diody LED z szeregowo rezystorami 220K

6. 1 * zestaw zawierający: 2 szt. Silnik serwo SG90 + 1 szt. Wspornik serwomechanizmu 2-osiowego.

7. 1 * Arduino Uno R3

8. 1 * osłona czujnika Arduino V5

9. 1 * Sterownik silnika krokowego DC z podwójnym mostkiem L298N

10. 1 * moduł ultradźwiękowy HC-SR04

11. 1 * 8 ledowa taśma neopikselowa ws2812b ws2812 inteligentna taśma led RGB

12. 1 * moduł Bluetooth BT12 BLE 4.0

13. 1*12 V napięcie 4-cyfrowy wyświetlacz;

14. Wyświetlacz LCD 1*1602 plus moduł adaptera interfejsu szeregowego IIC;

15. Gorący klej, dystanse M3, śruby, podkładki.

16. Przewody połączeniowe męskie-żeńskie 10 cm i 15 cm.

17. Zwykły drut 1mm około 50cm.

18. Narzędzia, w tym: lutownica, miniaturowe śrubokręty i szczypce

19. Kabel USB do Arduino.

PRZEGLĄD

Jest to drugi projekt oparty na Arduino, który przesłałem do Instructables, jednak robot opisany poniżej jest czwartym robotem, który zbudowałem. Ten robot opiera się na poprzedniej wersji, która była oparta na Wi-Fi, ta nowa wersja ma zarówno komunikację Wi-Fi, jak i Bluetooth. Wi-Fi, aby umożliwić kamerze strumieniowe przesyłanie wideo bezpośrednio do aplikacji na Androida. i Bluetooth, aby zapewnić proste sterowanie robotem. Kod Arduino nasłuchuje poleceń Bluetooth, odbiera je, dekoduje polecenie, działa na polecenie, a na koniec zwraca wiadomość zwrotną do aplikacji na Androida. potwierdzenie wykonania polecenia. Oprócz tej opinii na temat aplikacji na Androida. robot powtarza również polecenia na własnym wyświetlaczu LCD 16x2.

Moją filozofią przy budowaniu robotów jest zapewnienie, że nie tylko działają w wymagany sposób, ale także estetycznie wyglądają przy czystych liniach i dobrych metodach konstrukcyjnych. Wykorzystałem szereg zasobów internetowych zarówno dla elektroniki, jak i kodu Arduino i za to dziękuję tym współpracownikom.

Wybór baterii 18650 oparto na ich mocy znamionowej i łatwości uzyskania dobrej jakości baterii używanych zwykle ze starych laptopów. Płytka Arduino jest standardowym klonem, podobnie jak kontroler silnika L298N Dual Bridge. Silniki prądu stałego są odpowiednie dla projektu, ale czułem, że większe silniki 6 V prądu stałego z napędem bezpośrednim będą działały lepiej, co jest możliwą przyszłą aktualizacją projektu.

Krok 1: Schemat spieniania

Schemat frytkowania
Schemat frytkowania

Schemat Fritzing pokazuje różne połączenia z akumulatorów, poprzez dwubiegunowy przełącznik, do Arduino Uno. Od Arduino Uno do sterownika silnika L298N, wyświetlacza LCD 16X2, Bluetooth BT12, nadajnika i odbiornika dźwiękowego HC-SR04, serwomechanizmów do kamery i nadajnika dźwiękowego, a wreszcie od L298N do silników prądu stałego.

Uwaga: Schemat Fritzing nie pokazuje żadnego z kabli GND

Krok 2: Budowa

Budowa
Budowa
Budowa
Budowa
Budowa
Budowa

BUDOWA

Podstawowa konstrukcja składała się z pojedynczej podstawy 240mm x 150mm x 5mm z otworami wywierconymi pod wsporniki M3, otworami na wsporniki L298N, MPU-6050 i Arduino Uno. W podstawie wywiercono pojedynczy otwór o średnicy 10 mm na kable sterujące i zasilające. Przy użyciu 10mm dystansów sterownik silnika LCD, Arduino Uno i L298N jest podłączony i okablowany zgodnie z powyższym schematem.

Silniki prądu stałego zostały zamontowane na płycie dolnej za pomocą gorącego kleju. Po przylutowaniu przewody każdego silnika zostały podłączone do lewego i prawego złącza sterownika silnika L298N. Zworka sterownika silnika L298 została zainstalowana tak, aby można było zapewnić zasilanie 5V dla płytki Arduino Uno. Następnie uchwyty baterii 18650 zostały przyklejone do spodu podstawy i podłączone przez dwubiegunowy przełącznik do Arduino Uno oraz wejść 12 V i uziemienia sterownika silnika L298.

Kable serwa kamery były podłączone do pinów 12 i 13, kabel servo HC-SR04 był podłączony do pinu 3. Piny 5, 6, 7, 8, 9 i 11 były podłączone do sterownika silnika L298N. Moduł Bluetooth BT12 został podłączony do wyprowadzeń Arduino Sensor Shield V5 Bluetooth, VCC, GND, TX i RX, z odwróconymi kablami TX i RX. Zestaw pinów URF01 został użyty do podłączenia pinów HC-SR04, VCC, GND, Trig i Echo, natomiast zestaw pinów IIC został użyty do podłączenia pinów LCD VCC, GND, SCL i SCA. Wreszcie, 8 pinów zestawu świateł LED VCC, GND i DIN jest podłączonych do pinu 4 i powiązanych z nim pinów VCC i GND.

Ponieważ oba akumulatory i ich wyłączniki zasilania zostały zamontowane poniżej podstawy, dodano pojedynczą czerwoną diodę LED i rezystor 220K równolegle z wyłącznikiem zasilania, aby świecił się, gdy wyłącznik zasilania jest włączony.

Załączone zdjęcia pokazują etapy budowy robota począwszy od zamocowania podstawek M3 do Arduino Uno i L298N, następnie oba te elementy są mocowane do podstawy. Dodatkowe wsporniki M3 są używane razem z mosiężną płytą do budowy platformy, na której montowane są serwa HC-SR04 i kamery. Dodatkowe zdjęcia pokazują okablowanie i budowę silników, uchwytów baterii oraz listwy świetlnej Neo pixel.

Krok 3: Kodowanie Arduino i Androida

Kodowanie Arduino i Androida
Kodowanie Arduino i Androida
Kodowanie Arduino i Androida
Kodowanie Arduino i Androida

Kodowanie ARDUINO:

Za pomocą oprogramowania deweloperskiego Arduino 1.8.5 następujący program został zmodyfikowany, a następnie pobrany na płytkę Arduino Uno przez połączenie USB. Niezbędne było odnalezienie i pobranie następujących plików bibliotecznych:

· LMotorController.h

· Drut.h

· LiquidCrystal_IC2.h

· Serwo.h

· NowyPing.h

· Adafruit_NeoPixel

(Wszystkie te pliki są dostępne na stronie

Powyższe zdjęcie pokazuje prostą poprawkę umożliwiającą pobranie kodu Arduino na płytkę Arduino Uno. Podczas gdy moduł BT12 był podłączony do pinów TX i RX, program do pobierania zawsze zawodził, więc dodałem proste przerwanie połączenia na linii TX, które zostało zerwane podczas pobierania kodu, a następnie przerobione w celu przetestowania komunikacji BT12. Gdy robot został w pełni przetestowany, usunąłem ten łamliwy link.

Plik z kodem źródłowym Arduino i Androida można znaleźć na końcu tej strony

Kodowanie ANDROIDA:

Korzystanie z Android Studio w wersji 3.1.4. oraz korzystając z wielu internetowych źródeł informacji, za które serdecznie dziękuję, opracowałem Aplikację, która pozwala użytkownikowi wybrać i połączyć się ze źródłem WiFi dla kamery oraz źródłem Bluetooth do sterowania działaniami Robota. Interfejs użytkownika pokazano powyżej, a dwa poniższe łącza pokazują wideo robota i kamery w akcji. Drugi zrzut ekranu pokazuje opcje skanowania i połączenia Wi-Fi i Bluetooth. Ten ekran sprawdzi również, czy aplikacja ma niezbędne uprawnienia dostępu do sieci i urządzeń Wi-Fi i Bluetooth. Aplikację można pobrać za pomocą poniższego linku, jednak nie mogę zagwarantować, że będzie działać na jakiejkolwiek innej platformie poza Samsung 10.5 Tab 2. Obecnie aplikacja zakłada, że urządzenie Bluetooth nazywa się „BT12”. Aplikacja na Androida wysyła do robota proste komendy jednoznakowe, ale w zamian otrzymuje ciągi potwierdzające komendy.

Krok 4: Podsumowując

Film na You Tube przedstawiający podstawowe działanie robota można obejrzeć pod adresem:

Film z You Tube o unikaniu przeszkód przez robota można obejrzeć pod adresem:

Czego się nauczyłem:

Komunikacja Bluetooth jest zdecydowanie najlepszą metodą sterowania robotem, nawet przy maksymalnym zasięgu 10m, jaki ma BT12. Zastosowanie baterii 18650, jednego zestawu do zasilania silników i drugiego zestawu do zasilania Arduino, tarczy, serw, BT12 i LCD, pomaga znacznie wydłużyć żywotność baterii. Byłem pod wrażeniem paska świetlnego NEO Pixel, diody LED RGB są jasne i łatwe do kontrolowania, podobnie jak moduł Bluetooth BT12, który działa bezbłędnie od momentu jego otrzymania.

Co dalej:

Ten projekt zawsze dotyczył korzystania z komunikacji Bluetooth. Teraz, gdy mam działający model i mogę sterować robotem za pomocą aplikacji na Androida, jestem gotowy do rozpoczęcia następnego projektu, który będzie najbardziej złożony, jaki próbowałem, a mianowicie sześcionożny, 3 DOM na nogę, Hexapod, który będzie kontrolowany przez Bluetooth i być w stanie przesyłać strumieniowo wideo w czasie rzeczywistym przez jego głowicę, która sama będzie mogła poruszać się w pionie i poziomie. Oczekuję również, że robot będzie unikał przeszkód.

Zalecana: