Tatsumi1453
Kilopat
- Katılım
- 19 Temmuz 2018
- Mesajlar
- 42
Arkadaşlar böyle bir projenin başlangıç kısmındayım ama hata alıyorum. Arduino hangi sürüm kullanmam lazım ve buradaki aldığım hataları nasıl düzeltebilirim? ChatGPT'den yaptım ama fazla bir ilerleme kayıt edemedim. Görme engelli bireyler için akıllı sanat galerisi yapmak istiyorum, basamaklarını da şu şekilde düşündüm: Bir adet mesafe sensörüyle bireyin gelip belirli bir süre durması halinde ses dosyası çalışıp sanat eserini anlatacak ama bireyin gitmesi halinde de anında ses dosyasını çaldırmayı bırakacak. Bu proje üzerinde bağlantılarımı yaptım. Birazdan bağlantılarımı da anlatırım sana ama temelde bunu gerçekleştirmek istiyorum. Şimdi de kullandığım malzemeleri ve bağlantıları nasıl yaptığımı anlatacağım.
1.Mikro SD Kart Modülü: Bu proje kapsamında SD kartımız yüklediğimiz ses kaydımızı içinde barındırması için kullanılacaktır.
CS Bacağına, tercihen 4. Pinimizi bağladık. SD kartı belirtmek içindir.
SCK Bacağına, 13 numaralı pinimizi bağladık. Arduino’nun saat sinyali gönderdiği pindir ve genellikle 13 numaralı pine giriş yapılır.
MOSI Bacağına, 11 numaralı pinimizi bağladık. Arduino’dan SD karta veri gönderme hattıdır.
MISO Bacağına, 12 numaralı pinimizi bağladık. SD karttan Arduino’ya veri gönderme hattıdır.
VCC Bacağına, 5V pinimizi bağladık. Güç girişi pinidir.
GND Bacağına, GND pinini bağladık. Topraklama pinidir.
Genel olarak SD kart hakkında bilgi vermek gerekirse taşınabilir cihazlarda veri depolamak için kullanılan küçük boyutlu bir bellek kartıdır. Genellikle 2 GB ile 1 TB arasında değişen boyutlarda bulunur. Dezavantajlarına bakmamız halinde ise küçük boyutları nedeniyle hassas olabilirler. Düşme veya fiziksel hasar durumunda veri kaybı yaşanabilir.
2.Hoparlör: Bu proje kapsamında hoparlörümüz yüklediğimiz ses kaydımızı dışarı aktarmak için kullanılacaktır.
Artı ucunu 9 numaralı girişe bağladık. Dijital giriş veya çıkış olarak kullanılabilirdir.
Eksi ucunu GND girişine bağladık. Topraklama pinidir.
3.Ultrasonik Mesafe Sensörü: Bu proje kapsamında ultrasonik mesafe sensörümüz girilen mesafe sınırlarında bir cismin olup olmadığı bilgisini vermek için kullanılacaktır. Ultrasonik Mesafe Sensörümüzün
VCC Bacağına, 5V pinimizi bağladık. Güç girişi pinidir.
Trig Bacağına, 3 numaralı pinimizi bağladık. Arduino bu pine kısa bir sinyal gönderir ve sensör ölçümü yapar.
Echo Bacağına, 2 numaralı pinimizi bağladık. Arduino mesafe bilgisini buradan alınır.
GND Bacağına, GND pinini bağladık. Topraklama pinidir.
Genel olarak ultrasonik mesafe sensörü hakkında bilgi vermek gerekirse ultrasonik mesafe sensörü, nesnelerin uzaklıklarını ölçmek için ultrasonik dalgalar kullanan bir cihazdır. Ses dalgalarının bir yüzeyden yansıyarak geri dönme süresi üzerinden mesafe hesaplama prensibine dayanır. Ultrasonik sensörlerin mesafe ölçme kapasitesi, genellikle 2 cm ile 4-5 metre arasında değişir. Dezavantajlarına baktığımızda ses dalgalarının havadaki sıcaklık ve nem gibi çevresel koşullardan etkilenmesi, dalgaların yüzeyden yansıması gibi nedenlerle yanlış okuma yapabilir.
4.Arduino UNO: Bu proje kapsamında Arduino UNO, ultrasonik mesafe sensöründen gelen sinyallerle içinde bulunan kodları çalıştırarak belirli bir mesafece hareketlilik olması durumunda programı çalıştırmak için kullanılacaktır. Genel olarak Arduino UNO hakkında bilgi vermek gerekirse, açık kaynaklı bir mikrodenetleyici kartıdır.
1.Mikro SD Kart Modülü: Bu proje kapsamında SD kartımız yüklediğimiz ses kaydımızı içinde barındırması için kullanılacaktır.
CS Bacağına, tercihen 4. Pinimizi bağladık. SD kartı belirtmek içindir.
SCK Bacağına, 13 numaralı pinimizi bağladık. Arduino’nun saat sinyali gönderdiği pindir ve genellikle 13 numaralı pine giriş yapılır.
MOSI Bacağına, 11 numaralı pinimizi bağladık. Arduino’dan SD karta veri gönderme hattıdır.
MISO Bacağına, 12 numaralı pinimizi bağladık. SD karttan Arduino’ya veri gönderme hattıdır.
VCC Bacağına, 5V pinimizi bağladık. Güç girişi pinidir.
GND Bacağına, GND pinini bağladık. Topraklama pinidir.
Genel olarak SD kart hakkında bilgi vermek gerekirse taşınabilir cihazlarda veri depolamak için kullanılan küçük boyutlu bir bellek kartıdır. Genellikle 2 GB ile 1 TB arasında değişen boyutlarda bulunur. Dezavantajlarına bakmamız halinde ise küçük boyutları nedeniyle hassas olabilirler. Düşme veya fiziksel hasar durumunda veri kaybı yaşanabilir.
2.Hoparlör: Bu proje kapsamında hoparlörümüz yüklediğimiz ses kaydımızı dışarı aktarmak için kullanılacaktır.
Artı ucunu 9 numaralı girişe bağladık. Dijital giriş veya çıkış olarak kullanılabilirdir.
Eksi ucunu GND girişine bağladık. Topraklama pinidir.
3.Ultrasonik Mesafe Sensörü: Bu proje kapsamında ultrasonik mesafe sensörümüz girilen mesafe sınırlarında bir cismin olup olmadığı bilgisini vermek için kullanılacaktır. Ultrasonik Mesafe Sensörümüzün
VCC Bacağına, 5V pinimizi bağladık. Güç girişi pinidir.
Trig Bacağına, 3 numaralı pinimizi bağladık. Arduino bu pine kısa bir sinyal gönderir ve sensör ölçümü yapar.
Echo Bacağına, 2 numaralı pinimizi bağladık. Arduino mesafe bilgisini buradan alınır.
GND Bacağına, GND pinini bağladık. Topraklama pinidir.
Genel olarak ultrasonik mesafe sensörü hakkında bilgi vermek gerekirse ultrasonik mesafe sensörü, nesnelerin uzaklıklarını ölçmek için ultrasonik dalgalar kullanan bir cihazdır. Ses dalgalarının bir yüzeyden yansıyarak geri dönme süresi üzerinden mesafe hesaplama prensibine dayanır. Ultrasonik sensörlerin mesafe ölçme kapasitesi, genellikle 2 cm ile 4-5 metre arasında değişir. Dezavantajlarına baktığımızda ses dalgalarının havadaki sıcaklık ve nem gibi çevresel koşullardan etkilenmesi, dalgaların yüzeyden yansıması gibi nedenlerle yanlış okuma yapabilir.
4.Arduino UNO: Bu proje kapsamında Arduino UNO, ultrasonik mesafe sensöründen gelen sinyallerle içinde bulunan kodları çalıştırarak belirli bir mesafece hareketlilik olması durumunda programı çalıştırmak için kullanılacaktır. Genel olarak Arduino UNO hakkında bilgi vermek gerekirse, açık kaynaklı bir mikrodenetleyici kartıdır.
Kod:
#include <SPI.h>
#include <SD.h>
#include <TMRpcm.h> // Ses çalmak için TMRpcm kütüphanesini dahil ediyoruz
TMRpcm audio; // Ses modülünü başlatıyoruz
const int trigPin = 3; // Ultrasonik sensör trig pini
const int echoPin = 2; // Ultrasonik sensör echo pini
const int speakerPin = 9; // Hoparlör pini
void setup() {
Serial.begin(9600); // Seri haberleşmeyi başlat
// Pinleri doğru şekilde ayarlıyoruz
pinMode(trigPin, OUTPUT); // Ultrasonik trig pini çıkış olarak ayarla
pinMode(echoPin, INPUT); // Ultrasonik echo pini giriş olarak ayarla
audio.speakerPin = speakerPin; // Hoparlör pinini ayarlıyoruz
if (!SD.begin(4)) { // SD kart başlatılıyor, 4 numaralı pin kullanılıyor
Serial.println("SD kart başlatılamadı!");
return;
}
Serial.println("SD kart başlatıldı");
audio.begin(); // Ses modülünü başlatıyoruz
}
void loop() {
long duration, distance;
// Ultrasonik sensör ile mesafe ölçüyoruz
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Echo pininden gelen mesafe verisini alıyoruz
duration = pulseIn(echoPin, HIGH);
distance = (duration / 2) / 29.1; // Mesafeyi santimetre olarak hesaplıyoruz
Serial.print("Mesafe: ");
Serial.println(distance);
// Eğer mesafe 30 cm'den kısa ise ses çalmaya başla
if (distance < 30) {
if (!audio.isPlaying()) { // Eğer ses çalmıyorsa, başlat
audio.play("sanateseri.wav"); // SD karttan ses dosyasını çal
Serial.println("Sanat eseri çalınıyor...");
}
} else {
if (audio.isPlaying()) { // Eğer ses çalıyorsa, durdur
audio.stop(); // Ses çalmayı durdur
Serial.println("Sanat eseri durduruldu.");
}
}
delay(100); // Kısa bir gecikme
}