İçindekiler:

Bluetooth Robotu: 4 Adım
Bluetooth Robotu: 4 Adım

Video: Bluetooth Robotu: 4 Adım

Video: Bluetooth Robotu: 4 Adım
Video: Bluetooth Kontrollü Araç 4WD | Arduino ile Uzaktan Kumandalı Araba Yapımı (HC06/HC05) | (Kod+Şema) 2024, Kasım
Anonim
Bluetooth Robotu
Bluetooth Robotu
Bluetooth Robotu
Bluetooth Robotu
Bluetooth Robotu
Bluetooth Robotu

ARDUINO BLUETOOTH ROBOT ARABA

Proje Tarihi: Ağustos 2018

Proje Ekipmanı:

1. 1 * Özel taban platformu.

2. 4 * DC Motor + Tekerlekler.

3. 3 pil tutuculu 3 * 18650 pil ve 2 pil tutuculu 2 * 18650 pil.

4. 2 * Rocker anahtarları.

5. 2 * Seri olarak 220K dirençli kırmızı LED ışıklar

6. 1 * kit şunları içerir: 2 adet SG90 Servo Motor + 1 adet 2 Eksenli Servo Braket.

7. 1 * Arduino Uno R3

8. 1 * Arduino Sensör Kalkanı V5

9. 1 * L298N Çift Köprü DC Step Motor Sürücüsü

10. 1 * Ultrasonik Modül HC-SR04

11. 1*8 led neo piksel şerit ws2812b ws2812 akıllı led şerit RGB

12. 1 * BT12 Bluetooth Modülü BLE 4.0

13. 1*12V voltaj 4 haneli gösterge

14. 1 * 1602 LCD Ekran artı IIC seri arabirim Adaptör Modülü

15. Sıcak Tutkal, M3 ayırıcılar, vidalar, pullar.

16. Erkek-Dişi 10cm ve 15cm atlama telleri.

17. Düz 1 mm tel yaklaşık 50 cm.

18. Aletler: Havya, minyatür tornavidalar ve pense

19. USB'den Arduino'ya kablo.

GENEL BAKIŞ

Bu, Instructables'a sunduğum ikinci Arduino tabanlı proje, ancak aşağıda açıklanan robot, yaptığım dördüncü robot. Bu robot, WiFi tabanlı önceki bir sürümün üzerine inşa edilmiştir, bu yeni sürüm hem WiFi hem de Bluetooth iletişimine sahiptir. Kameranın doğrudan Android Uygulamasına video akışı yapmasına izin veren WiFi. ve robotun basit kontrolünü sağlamak için Bluetooth. Arduino kodu Bluetooth komutlarını dinler, onları alır, komutun kodunu çözer, komuta göre hareket eder ve son olarak Android Uygulamasına bir yanıt mesajı gönderir. komutun yerine getirildiğini doğrular. Android Uygulamasındaki bu geri bildirime ek olarak. robot ayrıca komutları kendi LCD 16x2 satırlı ekranında tekrarlar.

Robotları inşa ederken felsefem, onların sadece gerektiği gibi çalışmasını sağlamakla kalmayıp, aynı zamanda temiz hatlar ve iyi yapım yöntemleri ile estetik açıdan doğru görünmelerini sağlamaktır. Hem elektronik hem de Arduino kodu için internet tabanlı birçok kaynak kullandım ve bunun için emeği geçenlere teşekkürlerimi sunuyorum.

18650 pillerin seçimi, güç değerlerine ve genellikle eski dizüstü bilgisayarlardan kaliteli ikinci el piller elde etme kolaylığına dayanıyordu. Arduino kartı, L298N Çift Köprü motor kontrolörü gibi standart bir klondur. DC motorlar proje için yeterli ancak doğrudan tahrikli daha büyük 6V DC motorların daha iyi performans göstereceğini hissettim, bu projenin gelecekteki olası bir yükseltmesi.

Adım 1: Fritzing Diyagramı

Fritzing Diyagramı
Fritzing Diyagramı

Fritzing şeması, pillerden iki kutuplu anahtar aracılığıyla Arduino Uno'ya çeşitli bağlantıları gösterir. Arduino Uno'dan L298N Motor Sürücüsüne, LCD 16X2 hat göstergesine, Bluetooth BT12, HC-SR04 sonik verici ve alıcıya, kamera ve sonik verici için servolara ve son olarak L298N'den DC motorlara.

Not: Fritzing şeması GND kablolarından hiçbirini göstermez

Adım 2: İnşaat

Yapı
Yapı
Yapı
Yapı
Yapı
Yapı

YAPI

Temel yapı, M3 stand-off'ları için delikler, L298N, MPU-6050 ve Arduino Uno destekleri için delikler bulunan 240mm x 150mm x 5mm'lik tek bir tabandan oluşuyordu. Kontrol kablolarına ve güç kablolarına izin vermek için tabanda tek bir 10 mm delik açılmıştır. LCD, Arduino Uno ve L298N motor sürücüsünü yukarıdaki şemaya göre bağlı ve kablolanmış yerlerde 10 mm'lik ayırıcılar kullanarak.

Sıcak tutkal kullanılarak alt plakaya monte edilen DC motorlar. Her motorun telleri lehimlendikten sonra L298N motor sürücüsünün sol ve sağ konektörlerine bağlanır. Arduino Uno kartına 5V besleme sağlanabilmesi için L298 motor sürücü jumper'ı kuruldu. Daha sonra 18650 pil tutucuları tabanın alt tarafına yapıştırıldı ve iki kutuplu bir anahtar aracılığıyla Arduino Uno'ya ve L298 motor sürücüsünün 12V ve Toprak girişlerine bağlandı.

Pim 12 ve 13'e bağlı kamera servo kabloları, HC-SR04 servo kablosu Pim 3'e takıldı. Pim 5, 6, 7, 8, 9 ve 11 L298N motor sürücüsüne bağlı. BT12 Bluetooth modülü Arduino Sensor Shield V5 Bluetooth pin çıkışlarına, VCC, GND, TX ve RX'e TX ve RX kabloları ters çevrilerek bağlandı. URF01 pin seti HC-SR04, VCC, GND, Trig ve Echo pinlerini bağlamak için, IIC pin seti ise LCD VCC, GND, SCL ve SCA pinlerini bağlamak için kullanıldı. Son olarak, Pin 4'e ve ilgili VCC ve GND pinlerine bağlı olan 8 LED ışık seti pinleri VCC, GND ve DIN.

Hem pil paketleri hem de güç anahtarları tabanın altına monte edildiğinden, güç anahtarına paralel olarak tek bir kırmızı LED ve 220K direnç eklendi, böylece güç anahtarı açıldığında yanacaktı.

Ekli fotoğraflar, Arduino Uno ve L298N'ye bağlanan M3 standları ile başlayan robotun yapım aşamalarını gösterir, daha sonra bu öğelerin her ikisi de tabana eklenir. HC-SR04 ve Kamera Servolarının üzerine monte edildiği bir platform oluşturmak için pirinç plaka ile birlikte ek M3 standları kullanılır. Ek fotoğraflar, motorların, pil tutucuların ve Neo piksel ışık şeridinin kablolarını ve yapısını göstermektedir.

Adım 3: Arduino ve Android Kodlama

Arduino ve Android Kodlama
Arduino ve Android Kodlama
Arduino ve Android Kodlama
Arduino ve Android Kodlama

ARDUINO Kodlaması:

Arduino 1.8.5 geliştirme yazılımı kullanılarak aşağıdaki program modifiye edildi ve ardından USB bağlantısı ile Arduino Uno kartına indirildi. Aşağıdaki kütüphane dosyalarını bulmak ve indirmek gerekliydi:

· LMotorController.h

· Tel.h

· LiquidCrystal_IC2.h

· Servo.h

· YeniPing.h

· Adafruit_NeoPixel

(Bu dosyaların tümü https://github.com web sitesinde mevcuttur)

Yukarıdaki fotoğraf, Arduino kodunun Arduino Uno kartına indirilmesine izin veren basit bir düzeltmeyi göstermektedir. BT12 modülü TX ve RX pinlerine takılıyken indirme programı her zaman başarısız oluyordu, bu yüzden TX hattına kod indirilirken kopan basit bir kopukluk bağlantısı ekledim ve ardından BT12 iletişimini test etmek için yeniden yaptım. Robot tamamen test edildikten sonra bu kırılabilir bağlantıyı kaldırdım.

Arduino ve Android kaynak kod dosyası bu sayfanın sonunda bulunabilir

ANDROID Kodlama:

Android Studio build 3.1.4'ü kullanma. ve birçok internet bilgi kaynağının yardımıyla, teşekkürlerimi sunarak, kullanıcının kamera için bir WiFi kaynağı ve Robotun hareketlerini kontrol etmek için bir Bluetooth kaynağı seçmesine ve bağlanmasına izin veren bir Uygulama geliştirdim. Kullanıcı arayüzü yukarıda gösterilmiştir ve aşağıdaki iki bağlantı, robotun ve kameranın hareket halindeki videosunu gösterir. İkinci ekran görüntüsü WiFi ve Bluetooth tarama ve bağlantı seçeneklerini gösterir, bu ekran ayrıca Uygulamanın hem WiFi hem de Bluetooth ağına ve cihazlarına erişmek için gerekli izinlere sahip olup olmadığını kontrol eder. Uygulama aşağıdaki bağlantı aracılığıyla indirilebilir, ancak Samsung 10.5 Tab 2 dışında herhangi bir platformda çalışacağını garanti edemem. Şu anda Uygulama, Bluetooth cihazının “BT12” olarak adlandırıldığını varsayıyor. Android Uygulaması, robota basit bir karakter komutları gönderir ancak karşılığında komut onay dizeleri alır.

Adım 4: Sonuçlandırmak

Robotun temel çalışmasının You Tube videosu şu adreste görülebilir:

Robotun Engelden Kaçınma ile ilgili You Tube videosu şu adreste görülebilir:

Ne öğrendim:

Bluetooth iletişimi, BT12'nin sahip olduğu maksimum 10m menzilde bile robotu kontrol etmek için kesinlikle en iyi yöntemdir. 18650 pillerin kullanılması, bir set motorlara güç sağlamak için ve ikinci bir set Arduino, shield, servolar, BT12 ve LCD'ye güç sağlamak için pil ömrünün uzatılmasına büyük ölçüde yardımcı olur. NEO Pixel ışık şeridinden etkilendim, RGB LED'ler parlak ve alındığından beri kusursuz çalışan BT12 Bluetooth modülü gibi kontrol edilmesi kolay.

Sıradaki ne:

Bu proje her zaman Bluetooth İletişiminin kullanımıyla ilgiliydi. Artık çalışan bir modelim var ve robotu Android Uygulaması aracılığıyla kontrol edebiliyorum, denediğim en karmaşık olacak bir sonraki projeye, yani altı ayaklı, bacak başına 3 DOM, Hexapod tarafından kontrol edilecek olan bir sonraki projeye başlamaya hazırım. Bluetooth ve kendisi dikey ve yatay olarak hareket edebilecek kafası aracılığıyla gerçek zamanlı video akışı yapabilecek. Ayrıca robotun engellerden kaçınmasını bekliyorum.

Önerilen: