Tamamdır. Uygulamada zaten harfler yazıyormuş oradan aldım . Bağlantılar falan hepsi yine aynı sadece buzzer takmamıştık onunda artısını 8. pine, eksisinide arduinonun GND’sine bağlayabilirsin. Kodu incelemeni öneririm mantığını az çok anlarsın
.
KODLARRRRR;
//HC-SR04 Bağlantısı
int trigPin=3;
int echoPin=4;
//Korna - buzzer Bağlantısı
int korna=8;
//Far Bağlantısı
int onFar=7; //Ön far pini
int arkaFar=2; //Arka far pini
//L298N Bağlantısı
const int motorA1 = 5; // L298N'in IN3 Girişi
const int motorA2 = 6; // L298N'in IN1 Girişi
const int motorB1 = 10; // L298N'in IN2 Girişi
const int motorB2 = 9; // L298N'in IN4 Girişi
int i=0; //Döngüler için atanan rastgele bir değişken
int j=0; //Döngüler için atanan rastgele bir değişken
int state; //Bluetooth cihazından gelecek sinyalin değişkeni
int vSpeed=255; // Standart Hız, 0-255 arası bir değer alabilir
void setup() {
// Pinlerimizi belirleyelim
pinMode(motorA1, OUTPUT);
pinMode(motorA2, OUTPUT);
pinMode(motorB1, OUTPUT);
pinMode(motorB2, OUTPUT);
// 9600 baud hızında bir seri port açalım
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
//Mesafe Ölçme Ayarları
int sure, mesafe;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
sure = pulseIn(echoPin, HIGH);
mesafe = (sure/2) / 29.1;
/*Bluetooth bağlantısı koptuğunda veya kesildiğinde arabayı durdur.
(Aktif etmek için alt satırın "//" larını kaldırın.)*/
// if(digitalRead(BTState)==LOW) { state='S'; }
//Gelen veriyi 'state' değişkenine kaydet
if(Serial.available() > 0){
state = Serial.read();
}
/* Uygulamadan ayarlanabilen 4 hız seviyesi.(Değerler 0-255 arasında olmalı)*/
if (state == '0'){
vSpeed=0;}
else if (state == '1'){
vSpeed=100;}
else if (state == '2'){
vSpeed=180;}
else if (state == '3'){
vSpeed=200;}
else if (state == '4'){
vSpeed=255;}
if (mesafe >=10){ //mesafe 10dan büyük ise
/***********************İleri****************************/
//Gelen veri 'F' ise araba ileri gider.
if (state == 'F') {
analogWrite(motorA1, vSpeed); analogWrite(motorA2, 0);
analogWrite(motorB1, vSpeed); analogWrite(motorB2, 0);
}
/**********************İleri Sol************************/
//Gelen veri 'G' ise araba ileri sol(çapraz) gider.
else if (state == 'G') {
analogWrite(motorA1,vSpeed ); analogWrite(motorA2, 0);
analogWrite(motorB1, 100); analogWrite(motorB2, 0);
}
/**********************İleri Sağ************************/
//Gelen veri 'I' ise araba ileri sağ(çapraz) gider.
else if (state == 'I') {
analogWrite(motorA1, 100); analogWrite(motorA2, 0);
analogWrite(motorB1, vSpeed); analogWrite(motorB2, 0);
}
}
if (mesafe <10){ //mesafe 10dan küçük ise
analogWrite(motorA1, 0); analogWrite(motorA2, 0);
analogWrite(motorB1, 0); analogWrite(motorB2, 0); //Hele Bi Dur Başta
delay(200); //Heh Şimdi Devam Edebilirsin
/***********************Geri****************************/
//Gelen veri 'B' ise araba geri gider.
if (state == 'B') {
analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed);
analogWrite(motorB1, 0); analogWrite(motorB2, vSpeed);
}
/**********************Geri Sol************************/
//Gelen veri 'H' ise araba geri sol(çapraz) gider
else if (state == 'H') {
analogWrite(motorA1, 0); analogWrite(motorA2, 100);
analogWrite(motorB1, 0); analogWrite(motorB2, vSpeed);
}
/**********************Geri Sağ************************/
//Gelen veri 'J' ise araba geri sağ(çapraz) gider
else if (state == 'J') {
analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed);
analogWrite(motorB1, 0); analogWrite(motorB2, 100);
}
/***************************Sol*****************************/
//Gelen veri 'L' ise araba sola gider.
else if (state == 'L') {
analogWrite(motorA1, vSpeed); analogWrite(motorA2, 150);
analogWrite(motorB1, 0); analogWrite(motorB2, 0);
}
/***************************Sağ*****************************/
//Gelen veri 'R' ise araba sağa gider
else if (state == 'R') {
analogWrite(motorA1, 0); analogWrite(motorA2, 0);
analogWrite(motorB1, vSpeed); analogWrite(motorB2, 150);
}
}
/***********************Geri****************************/
//Gelen veri 'B' ise araba geri gider.
else if (state == 'B') {
analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed);
analogWrite(motorB1, 0); analogWrite(motorB2, vSpeed);
}
/**********************Geri Sol************************/
//Gelen veri 'H' ise araba geri sol(çapraz) gider
else if (state == 'H') {
analogWrite(motorA1, 0); analogWrite(motorA2, 100);
analogWrite(motorB1, 0); analogWrite(motorB2, vSpeed);
}
/**********************Geri Sağ************************/
//Gelen veri 'J' ise araba geri sağ(çapraz) gider
else if (state == 'J') {
analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed);
analogWrite(motorB1, 0); analogWrite(motorB2, 100);
}
/***************************Sol*****************************/
//Gelen veri 'L' ise araba sola gider.
else if (state == 'L') {
analogWrite(motorA1, vSpeed); analogWrite(motorA2, 150);
analogWrite(motorB1, 0); analogWrite(motorB2, 0);
}
/***************************Sağ*****************************/
//Gelen veri 'R' ise araba sağa gider
else if (state == 'R') {
analogWrite(motorA1, 0); analogWrite(motorA2, 0);
analogWrite(motorB1, vSpeed); analogWrite(motorB2, 150);
}
/***************************On FAR YAN*****************************/
//Gelen veri 'W' ise On Far Yanar.
else if (state == 'W') {
digitalWrite(onFar, HIGH);
}
/***************************On FAR SON*****************************/
//Gelen veri 'w' ise On Far SONER.
else if (state == 'w') {
digitalWrite(onFar, LOW);
}
/***************************Arka FAR YAN*****************************/
//Gelen veri 'U' ise On Far SONER.
else if (state == 'U') {
digitalWrite(arkaFar, HIGH);
}
/***************************Arka FAR SON*****************************/
//Gelen veri 'u' ise On Far SONER.
else if (state == 'u') {
digitalWrite(arkaFar, LOW);
}
/***************************Dörtlü Yak*****************************/
//Gelen veri 'X' Dörtü Yak.
else if (state == 'X') {
digitalWrite(onFar, HIGH);
digitalWrite(arkaFar, HIGH);
delay(500);
digitalWrite(onFar, LOW);
digitalWrite(arkaFar, LOW);
}
/***************************Dörtlü Sön*****************************/
//Gelen veri 'x' ise Dörlü Sön
else if (state == 'x') {
digitalWrite(onFar, LOW);
digitalWrite(arkaFar, LOW);
}
/***************************Korna Çal*****************************/
//Gelen veri 'V' Korna Çal.
else if (state == 'V') {
digitalWrite(korna, HIGH);
}
/***************************Korna Çalma*****************************/
//Gelen veri 'v' ise Korna Çalma
else if (state == 'v') {
digitalWrite(korna, LOW);
}
/************************Stop*****************************/
//Gelen veri 'S' ise arabayı durdur.
else if (state == 'S'){
analogWrite(motorA1, 0); analogWrite(motorA2, 0);
analogWrite(motorB1, 0); analogWrite(motorB2, 0);
}
}
Kolay gelsin .