Merhaba arkadaşlar serimin 6. konusu ile devam ediyorum.
bu konuda HC-SR04 Ultrasonik Mesafe Sensörünü kullancağız
kendisinden 3. ve 4. konumda bahsetmiştim.
Aşağıda kullandığım sensörün linkini de bırakacağım.
link
Çalışma Mantığı:
Devre Şeması:
Kodlar:
bu konuda HC-SR04 Ultrasonik Mesafe Sensörünü kullancağız
kendisinden 3. ve 4. konumda bahsetmiştim.
2cm'den 400cm'ye kadar 3mm hassasiyetle ölçüm yapabilen bir ultrasonik sensör çeşididir.
Uzaklık okuma, radar ve robot uygulamalarında kullanılabilir.
Uzaklık okuma, radar ve robot uygulamalarında kullanılabilir.
Aşağıda kullandığım sensörün linkini de bırakacağım.
link
Çalışma Mantığı:
Devre Şeması:
Kodlar:
C:
//radarın dönüşü için gereki olan servo kütüphanesi
#include <Servo.h>.
// Ultrasonik Sinyal pinleri
const int trigPin = 10;
const int echoPin = 11;
// değişkenler
long duration;
int distance;
Servo myServo; /servo motor kontrolü için myservo nesnesini oluşturdum
void setup() {
pinMode(trigPin, OUTPUT); // output belirleme
pinMode(echoPin, INPUT); // input belirleme
Serial.begin(9600);
myServo.attach(12); // servo motor hangi pime bağlı
}
void loop() { //döngü
// 15-165 dereceleri arasında motoru döndürerek radarın dönüş kısmını ayarlar
for(int i=15;i<=165;i++){
myServo.write(i);
delay(30);
distance = calculateDistance();// Her derece için Ultrasonik sensör tarafından ölçülen mesafeyi hesaplamak için bir fonksiyon çağırır
Serial.print(i); // servonun hangi derecede olduğunu yazar
Serial.print(","); //
Serial.print(distance); //mesafeyi yazar
Serial.print("."); //
}
// tersi yöne dönüş
for(int i=165;i>15;i--){
myServo.write(i);
delay(30);
distance = calculateDistance();
Serial.print(i); //birebir aynı işlemler
Serial.print(",");
Serial.print(distance);
Serial.print(".");
}
}
// Ultrasonik sensörün mesafe ölçtüğü fonksiyonu yazalım
int calculateDistance(){
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
//
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH); // echoPini okur ses dalgasının geliş gidiş süresini mikrosaniye cinsinden döndürür
distance= duration*0.034/2;
return distance; //mesafeyi döndürür
}
Eğer projeyi bu şekilde bırakırsanız sadece Serial port üzerinden açı ve mesafe bilgilerini döndüren bir kod yazmış olursunuz.
projenin görselleştirme kısmı öğrenme sürecindeki kişilerin kafasını karıştırabileceği için buraya atmak yerine alta linkini bırakacağım.
Final Görseli:
Kaynakça ve verilerin görselleştirilmesi adımları için:
Okuduğunuz için teşekkürler.
projenin görselleştirme kısmı öğrenme sürecindeki kişilerin kafasını karıştırabileceği için buraya atmak yerine alta linkini bırakacağım.
Final Görseli:
Kaynakça ve verilerin görselleştirilmesi adımları için:
Arduino Radar Project
This is a demo video of the Arduino Radar Project. The Radar uses an ultrasonic sensor for detecting the objects, a small hobbyist servo motor for...
howtomechatronics.com
Okuduğunuz için teşekkürler.