Engelden Kaçan Bluetooth Kontrollü Robot

Kodla Büyü
S.a oncelikle emeginize sağlik.Ben sistemi kurup yüklediğimde araç kendi endine çalışıyor ben yonetemiyorum bluetooth baglantisida kuruluyor neden böyle birşey oluyor
 
S.a oncelikle emeginize sağlik.Ben sistemi kurup yüklediğimde araç kendi endine çalışıyor ben yonetemiyorum bluetooth baglantisida kuruluyor neden böyle birşey oluyor
Hangi kodu yüklediniz birisi kendisi engelden kaçıyor biriside bluetooth kontrollü.
 
//Motor pinlerini tanımlıyoruz.
const int in1 = 6;
const int in2 = 9;
const int in3 = 10;
const int in4 = 11;
//Hız değişkeni atadık.
int hiz = 255;
//Mesafe için değişkenler atadık.
int sure;
unsigned int mesafe;
int sure2;
unsigned int mesafe2;
int sure3;
unsigned int mesafe3;
//Bluetooth verisi için değişken.
int state;
void setup() {
//Motor çıkış pin modları
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
//Mosafe sensörleri pin modları tanımı.
pinMode(2, OUTPUT);
pinMode(3, INPUT);
pinMode(A0, OUTPUT);
pinMode(A1, INPUT);
pinMode(A2, OUTPUT);
pinMode(A3, INPUT);
//Seri ekranı başlatıyoruz.
Serial.begin(9600);
//Led çıkışları
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
//Buzzer pini
pinMode(A5, OUTPUT);
}

void loop() {

if (digitalRead(state) == LOW) {
state = 'S';
}

//Gelen veriyi 'state' değişkenine kaydet
if (Serial.available() > 0) {
state = Serial.read();
}

//Mesafe hesaplaması yapılıyor.
digitalWrite(2, HIGH);
delayMicroseconds(20);
digitalWrite(2, LOW);
sure = pulseIn(3, HIGH);
mesafe = (sure / 2) / 29.1;
//ikici sensör verisi
digitalWrite(A0, HIGH);
delayMicroseconds(20);
digitalWrite(A0, LOW);
sure2 = pulseIn(A1, HIGH);
mesafe2 = (sure2 / 2) / 29.1;
//Üçüncü sensör verisi
digitalWrite(A2, HIGH);
delayMicroseconds(20);
digitalWrite(A2, LOW);
sure3 = pulseIn(A3, HIGH);
mesafe3 = (sure3 / 2) / 29.1;
//Araç hızını belirliyoruz.
if (state == '0') {
hiz = 0;
}
else if (state == '1') {
hiz = 100;
}
else if (state == '2') {
hiz = 180;
}
else if (state == '3') {
hiz = 200;
}
else if (state == '4') {
hiz = 255;
}
//Dönüşler için iç tekeri %50 yavaşlatıyoruz.
int yavasteker = hiz * 50 / 100;
//önde nesne var geri dön.
if (mesafe < 30) {
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(8, HIGH);
digitalWrite(7, HIGH);
analogWrite(A5, 250);
delay(100);
analogWrite(A5, 2);
delay(100);
}
//sağ tarafta nesne var sola git.
else if (mesafe2 < 30) {
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(8, LOW);
digitalWrite(7, HIGH);
}
//sol tarafta nesne var sağa git.
else if (mesafe3 < 30) {
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(8, HIGH);
digitalWrite(7, LOW);
}
/***********************İleri****************************/
else if (state == 'F') {
analogWrite(in1, hiz);
analogWrite(in2, 0);
analogWrite(in3, hiz);
analogWrite(in4, 0);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(8, LOW);
digitalWrite(7, LOW);

}
/***********************Geri****************************/
//Gelen veri 'B' ise araba geri gider.
else if (state == 'B') {
analogWrite(in1, 0);
analogWrite(in2, hiz);
analogWrite(in3, 0 );
analogWrite(in4, hiz);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(8, HIGH);
digitalWrite(7, HIGH);
analogWrite(A5, 250);
delay(100);
analogWrite(A5, 2);
delay(100);
}
/***************************Sol*****************************/
//Gelen veri 'L' ise araba sola gider.
else if (state == 'L') {
analogWrite(in1, hiz);
analogWrite(in2, 0);
analogWrite(in3, 0);
analogWrite(in4, hiz);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(8, HIGH);
digitalWrite(7, LOW);

}

/***************************Sağ*****************************/
//Gelen veri 'R' ise araba sağa gider
else if (state == 'R') {
analogWrite(in1, 0);
analogWrite(in2, hiz);
analogWrite(in3, hiz);
analogWrite(in4, 0);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(8, LOW);
digitalWrite(7, HIGH);
}

/***************************Sol ileri*****************************/
//Gelen veri 'G' ise araba sol ileriye gider
else if (state == 'G') {
analogWrite(in1, hiz);
analogWrite(in2, 0);
analogWrite(in3, yavasteker);
analogWrite(in4, 0);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(8, HIGH);
digitalWrite(7, LOW);
}
/***************************sağ ileri*****************************/
//Gelen veri 'I' ise araba sağ ileriye gider
else if (state == 'I') {
analogWrite(in1, yavasteker);
analogWrite(in2, 0 );
analogWrite(in3, hiz);
analogWrite(in4, 0);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(8, LOW);
digitalWrite(7, HIGH);
}

/***************************Sol geri*****************************/
//Gelen veri 'H' ise araba sol geri gider
else if (state == 'H') {
analogWrite(in1, 0);
analogWrite(in2, hiz);
analogWrite(in3, 0);
analogWrite(in4, yavasteker);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(8, HIGH);
digitalWrite(7, LOW);
}
/***************************sağ geri*****************************/
//Gelen veri 'J' ise araba sağ geri gider
else if (state == 'J') {
analogWrite(in1, 0);
analogWrite(in2, yavasteker);
analogWrite(in3, 0);
analogWrite(in4, hiz);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(8, LOW);
digitalWrite(7, HIGH);
}
/***************************korna çal*****************************/
//Gelen veri 'V' ise korna çal
else if (state == 'V') {
analogWrite(A5, 250);
}
/***************************korna sustur*****************************/
//Gelen veri 'v' ise korna sustur
else if (state == 'v') {
analogWrite(A5, 0);
}

/***************************Ön farları aç*****************************/
//Gelen veri 'W' ise ön farları aç
else if (state == 'W') {
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);

}
/***************************Ön farları kapat*****************************/
//Gelen veri 'w' ise ön farları kapat
else if (state == 'w') {
digitalWrite(4, LOW);
digitalWrite(5, LOW);
}
/***************************Arka farları aç*****************************/
//Gelen veri 'U' ise arka farları aç
else if (state == 'U') {
digitalWrite(8, HIGH);
digitalWrite(7, HIGH);

}
/***************************Arka farları kapat*****************************/
//Gelen veri 'u' ise arka farları kapat
else if (state == 'u') {
digitalWrite(8, LOW);
digitalWrite(7, LOW);
}

/***************************Dörtlüyü aç*****************************/
//Gelen veri 'X' ise dörtlüyü aç
else if (state == 'X') {
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(8, HIGH);
digitalWrite(7, HIGH);
delay(500);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(8, LOW);
digitalWrite(7, LOW);
delay(500);
}
/***************************Dörtlüyü kapat*****************************/
//Gelen veri 'x' ise dörtlüyü kapat
else if (state == 'x') {
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(8, LOW);
digitalWrite(7, LOW);
}
else {
digitalWrite(in1, 0);
digitalWrite(in2, 0);
digitalWrite(in3, 0);
digitalWrite(in4, 0);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(8, LOW);
digitalWrite(7, LOW);
}

}


bu kodu yükledim
 
Hocam size birşey daha soracam arduino ya gücü motor sürücünün 5v kısmından mi aldınız yoksa ayriyeten pil mi kullandiniz
 
Hocam size birşey daha soracam arduino ya gücü motor sürücünün 5v kısmından mi aldınız yoksa ayriyeten pil mi kullandiniz
Motor sürücünün 12v pininden aldım vin pine bağladım. Sizde böyle yapın, voltaj 7v ile 12 v aralığında olmalı. Tabi farklı bir kaynaktan da besleye bilirsin ama ayrı kaynağa bence gerek yok.
 
Hasari hocam bende benzer bir proje yaptım ama pil konusunda sorunu çözemedim. Arduinoyu 9v luk duracell pille besledim, motor sürücüyü de 12v luk girişinden ayrıca bir 9v luk duracell pille besledim çalışmadı. Motor sürücüyü 12v luk girişten 12v 850mA adaptörle beslediğim de çalışıyor. Sen pil olarak ne kullandın? Bana ne tavsiye edersin? Geçen sene bilim fuarında L293D sürücüsüyle engelden kaçan robot yapmıştım pil işi beni rezil etmişti 9v luk duracell piller dayanmıyor.
 
Hasari hocam bende benzer bir proje yaptım ama pil konusunda sorunu çözemedim. Arduinoyu 9v luk duracell pille besledim, motor sürücüyü de 12v luk girişinden ayrıca bir 9v luk duracell pille besledim çalışmadı. Motor sürücüyü 12v luk girişten 12v 850mA adaptörle beslediğim de çalışıyor. Sen pil olarak ne kullandın? Bana ne tavsiye edersin? Geçen sene bilim fuarında L293D sürücüsüyle engelden kaçan robot yapmıştım pil işi beni rezil etmişti 9v luk duracell piller dayanmıyor.
Muhtemelen kullandığın pil yeterli değildir. Ben 2 tane laptop pilini seri bağladım 7.4v - 7.7 v arasında bir gerilim sağlıyor bununla hem motor sürücüyü hemde arduinoyu besliyorum günlerdir çocuklarla üzerinde çalışıyoruz hala ne kadar gider bilmiyorum. Saatlerce bağlı kalmıyor ama epeydir kullanıyoruz. Tavsiye ederim.
 
11.1 v lipo pil ile 2 tane motor sürücü yaktım ama lipoyu tam şarj etmiştim galiba çok hızlı boşalttı.Sonra 18650 bağladım iki tane 3.7 v ama hızlı ve verimli çalışmadı 4 çeker gibi değil.Şu an tekrar lipoyu bağladım
 
Araba hazır
 

Ekli dosyalar

  • IMAG0238.jpg
    IMAG0238.jpg
    142.8 KB · Görüntüleme: 87
11.1 v lipo pil ile 2 tane motor sürücü yaktım ama lipoyu tam şarj etmiştim galiba çok hızlı boşalttı.Sonra 18650 bağladım iki tane 3.7 v ama hızlı ve verimli çalışmadı 4 çeker gibi değil.Şu an tekrar lipoyu bağladım
Bağlantınız paralel ise 3.7 v olur buda düzgün çalıştırmaz çalışsa da yavaş çalışır piller seri olmalı. Sizde böyle bir sorun olabilir.
Video çekmiştim bence yeterince hızlı.
 
Hocam bluetooth kontrollü araba için kod yüklenirken epey bekliyorum ama genede yükleniyor kısmında kalıyor. sonra hata oluşuyor. bluetooth modülünün kablolarını çıkarıp yüklüyorum kod yükleniyor. Telefondan programla bağlanıyorum bletooth ışığı da sabitliyor ama araç çalışmıyor bu defa da. Sorun ne olabilir acaba?
 
Hocam bluetooth kontrollü araba için kod yüklenirken epey bekliyorum ama genede yükleniyor kısmında kalıyor. sonra hata oluşuyor. bluetooth modülünün kablolarını çıkarıp yüklüyorum kod yükleniyor. Telefondan programla bağlanıyorum bletooth ışığı da sabitliyor ama araç çalışmıyor bu defa da. Sorun ne olabilir acaba?
Kodları yüklerken mutlaka bluetooth kabloları çıkarılmalı aksi taktirde kodlar yüklenmez. Bağlandığı halde çalışmıyorsa pinleri kontrol edin bluetooth modülü kimisi 5v kimisi 3.3v ile çalışabiliyor buna dikkat edin. Bazı modülleri de dirençle bağlamak gerekebiliyor. Arduino kartı sorunlu olabilir gibi bir çok etken olabilir.
Serial ekranından gelen değerleri de kontrol edin bakalım doğru değerler geliyor mu?
 
Hasari hocam bu uygulama için nasıl bir Lipo pil önerirsiniz?

Ben de Hasari hocam gibi laptop bataryası bulup içindeki iki adet 18650 pille çalıştırdım gayet iyi çalıştı. Ayrıca öğrencilerden birisinin oyuncak arabasının Li Ion pili 7.4V 900Mah, bu da gayet güzel çalıştırdı. bu değerlere yakın alacağınız li-po piller bence işinizi görür.
 
Hasari hocam bu uygulama için nasıl bir Lipo pil önerirsiniz?
Hocam ben @Y4KUP hocamın söylediği gibi 18650 piller kullanıyorum öğrencilerim içinde bu pillerden tedarik ettim her birine ikişer tane verdim bugünde pil kutusu yapmayı öğreteceğim. Yapabilirsem sizin için video çekmeye çalışacağım. Lipo pil kullanmadığımdan öneride bulunamayacağım.
 
Hocam ben @Y4KUP hocamın söylediği gibi 18650 piller kullanıyorum öğrencilerim içinde bu pillerden tedarik ettim her birine ikişer tane verdim bugünde pil kutusu yapmayı öğreteceğim. Yapabilirsem sizin için video çekmeye çalışacağım. Lipo pil kullanmadığımdan öneride bulunamayacağım.
Hocam çok memnun olurum.
 
hocam bendeki sıkıntı da hc05 ile kontrollü araba yaptık. kornası,ledleri,kendi ekseni etrafında sağa sola dönme yapıyor lakin ne zaman android kontrol üzerinden ileri yada geri tuşuna bazsam bağlantı kopuyor
 
hocam bendeki sıkıntı da hc05 ile kontrollü araba yaptık. kornası,ledleri,kendi ekseni etrafında sağa sola dönme yapıyor lakin ne zaman android kontrol üzerinden ileri yada geri tuşuna bazsam bağlantı kopuyor
HC05 Modülünü kaç volta bağladınız?
 
Geri
Üst