Bu projede çizgi izleyen robot, kenar kaçınma robotu, DTMF robotu, hareket kontrollü robot gibi birkaç popüler robotik proje geliştirdikten sonra bluetooth kontrollü bir robo araba geliştireceğiz. Burada arabayı kontrol etmek için bir Bluetooth modülü kullandık ve aynı zamanda android tabanlı bir uygulamadır.
Bileşenler
- Arduino UNO
- DC Motorlar
- Bluetooth modülü HC-05
- Motor Sürücüsü L293D
- 9 Volt Pil ve 6 volt pil
- Pil Bağlantısı
- Oyuncak araba
Bluetooth kontrollü araç, düğmeler, jest vb. Gibi diğer yöntemler yerine Android cep telefonu kullanılarak kontrol edilir. Burada arabayı ileri, geri, sola ve sağa kontrol etmek için sadece android telefondaki düğmeye dokunmanız yeterlidir. Yani burada verici cihaz olarak android telefon ve alıcı olarak araca yerleştirilen Bluetooth modülü kullanılmaktadır. Android telefon, yerleşik Bluetooth'u kullanarak araca komut iletir, böylece ileri, geri, sola dönme, sağa dönme ve durma gibi istenen yönde hareket edebilir.
Bluetooth Modülü
HC Bluetooth modülü, Bluetooth seri arayüz modülü ve Bluetooth adaptörü olmak üzere iki şeyden oluşur. Bluetooth seri modülü, seri bağlantı noktasını Bluetooth'a dönüştürmek için kullanılır.
Bluetooth modülü nasıl çalıştırılır?
Bluetooth modülünü piyasadan satın aldıktan sonra doğrudan kullanabilirsiniz, çünkü herhangi bir Bluetooth modülü ayarını değiştirmenize gerek yoktur. Yeni Bluetooth modülünün varsayılan baud hızı 9600 bps'dir. Sadece rx ve tx'i kontrolöre veya seri dönüştürücüye bağlamanız ve modüle 5 volt dc regüle güç kaynağı vermeniz yeterlidir.
Bluetooth modülünün iki modu vardır; biri ana mod ve ikincisi bağımlı moddur. Kullanıcı, bazı AT komutlarını kullanarak her iki modu da ayarlayabilir. Hatta kullanıcı AT komutunu kullanarak modül ayarını yapabilir. İşte bazı komut kullanımları verilmiştir:
Öncelikle kullanıcının Bluetooth modülünde EN tuşuna basarak veya EN pininde YÜKSEK seviye vererek 38400 bps baud hızında AT moduna girmesi gerekir. Not: tüm komutlar \ r \ n (0x0d ve 0x0a) ile veya klavyeden ENTER KEY ile bitmelidir.
Bundan sonra, AT'yi modüle gönderirseniz, modül Tamam ile yanıt verir.
AT → Test Komutu
AT + ROLE = 0 → Bağımlı Mod seçimi
AT + ROLE = 1 → Ana Mod seçimi
AT + NAME = xyz → Bluetooth Adını Ayarla
AT + PSWD = xyz → Parola Ayarla
AT + UART =
Örneğin. AT + UART = 9600,0,0
İvmeölçerin Pin Açıklaması
- DEVLET → Aç
- Rx → Seri alıcı pim
- Tx → Seri verici pimi
- GND → zemin
- Vcc → + 5 volt dc
- TR → AT moduna girmek için
Çalışma Açıklaması
Bu projede gösteri için oyuncak araba kullandık. Burada sağa sola hareket eden bir RF oyuncak araba seçtik. Bu arabayı satın aldıktan sonra RF devresini Arduino devremiz ile değiştirdik. Bu arabanın önünde ve arkasında iki doğru akım motoru var. Ön yan motor, araca yön vermek için sola veya sağa dönme anlamında kullanılır (gerçek araba yönlendirme özelliği gibi). Arka yan motor ise arabayı ileri ve geri hareket ettirmek için kullanılır. Android telefondan komut almak için Bluetooth modülü kullanılır ve tüm sistemi kontrol etmek için Arduino UNO kullanılır.
Bluetooth kontrollü araç, android Bluetooth mobil uygulamasında dokunulan düğmeye göre hareket eder. Bu projeyi çalıştırmak için önce Google Play mağazasından Bluetooth uygulamasını indirmemiz gerekiyor. Verileri destekleyen veya gönderebilen herhangi bir Bluetooth uygulamasını kullanabiliriz. İşte doğru çalışabilecek bazı uygulamaların adı.
- Bluetooth Spp pro
- Bluetooth denetleyici
Uygulamayı yükledikten sonra onu açmanız ve ardından Bluetooth cihazını aramanız ve istenen Bluetooth cihazını seçmeniz gerekir. Ve sonra anahtarları yapılandırın. İşte bu projede Bluetooth denetleyici uygulamasını kullandık.
- Bluetooth Denetleyicisini indirin ve yükleyin.
- Mobil Bluetooth AÇIK hale getirildi.
- Şimdi Bluetooth kontrol uygulamasını açın
- Tara basın
- İstenen Bluetooth cihazını seçin
- Şimdi ekrandaki set düğmelerine basarak tuşları ayarlayın. Tuşları ayarlamak için 'set butonuna' basmamız ve aşağıda verilen resme göre anahtarı ayarlamamız gerekir:
Tuşları ayarladıktan sonra tamam'a basın.
Bluetooth kontrol uygulamasında ileri düğmesine dokunduğumuzda, araç ileri yönde hareket etmeye başlar ve bir sonraki komut gelene kadar ilerlemeye devam eder.
Bluetooth kontrol uygulamasında geri düğmesine dokunduğumuzda, araç ters yönde hareket etmeye başlar ve bir sonraki komut gelene kadar geri yönde hareket etmeye devam eder.
Bluetooth kontrol uygulamasında sol düğmeye dokunduğumuzda araç sola doğru hareket etmeye başlar ve bir sonraki komut gelene kadar hareket sola devam eder. Bu durumda ön yan motor, ön yan tekerlekleri sola çevirir ve arka motor ileri yönde çalışır.
Bluetooth kontrol uygulamasında sağ düğmeye dokunduğumuzda araç doğru yönde hareket etmeye başlar ve bir sonraki komut gelene kadar hareket devam eder. Bu durumda ön yan motor, ön yan tekerlekleri sağa döndürür ve arka motor ileri yönde çalışır.
Ve dur düğmesine dokunarak arabayı durdurabiliriz.
Devre Şeması ve Açıklama
Bluetooth kontrollü araç için devre şeması yukarıdaki şekilde gösterilmiştir. Arabayı çalıştırmak için arduino'ya bir Motor sürücüsü bağlanır. Motor sürücüsünün 2, 7, 10 ve 15 numaralı giriş pinleri sırasıyla 12, 11, 10 ve 9 numaralı arduino'nun dijital pinlerine bağlanır. Burada sürücü arabasına, motor sürücüsü 3 ve 6'nın çıkış pinine bir motorun bağlı olduğu ve 11 ve 14'e başka bir motorun bağlandığı iki DC motor kullandık. 6 voltluk bir Akü de motor sürücüsüne güç sağlamak için kullanılır. Bluetooth modülünün rx ve tx pinleri doğrudan Arduino'nun tx ve rx'lerine bağlanır. Bluetooth modülünün vcc ve ground pinleri ise Arduino'nun +5 volt ve gnd'sine bağlanır. Ve Arduino'nun Vin pinindeki devreye güç sağlamak için 9 voltluk bir pil kullanılır.
Program Açıklaması
Programda öncelikle motorlar için çıkış pinleri tanımladık.
#define m11 11 // arka motor #define m12 12 #define m21 10 // ön motor #define m22 9
Ve sonra kurulumda, pin için talimatlar verdik.
geçersiz kurulum () {Serial.begin (9600); pinMode (m11, ÇIKIŞ); pinMode (m12, ÇIKIŞ); pinMode (m21, ÇIKIŞ); pinMode (m22, ÇIKIŞ); }
Daha sonra Bluetooth modülünden seri haberleşmeyi kullanarak girişi okur ve işlemi ona göre gerçekleştiririz.
void döngü () {while (Serial.available ()) {char ch = Serial.read (); str = ch; eğer (str == '1') {Serial.println ("İleri"); ileri (); i = 0; } else if (str == '2') {Serial.println ("Sol"); sağ(); i = 0; } else if (str == '3') {Serial.println ("Sağ"); ayrıldı(); i = 0; }
Sonra farklı araba yönleri için fonksiyonlar yarattık. Yön vermek için kullanılan bu Bluetooth kontrollü arabanın beş koşulu vardır:
Bluetooth kumanda uygulamasında dokunulan düğme |
Ön taraf motorunun yön vermek için çıkışı |
Arka taraf motorunun ileri veya geri yönde hareket etmesi için çıkış |
|||
Buton |
M11 |
M12 |
M21 |
M22 |
Yön |
Dur |
0 |
0 |
0 |
0 |
Dur |
İleri |
0 |
0 |
0 |
1 |
İleri |
Geriye |
0 |
0 |
1 |
0 |
Geriye |
Sağ |
1 |
0 |
0 |
1 |
Sağ |
ayrıldı |
0 |
1 |
0 |
1 |
Ayrıldı |