Herkese merhabalar ! Arduino Dersleri serimizin bu yazısında sizlere ultrasonik sensörün çalışma prensibinden bahsedeceğiz. Sonrasında birlikte ultrasonik mesafe sensörü devreleri kurup, uygulamalarımızı yapacağız.
Bir önceki yazımızda NTC Sensörü kullanımından bahsetmiştik >>> Arduino ve NTC Sensörü ile Sıcaklık Ölçümü
HC-SR04 Ultrasonik Mesafe Sensörü Nedir?
Arduino gibi geliştirme kartlarında kullanılmak üzere tasarlanmış olan bu sensör, gerek ucuz olması, gerek kullanım kolaylığından dolayı çoğu robotik projelerinde yer alan bir mesafe ölçüm sensörüdür.
Üretici firmanın mermiş oldupu bilgiye göre bu sensör 2 cm- 400 cm arasında %1 hata payıyla ölçüm yapabilmektedir. Ama kullanıcı deneyimlerine bakarak konuşursak, en verimli ölçüm yaptığı mesafe 2 – 200 cm arasındadır.
HC-SR04 Ultrasonik Mesafe Sensörü Özellikleri Ve Pin Çıkışları
Teknik Özellikleri
Çalışma Gerilimi | DC 5V |
Çalışma Akımı | 15mA |
Çalışma Frekansı | 40KHz |
Maksimum Ölçüm | 4m |
Minimum Ölçüm | 2cm |
Ölçüm Aralığı | 3mm |
Ölçüm Açısı | 15 derece |
Tetikleyici Giriş Sinyali | 10µS TTL |
Boyut | 45 x 20 x 15 mm |
HC-SR04 Ultrasonik Sensör Pinout
VCC Arduino’ya 5V pin bağladığımız HC-SR04 Ultrasonik mesafe sensörü için güç kaynağıdır.
Trig (Trigger) pini, ultrasonik ses sinyallerini tetiklemek için kullanılır.
Echo pini, yansıtılan sinyal alındığında bir BPM üretir. Pulse uzunluğu, iletilen sinyalin algılanması için geçen süre ile orantılıdır.
GND Arduino topraklarına bağlanmalıdır.
Mesafe Sensörünün Çalışma Prensibi
HC-SR04 sensörünün çalışma prensibi şu şekildedir ;
Sensörün Trig pininden uygulanan sinyal 40 kHz frekansında ultrasonik bir ses yayılmasını sağlar. Bu ses dalgası herhangi bir cisme çarpıp sensöre geri döndüğünde, Echo pini aktif hale gelir. Biz ise bu iki sinyal arasındaki süreyi ölçerek yani sesin yankısını algılayarak cismin sensörden uzaklığını tespit edebiliriz.
Arduino İle HC-SR04 Ultrasonik Mesafe Sensörü Kullanımı
Ultrasonik mesafe sensörünün çalışma prensibini anladığımıza göre Arduino ile örnek bir proje yapabiliriz.
HC-SR04’ü Arduino’ya bağlamak oldukça kolaydır. Sensörü breadboard’unuza yerleştirmenizi öneririm. Çünkü ufak bir temassızlık durumunda sensörünüz doğru veri sağlamayacaktır.
Gerekli Malzemeler;
Yukarıdaki devre şemasında göründüğü gibi VCC pinini Arduino’daki 5V pinine, GND pinini Arduino’daki Toprak pinine bağlayın.
Trig pinini Arduino’nun 9. dijital pine, echo pinini ise arduinonun 10. dijital pine bağlayınız.
Devre bağlantısını yaptıktan sonra, gerekli kütüphaneleri kurma kısmına geçebiliriz.
HC-SR04 Ultrasonik Mesafe Sensörü Kütüphanesini Ekleme
Ultrasonik sensörü tetiklemek ve alınan sinyal darbe genişliğini manuel olarak ölçmek için bir kütüphane kullanacağız. Birden fazla kütüphane mevcut ancak en popüler ve kullanışlı olanı newping kütüphanesini ekleyeceğiz.
İndirdiğiniz kütüphaneyi Arduino ide’ye eklemek için “Taslak > Library ekle > Zip Kitaplığı Ekle…“ sekmelerini takip ederek kütüphane yöneticisini açalım ;
Açılan pencerede indirdiğiniz zip dosyasını bulup seçin. Zip dosyasını seçmeniz yeterli olacaktır, otomatik olarak kütüphane Arduino ide’ye eklenecektir.
Kütüphane dosyanız bu şekilde yüklendiği zaman sol alt köşede “yüklendi” yazısı çıkması gerekir.
Kütüphanenin yüklendiğinden emin olmak için manuel kontrol yapabilirsiniz.
Manüel kontrol nasıl yapılır bilmiyorsanız, Arduino ide’ye nasıl kütüphane yüklenir konulu blog yazımızı buradan okumanızı tavsiye ederim.
Kütüphane ekleme işlemi bittikten sonra alt tarafta verdiğim kodları Arduino’nuza yükleyebilirsiniz.
// This uses Serial Monitor to display Range Finder distance readings // Include NewPing Library #include "NewPing.h" // Hook up HC-SR04 with Trig to Arduino Pin 9, Echo to Arduino pin 10 #define TRIGGER_PIN 9 #define ECHO_PIN 10 // Maximum distance we want to ping for (in centimeters). #define MAX_DISTANCE 400 // NewPing setup of pins and maximum distance. NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); float duration, distance; void setup() { Serial.begin(9600); } void loop() { // Send ping, get distance in cm distance = sonar.ping_cm(); // Send results to Serial Monitor Serial.print("Mesafe = "); if (distance >= 400 || distance <= 2) { Serial.println("Out of range"); } else { Serial.print(distance); Serial.println(" cm"); } delay(500); }
Kodu yükledikten sonra, bir hata olmaz ise serial monitörde bu görüntüyü almanız lazım.
Arduino ile Basit Park Sensörü Yapımı
Diğer bütün sensörler hakkında bilgi almak için yazımızı inceleyin >>> Sensör Nedir? Sensör Çeşitleri Nelerdir?
buzzer yerine servo motor koyarsam programda ne gibi bir degisiklige gitmem gerekli.
Daha once HC-SR04 ve servo motoru ayri ayri kullandim derste ama ikisini nasil kullanacagimi cozemedim. Yardimci olabilirmisniz?
Ardinyo nano olur mu projede
Tabii.
Merhaba ben bu projeyi yaptım birebir aynısı fakat sensörün önüne cisim koyunca ses çıkmıyor. Fakat devreden çok az bir tonda tık tık sesi geliyor
aynı sorun bende de var acaba sorununuzu giderebildiniz mi???
arkadaşlar arduınonuz bozuk olabılır veya güç yetersiz geliyordur
daha çok yolun var
buzzer artı ve eksisini yanlış takmış olabilir misin ?
buzzer’ın artısı eksisi var mı?
tabikide üzerinde işareti de var
Tabii ki. Uzun olan + kısa olan – yani led gibi
Buzzerde Yönler Vardır. + (Artı) – (Eksi)
Daha düşük bir direnç kullanırsanız veya direnci çıkartırsanız ses artar fakat buzzerın ömrü azalır
Direnç kullanmamak veya düşük direnç kullanın
Direnç kullanmadan olması %1 ihtimal!!!
Ben kaç kere denedim. Dirençsiz oluyor. LED lamba da aynen o şekilde. Ama buton, dirençsiz kullanılmaz.
dirençsizde aynı oluyor bende tık tık diye ses çıkarıyor sadece
Evet!
gençlik kodu yanlış
evet kodda bir hata var
Evet Sanırım Bir Sorun Var!
kod sıkıntılı evet bende çalışan kodu paylaşmak istiyorum
#define echoPin 6
#define trigPin 7
#define buzzerPin 8
int maximumRange = 50;
int minimumRange = 0;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(buzzerPin, OUTPUT);
}
void loop() {
int olcum = mesafe(maximumRange, minimumRange);
melodi(olcum*10);
}
int mesafe(int maxrange, int minrange)
{
long duration, distance;
digitalWrite(trigPin,LOW);
delayMicroseconds(2);
digitalWrite(trigPin,HIGH);
delayMicroseconds(10);
digitalWrite(trigPin,LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration / 58.2;
delay(50);
if(distance >= maxrange || distance <= minrange)
return 0;
return distance;
}
int melodi(int dly)
{
tone(buzzerPin, 440);
delay(dly);
noTone(buzzerPin);
delay(dly);
}
Buzzer için kullanılan tone ve notone komutları yerine dijitalWrite komutu kullanın
dijitalWrite (buzzerPin, HIGH);
dijitalWrite (buzzerPin, LOW);
Şeklinde değiştirin. Aktif buzzer ve pasif buzzer farkından kaynaklanır, zayıf ses.
aynı semayı breadboardda yapıyorum kodumuda yukleyıorum ama hcsr04 un vcc ucunu baglıyınca kısa devre yapıyor yardımlarınız beklıyrum
aynı problem bendede oluyor
devrede hatan var demekki
mesafe sensöründeki kabloları dediğinin tersine bağla
ÖNEMLİ!!!
anlatılanları bire bir uyguladım. direnç kullanınca buzzerdan çok zayıf bir ses geliyor. direnci çıkartınca buzzer normal ses çıkartıyor ama normalde olması gereken belirli periyotlarla bip bip yapacağına sadece biiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiip diye sonu gelmeyen bir çınlama duyuluyor. ne yapmam gerekir
100 ohm değerinde bir direnç kullanırsanız problem ortadan kalkacaktır.
100 ohm yerine 10k kullansak olur mu?
10k direnç çok fazla geleceğinden ya hiç ses çıkmayacak, ya da çok az ses çıkacaktır.
abi ben yaptım ama olmuyor.hocama sordum önce sensör e bir program yüklememiz gerekiyormuş.doğrumudur acaba?
Bu projede yer alan HC-SR04 ultrasonik mesafe sensörünün ihtiyaç duyacağı bir program yoktur. Daha detaylı bir anlatım için https://maker.robotistan.com/arduino-dersleri-19-hc-sr04-ultrasonik-mesafe-sensoru-kullanimi/ adresindeki dersimizi inceleyebilirsiniz.
Selam cümleten iyi akşamlar Benim sorum olacak Mesafe sensörü yazılımı yazdım ama sorun cıktı. int olcum = mesafe(maxsimumRange, mımımumRange); nasıl aşarım sorunu LÜTFEN yardım. Saygılarımla.
Selamlar, aldığınız hatayı tam olarak yazabilirseniz yardımcı olmamız daha mümkün olacaktır.
Arduino:1.8.6 Hourly Build 2018/01/03 03:33 (Windows 7), Kart:”Arduino/Genuino Uno”
Çalışmanız programın 2738 bayt (8 %) saklama alanını kullandı. Maksimum 32256 bayt.
Global değişkenler belleğin 32 byte kadarını (1%) kullanıyor. Yerel değişkenler için 2016 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
Taslak yüklenirken bir hata oluştu
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
neden u hata
aynı orun bende de oldu ne yapmalıyım int olcum = mesafe(maximumRange, minimumRange); hata veriyor ne yapmalıyım
Araçlardan port konumunuza bakın belki onda bir yanlışlık olmuş olabilir.
parantezin sonundaki noktalı virgülü kaldırıp sadece virgül koyacaksın
ok teşekkürler sağ olun
LÜTFEN YARDIM EDİN
Arduino:1.8.0 (Windows 10), Kart:”Arduino/Genuino Uno”
Çalışmanız programın 2738 bayt (8 %) saklama alanını kullandı. Maksimum 32256 bayt.
Global değişkenler belleğin 32 byte kadarını (1%) kullanıyor. Yerel değişkenler için 2016 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
avrdude: ser_open(): can’t open device “\\.\COM1”: Sistem belirtilen dosyayı bulamıyor.
Karta yüklenirken sorun oluştu. Tavsiyeler için http://www.arduino.cc/en/Guide/Troubleshooting#upload adresine göz atabilirsiniz.
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
Arduino’nuza kod yüklemeden önce doğru COM portunu seçmemişsiniz. Arduino sürücülerinin doğru yüklendiğinden emin olun ve aşağıda gösterilen menü altından doğru com portunu seçin:
@Kerem İzgöl
Ben İf ile Tradfik lambası falan yapmayı fln planlıyorum da if komudunu yazıyorum ama kod sürekli çalışıyor Sebebi Nedir
Merhaba,ben de trafik lambası yapmayı planladım ve “if” komutu olmadan yaptım.Sadece “digitalWrite” ve “delay” komutlarıyla yapabilirsin.Nasıl yapacağını bilmiyorsan yazdığım kodu atabilirim:
int a = 9;
int b = 10;
int c = 11;
void setup() {
pinMode(a,OUTPUT);
pinMode(b,OUTPUT);
pinMode(c,OUTPUT);
}
void loop() {
digitalWrite(a,HIGH);
delay(15000);
digitalWrite(a,LOW);
delay(100);
digitalWrite(b,HIGH);
delay(2000);
digitalWrite(b,LOW);
delay(100);
digitalWrite(c,HIGH);
delay(10000);
digitalWrite(c,LOW);
delay(100);
}
ve eğer istersen süreyi değiştirebilir veya pin ve kod tanımlamasını farklı adlandırabilirsin.Ben bir oyuncak arabayla test ettim ve gerçek bir trafik lambası gibi çalıştığını gördüm.👍İyi çalışmalar!😀
belirtilenleri bire bir uyguladım ama ilk önce kesintisiz bir bip sesi duyuluyor ve yaklaştıkça kesik kesik gelmeye başlıyor.İlk önce 50 cm uzaklıkta bir cisim yoksa sessiz olması gerekmezmi?
sadece com 4 var bir şey olurmu ve birde ben windows 10 kullanıyorum
COM4 veya başka bir numara olması tamamen sizin bilgisayarınız ile alakalıdır. Sizin Arduino’nuzun bağlı olduğu COM portunu seçmelisiniz. Aygıt yöneticisi’ne girip buradan bulmanız da mümkündür:
teşekkürler robotistan çok teşekkürler
Merhabalar aynı devreyi şemadaki gibi kurmama rağmen gücü verdiğim zaman arduino nun ışıkları düşük seviyede yanıp sönüyor, bilgisayara taktığımda ise tanımıyor. Ardunio üstündeki sensöre bağlı olan jumperları çıkarınca bilgisayar arduino yu algılıyor. Sebebi nedir sizce?
Bağlantılarınızdan kaynaklı bir sorun olabilir. Bağlantılarınızdan emin iseniz, kullandığınız sensörün bozuk olma ihtimali de mevcuttur.
Bu yazılımı mblock ta aynısını nasıl yapabilirim yardımcı olabilirmisiniz şemasını yazıp atabilirmisiniz :))
kod nasıl yükleniyor
https://maker.robotistan.com/arduino-yazilim-kurulum/
merhaba ben buzzerr yerine kulaklık takmak istiyorum kulaklığı nasıl bağlayabilirim ve kodda ne gibi değişiklik yapmam gerekiyor
Kulaklığın empedansı buzzer’a göre daha yüksek olacağından büyük ihtimalle oldukça düşük seviyede ses çıkışı alacaksınız. Bu durumun önüne geçmek için bir amfi kartı kullanabilirsiniz.
https://www.robotistan.com/23w-mini-amfi-devresi-pam8403 bu kartı aldım ama neyi nereye bağlayacağım çözemedim kulaklık nereye bağlanacak kart komutu nasıl alacak
5V bağlantısının olduğu taraf giriş tarafıdır. L ve R sırasıyla sol ve sağ kanal girişlerini gösterir. L ve R girişlerinin ortasındaki bağlantı toprak (GND) içindir. Kartın OUT yazan kısmındaki L ve R ile gösterilen kısım ise sırasıyla sol ve sağ çıkışları gösterir. Bu tarafta her bir hoparlörün + ve – pinleri ayrı olarak yer almaktadır.
teşekkürler
Merhaba ikinci kırmızı jumperı takınca arduinonun ışıkları sönüyor çıkarınca tekrar yanıyor ben ne yapacağım neden böyle oluyor
Bahsettiğiniz durum ters gerilim veya kısa devreye benziyor. HC-SR04 modülünüzdeki VCC ve GND pinlerinin ters olmadığına dikkat ediniz.
Dediğinizi yaptım şimdi buzzerden çok ses çıkıyor tık tık diye yavaş bir şekilde
Şey az önce dediğim şey düzeldi şimdi ben bide yaklaştıkça ledin yanıp sönmesi ve uzaklanşınca tamamen sönmesini istiyorum onu nasıl yapıcam
Bu konuyu araştırdım.
Şöyle bir şey yapabilirsiniz 🙂
malzemeler:
ARDUINO UNO
4 ADET LED (istediğiniz renk)
5 ADET 220 OHM DİRENÇ
1 ADET BUZZER
BREAD BOARD
YETERİ KADAR JUMPER KABLO (erkek olmasını öneririm)
FRİTİZİNG PROJESİ (veya devre şeması):
Buradan indirin 🙂 :
https://www.sendspace.com/file/n39cb5
kopyala yapıştır
KODLAR 🙂 🙂 :
const int trigger_pin = 12;
const int echo_pin = 13;
const int aled = 2;
const int bled = 3;
const int cled = 4;
const int dled = 5;
const int buzzer = 6;
int sure ;
int mesafe ;
void setup() {
pinMode(aled , OUTPUT);
pinMode(bled , OUTPUT);
pinMode(cled , OUTPUT);
pinMode(dled , OUTPUT);
pinMode(buzzer , OUTPUT);
pinMode(trigger_pin , OUTPUT);
pinMode(echo_pin ,INPUT);
Serial.begin(9600);
}
void loop()
{
digitalWrite(trigger_pin , HIGH);
delayMicroseconds(1000);
digitalWrite(trigger_pin , LOW);
sure = pulseIn(echo_pin , HIGH);
mesafe = (sure/2) / 29.1;
if (mesafe <= 10)
{
digitalWrite(aled , HIGH);
digitalWrite(buzzer , HIGH);
delay(250);
digitalWrite(aled , LOW);
digitalWrite(buzzer , LOW);
}
else if (mesafe <=25)
{
digitalWrite(bled , HIGH);
digitalWrite(buzzer , HIGH);
delay(500);
digitalWrite(bled , LOW);
digitalWrite(buzzer , LOW);
}
else if ( mesafe <=50)
{
digitalWrite(cled , HIGH);
digitalWrite(buzzer , HIGH);
delay(750);
digitalWrite(cled , LOW);
digitalWrite(buzzer , LOW);
}
else
{
digitalWrite(dled , HIGH);
delay(1000);
digitalWrite(dled , LOW);
}
}
projeniz böyle
merhaba
arduino 1.8.2 programını kullanıyorum ve bilgisayarım windows 8 (windows 10 da da denendi)
Fakat ;
Çalışmanız programın 2738 bayt (8 %) saklama alanını kullandı. Maksimum 32256 bayt.
Global değişkenler belleğin 32 byte kadarını (1%) kullanıyor. Yerel değişkenler için 2016 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
böyle bir hata alıyorum com portu sectim COM6 olarak görüyor bende. Sürücülerim güncel,
bağlantı kablosunu da değiştirdim hatta sorun karttadır diye yenisini aldım ancak bir türlü düzelmedi.
Yeni yazılım mı gerekiyor yoksa başka bir çözümü var mı ?
Şimdiden teşekkürler
gerek kalmadı teşekkürler yinede 🙂
Aynı sıkıntıyı bende yasıyorum. Siz çözdünüz galiba. Nasıl çözdünüz acaba?
Yazmış olduğunuz mesaj bir hata mesajı değildir, bu yazılar normal kod yükleme prosedürü içersinde görmeniz gereken yazılardır.
Eğer projede sorun çıkarsa özür dilerim 🙁 🙁
İşinize yaramasını diliyorum 🙂
denetlediğim zaman Arduino:1.8.1 (Windows XP), Kart:”Arduino/Genuino Uno”
collect2.exe: error: ld returned 5 exit status
exit status 1
Error compiling for board Arduino/Genuino Uno.
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
hatasını alıyorum yardım edin lütfen
Arduino IDE programını tekrar yüklemeyi deneyin.
gençler nadirde olsa HCSR-04 sensörü için bilgisayarrın programı okumuyo bunun yüzünden sensör için kütüphane istiyo
Devre enerji geldiği zaman biranda sensör dereye giriyor ve uzun ne olursa olsun 0 cm yazıyor.. Ben cm yaklaştıkca hem led yanancak 15 cm altına
düştükçe buzzerden ses gelmesini istiyorum .. Ama devreye enerji verilince biranda sensör 0 cm diyor .. nasıl düzeltilir ..
Bu kısımda yazım hatanız var.”üretmeseler” yazılması gereken yere “üremeseler” yazılmış.
“Buzzer dediğimiz devre elemanını ufak bir hoparlör olarak düşünebiliriz. Hoparlörler kadar yüksek ve detaylı ses üremeseler de, “bip” leme seslerini çıkartmada oldukça başarılıdırlar.”
Uyarınız için teşekkürler, hemen düzeltiyorum.
İyi günler, ben aynı mesafe sensörünü pro mini ile yapmaya çalışıyorum, Bilgisayara bağlıyken normal çalışıyor. Ancak pil bağladığımda önünde engel yokken dahi engel varmış gibi uyarı veriyor.
Pro Mini’nizi nasıl bir güç kaynağı ile besliyorsunuz?
kali linux 2017.1 versiyonuna nasıl arduinı ıde kurabilirim yada kali linuxun hangi versiyonunda arduino ıde var
Teşekkürler!!
merhaba bunu arabanın neresine koycaz ve sesi güçlendirmek için ne yapabiliriz
sesi güçlendirmek için amfi kartı takabilirsin
merhaba burada vermiş olduğunuz park sensörü devresi,ndeki HC-SR04 ultrasonik mesafe sensörü parçasının yerine endüktif sensörü baglantısı yapılsa olurmu olursa kaç metre mesafeyi okur teşekkürler
Malesef dediğiniz şekilde bir kullanım mümkün olmayacaktır. İndüktif sensörler (örn. LJ18A3-8-Z/BY ve LJ12A3-4-Z/BX) metal cisimleri algılamada kullanılır ve algılama mesafeleri ürün açıklamalarında da görebileceğiniz üzere 1cm’den bile kısadır. Ayrıca cisim algılandığında sensörün çıkış pini doğrudan lojik 1 olacaktır, yani mesafeye göre artıp azalan bir sonuç elde etmeniz mümkün değildir.
sensörden uzaklaşınca çalmasını nasıl sağlarız
int melody(int dly) fonksiyonunda yer alan delay(dly); satırlarını delay(50-dly); olarak değiştirin.
teşekkürler
merhaba ben devreyi de düzgün kurdum kodunuzu da girdim fakat sadece ilk on saniye çalıştı
ardinoda hangi kütüphaneyi seçmeliyim
ardunio araçlar kısmındaki port gözükmüyor
Arduino:1.8.5 (Windows 8.1), Kart:”Arduino/Genuino Uno”
C:\Users\Ä°lker\Downloads\Trafik_Lambas__kodu\ultrasonik_park_sensoru.ino: In function ‘void setup()’:
ultrasonik_park_sensoru:11: error: redefinition of ‘void setup()’
C:\Users\Ä°lker\Downloads\Trafik_Lambas__kodu\Trafik_Lambas__kodu.ino:5:6: note: ‘void setup()’ previously defined here
C:\Users\Ä°lker\Downloads\Trafik_Lambas__kodu\ultrasonik_park_sensoru.ino: In function ‘void loop()’:
ultrasonik_park_sensoru:23: error: redefinition of ‘void loop()’
C:\Users\Ä°lker\Downloads\Trafik_Lambas__kodu\Trafik_Lambas__kodu.ino:11:6: note: ‘void loop()’ previously defined here
HATA ALIYORUM !!!
exit status 1
redefinition of ‘void setup()’
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
buzzerden çok ses çıkıyor ne yapmam lzm
buzzer’ın eksi bacağına 330 ohm’luk direnç bağlayarak bu sorunu giderebilirsin
mesafe ölçmesi çok dengesiz belirli santimlerde bir kere ötüyor onun duşında ötmüyor tır tır ses geliyor sorun nedir acaba
merhaba buzzeri bağladığı yeri anlamadım buzzer + – demi yoksa siyah ve kırmızı olan kablo mu
Buzzer’ın + ucu Arduino’nun 8 numaralı dijital pinine bağlanıyor.
Buzzerdan daha yüksek seviyede ses almak için ne yapabiliriz, ya da daha yüksek ses alabiliyor muyuz?
Transistör olarak 2N2222 veya BC547 kullanarak şuradakine benzer bir devre kurabilirsiniz: https://www.robotistan.com/Data/EditorFiles/%C3%9Cr%C3%BCnler%20A%C3%A7%C4%B1klama/35FiT.png?1474618175857
Şey peki daha az direnç kullansam ses artmaz mı, buzzer ı bozmamam için ne kadar direnç kullanabilirim en az bunu da cevaplarsanız çok sevinirim
Daha düşük direnç -> buzzer üzerinden daha fazla akım geçmesi, dolayısıyla daha yüksek ses. Arduino en fazla 50mA akım sağlayabilir, bu değeri aşmamanız buzzer’dan daha çok Arduino’nun zarar görmemesi içindir. En sağlıklı yöntem ise vermiş olduğum transistörlü sürücü devresini kurmaktır.
Lütfen Yardım Edin HOCAM!!!
Arduino:1.8.5 (Windows Vista), Kart:”Arduino/Genuino Uno”
avr-g++: error: CreateProcess: No such file or directory
exit status 1
Error compiling for board Arduino/Genuino Uno.
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
Bütün herşeyi Yapmama Rağmen Bu Hatayı Veriyor
Arduino IDE’yi tekrardan yüklemeyi deneyin.
malesef buzzerin girdiği yer görünmüyor ve ben yapamıyorum lütfen yardımcı olurmusunuz
Buzzer’ın + ucunu Arduino’nun 8 numaralı dijital pinine, – ucunu da 100-330 Ohm arası değerinde bir direnç ile GND pinlerinden herhangi birisine bağlayın.
sensördeki ölçümü nasıl sesli duyabilirim kulaklıga mesela 3 metre 2 metre diye nasıl yaparım yardımcı olurmusunuz
Arduino nano ile yapılabilir mi?
Yapılabilir.
devreleri kuruyorum ama karta yüklenirken sorun oluştu diyor
Aldığınız hatayı tam olarak yazarsanız daha kolay bir şekilde yardımcı olabilirim.
Kodları yazdıktan sonra return 0; da yanlış veriyor nasıl düzeltilir
ya nasıl kopyalanıyodu söylesenize
Kopyalama ctrl +c yapıştırma ise ctrl + v dir
Arduino:1.8.5 (Windows 10), Kart:”Arduino/Genuino Uno”
C:\Users\Bayhantm\Desktop\arduino kodlamalar\sketch_apr02a\park sensori\sketch_apr02a\sketch_apr02a.ino: In function ‘void setup()’:
sketch_apr02a:8: error: ‘trigPin’ was not declared in this scope
pinMode(trigPin, OUTPUT);
^
sketch_apr02a:9: error: ‘echoPin’ was not declared in this scope
pinMode(echoPin INPUT);
^
In file included from sketch\sketch_apr02a.ino.cpp:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:44:16: error: expected ‘)’ before numeric constant
#define OUTPUT 0x1
^
C:\Users\Bayhantm\Desktop\arduino kodlamalar\sketch_apr02a\park sensori\sketch_apr02a\sketch_apr02a.ino:10:20: note: in expansion of macro ‘OUTPUT’
pinMode(buzzerPin OUTPUT);
^
sketch_apr02a:10: error: too few arguments to function ‘void pinMode(uint8_t, uint8_t)’
pinMode(buzzerPin OUTPUT);
^
In file included from sketch\sketch_apr02a.ino.cpp:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:133:6: note: declared here
void pinMode(uint8_t, uint8_t);
^
C:\Users\Bayhantm\Desktop\arduino kodlamalar\sketch_apr02a\park sensori\sketch_apr02a\sketch_apr02a.ino: In function ‘void loop()’:
sketch_apr02a:18: error: ‘meleodi’ was not declared in this scope
meleodi(olcum*10);
^
C:\Users\Bayhantm\Desktop\arduino kodlamalar\sketch_apr02a\park sensori\sketch_apr02a\sketch_apr02a.ino: In function ‘int mesafe(int, int)’:
sketch_apr02a:23: error: ‘trigPin’ was not declared in this scope
digitalWrite(trigPin,LOW);
^
sketch_apr02a:28: error: ‘echoPin’ was not declared in this scope
duration=pulseln(echoPin,HIGH);
^
sketch_apr02a:28: error: ‘pulseln’ was not declared in this scope
duration=pulseln(echoPin,HIGH);
^
sketch_apr02a:29: error: ‘distence’ was not declared in this scope
distence=duration/58.2;
^
merhabalar ben böle bir hata aldım hatayı bulamadım yardımcı olurmusunuz
exit status 1
‘trigPin’ was not declared in this scope
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
Arduino IDE yazılımınız ile ilgili bir sorun gibi görünüyor, silip tekrardan yüklemeyi dener misiniz?
sure = pulseIn(echoPin, HIGH);
böyle hata veriyor
merhaba geçersiz kütüpahane hatası veriyor nasıl düzeltebilim?
selamlar hocam ben buzzer yerine başka ne tür çihazlar koyabilirim
Sensörün önünde bir şey yokken buzzer ötüyor. Nasıl düzelte bilirim
kodunuz süper çalışıyor lcd (2×16) bir türlü basılmıyor lcd sinide verirmisiniz acaba başka sitelerde hiç biri çalışmıyor
Bu program sorunsuz demi gerekli malzemeleri alıp yapsam sorunsuz çalışır ?
Bu program proje olarak kullanmanızdan ziyade, Arduino programlama öğrenebilmeniz için yazılmıştır. Mükemmel çalışacağının garantisini veremeyiz, fakat doğru şekilde montaj yapmanız ve programlamanız sonucunda buzzer, ultrasonik sensör gibi devre elemanlarının çalışmasını öğrenmenize yardımcı olacak şekilde temel bir kullanım sunacaktır.
arduıno programında 1.8.5 surumunde araclarda port bolumunun ustu silik ve gırılmıyor yardım edın lutfen
Sürücüleri yüklediniz mi?
Arduino UNO Sürücüleri Bilgisayara Nasıl Yüklenir?
Klon Arduino UNO Sürücüleri Nasıl Yüklenir? (CH340 Çipli)
Uygulamayı yazan Kerem İZGÖL’ e teşekkür ederim.
Park sensörü uygulaması için mevcut kodları düzenleyerek aşağıdaki kodları kullandım.
ÖZELİKLERİ:
Mesafe 80cm den itibaren algılayarak ötmeye başlıyor.
Buzzer frekansı 700 yapıldı.
Mesafe 5cm den(dly= 5×7=35 dly <35 kısmı) aşağıya indiğinde sesin sürekli çıkması sağlanıyor.
mesafe fonksiyonunda 10 çarpanı yerine 7 kullanıldı. mesafe(olcum * 7);
Bu şekilde daha iyi olduğunu düşünüyorum. Yardımda bulunan öğretmenim Ertaç ÖZENÇ'e de teşekkürlerimi sunarım.
İyi çalışmalar.
Kadir DİNÇ
Aydın Mesleki ve Teknik Anadolu Lisesi
10-B Sınıfı Öğrencisi
Uygulamayı yazan Kerem İZGÖL’ e teşekkür ederim.
Park sensörü uygulaması için mevcut kodları düzenleyerek aşağıdaki kodları kullandım.
ÖZELİKLERİ:
Mesafe 80cm den itibaren algılayarak ötmeye başlıyor.
Buzzer frekansı 700 yapıldı.
Mesafe 5cm den(dly= 5×7=35 dly = maxrange || distance <= minrange)
return 0;
return distance;
}
int melodi(int dly)
{
tone(buzzerPin, 700);
delay(dly);
if (dly35)
{
noTone(buzzerPin);
delay(dly);
}
}
Teşekkürler!
BUzzer bradboarda nasıl yerleştiriyorsunuz benimki yerleşmiyor
Erkek jumper kabloları ile yerleştiriyorsunuz
ben erkek-erkek kullanmak yerine dişi-erkek kullandım.Sorunsuz çalışıyor.
ben buraya hoperler bağlarsa ne olur bi yardım edermisiniz
Küçük boyutlu bir hoparlör bağlarsanız büyük ihtimalle bir sorun olmayacaktır. Fakat yine de burada verilen şekilde bir sürücü devre ile hoparlörü sürmenizi tavsiye ederiz. Transistör olarak 2N2222 veya BC547 kullanabilirsiniz.
Arkadaşlar bu arduinonun kodları diğeriyle aynı mı?????????????????????????????
BU HATAYI ALIYORUM LÜTFEN YARDIM EDİN
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xe2
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xe2
Karta yüklenirken sorun oluştu. Tavsiyeler için http://www.arduino.cc/en/Guide/Troubleshooting#upload adresine göz atabilirsiniz.
comun bozuktur yada aygıt güncelle
Mini breadboard kullansam olur mu?
Bunu m block ta yapsam kodlamalari nasil bulabilirim
int melody(int dly) bu fonksiyondaki dly tam olarak nedir. her hangi bir tanımlaması yok galiba, burayı tam anlayamadım. bir de melodi(olcum*10) neyi ifade etmektedir?
int melody(int dly) bu fonksiyondaki dly tam olarak nedir. her hangi bir tanımlaması yok galiba, burayı tam anlayamadım. birde melodi(olcum*10) neyi ifade etmektedir?
ben kodların aynısını kopyala yapıştır yazıyorum ancak bazı yerlerde hata veriyor bunu nasıl düzeltebilirim
Aynısını yaptım ancak sadece buzzerdan tık tık sesi geliyor ne yapmalıyım?
Merhaba bu projenin matlab kodları var mı?
Bende kod yüklenirken hata oluştu diyo bana bi yardimci olur musunuz ?
Acil surekli ses geliyo tik tik diye nasil yapabilirim
merhaba sizin yaptıgınız gibi yaptım ama ses çıkmadı bunun sorunu nedir ?
abi gsm/gprs modülü ile ilgili bilgin varsa biraz açıklayabilirmisin
SIM808 GSM/GPS Shield hakında bir bilgin varsa SIM 808 ile ilgili açıklayıcı bir proje yapabilir misin
Şu şekilde yazmamız mümkün mü ? bana şöyle bir şey lazım; Buzzer ın mesafe sabit kaldığında ses vermesini istiyorum onun dışında ses vermesini istemiyorum .örneğin mesafe 3 saniye boyunca hiç değişmiyorsa sabitse ses almak istiyorum. Mümkün mü mümkün ise kodu değiştirmeye çalışacağım tecrübem az olmasına rağmen kodu söylerseniz tabiki çok iyi olur ama en azından mümkün olup olmadığını bilmek iyi olacak benim için.
Hocam sesi güçlendirmek için napabilirim?
Kodu elimizlemi yazmamız gerekiyor yoksa buradaki kodu yazılıma aktarabilir miyiz
Merhaba, bağlantıları yazıdaki gibi yaptıktan sonra buradaki kodu doğrudan kullanabilirsiniz. Elle yazmak pratik açısından daha iyi tabii 🙂
arduino klonuyla yapsak sorun çıkmaz dime arkadaşım sorun olabilir dedi
Hayır, problem olmaz.
Melodi was not declared in this scope diyor ne yapmalıyım
aynen ya
Sensörü belli bi uzaklıktan sonra susmasını nasıl sağlayabiliriz
abi bizimkinin işikları sönüyor takınca acil cevap
benim arduinomu okumuyo
usb 2.0 serial diyo ne yapmalıyım
aynısını yapınca çalışmayan diyen arkadaşlar direnci sökün o sesini kısıyor. Bir de dirençsiz deneyin. Zaten kodlama burada mevcut.
peki bip sesinden başka bir ses koymam için ne yapmalıyım
Ben final ödevi olarak radar projesi yapıyorum ve radarın üzerine ledler ve bluetut modülü koycaktım ama servomotor döndükden sonra ledler yanıyor bu sorunu bir türlü hal edemiyor acaba yardım edrmisiniz.
mesafe sıfıra gelince sürekli olarak bip sesinin gelmesini istiyorum nsıl yapabilirim
bu hatanın nedeni nedir
Arduino:1.8.10 (Windows 7), Kart:”Arduino/Genuino Uno”
Çalışmanız programın 2690 bayt (8 %) saklama alanını kullandı. Maksimum 32256 bayt.
Global değişkenler belleğin 28 byte kadarını (1%) kullanıyor. Yerel değişkenler için 2020 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
Taslak yüklenirken bir hata oluştu
avrdude: ser_open(): can’t set com-state for “\\.\COM3”
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
genelde ilk seferde çalışmamasının en büyük nedenlerinden birisi buzzer’ın artısını hem 5v hem dijitalpinlere bağlamaktan kaynaklanıyor, o zaman sürekli ses geliyor buzzer’dan. sadece dijital pine bağlanacak buzzer.
Başta buzer çok az ses veriyordu, direnci kaldırıp yerine kablo takınca ses arttı, kabloyu kaldırıp yerine led takınca (Led yönüne dikkat edin yada iki türlüde deneyin) hem ses çok harika oldu hemde led sesle aynı frekansa yanıp sönerek devreye görsel bir güzellik kattı. İlginize…
hocam yardımcı olur musun benim de sesi yükseltmem lazım. yakşalırsam zar zor duyuluyor ses
selamın aleyküm kardeşler ben şu
distance = duration / 58.2; kodunda hata alıyorum ne yapmalıyım
‘melodi’ was not declared in this scope
hatası veriyor ne yapacağım
‘melodi’ was not declared in this scope hatası alıyorum
bende yukarıdaki kodu girince melodi was declared in this scope yazıyo lütfen yardımcı olun !!!
hiçbir kodunuz çalışmıyor ):
birebir aynısını yaptım fakat çok cılız ses geliyor bunu nasıl yükseltebilir
Çalışmanız programın 2690 bayt (8 %) saklama alanını kullandı. Maksimum 32256 bayt.
Global değişkenler belleğin 28 byte kadarını (1%) kullanıyor. Yerel değişkenler için 2020 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
Bu hatanın sebebi nedir ?
Merhabalar kodun aynısını copy-paste yaptım, bana bu hatayı verdi anlatmanız mumcun olur mu niye boyle bir hata olabileceğini?
-Sahra
/Users/sahra/Documents/Arduino/prox_sensor_buzz_internet/prox_sensor_buzz_internet.ino: In function ‘void loop()’:
prox_sensor_buzz_internet:21:3: error: ‘melodi’ was not declared in this scope
melodi(olcum*10);
^~~~~~
/Users/sahra/Documents/Arduino/prox_sensor_buzz_internet/prox_sensor_buzz_internet.ino:21:3: note: suggested alternative: ‘modf’
melodi(olcum*10);
^~~~~~
modf
/Users/sahra/Documents/Arduino/prox_sensor_buzz_internet/prox_sensor_buzz_internet.ino: In function ‘int mesafe(int, int)’:
prox_sensor_buzz_internet:39:30: error: expected ‘)’ at end of input
if(distance >= maxrange || distance
^~~~~~~~
prox_sensor_buzz_internet:39:30: error: expected statement at end of input
prox_sensor_buzz_internet:39:30: error: expected ‘}’ at end of input
exit status 1
‘melodi’ was not declared in this scope
void setup kısmında takılıyor ve kabul etmiyor videodaki kodlara bakarak yazdım aynısı olmasına rağmen kabul etmiyor
Merhaba ben her şeyi yaptım ama kodda böyle bir hata çıkıyor
Arduino:1.8.7 (Mac OS X), Kart:”Arduino/Genuino Uno”
/Users/apple/Documents/Arduino/Arduino_Ev_1_Park_Sens_r__/Arduino_Ev_1_Park_Sens_r__.ino: In function ‘void loop()’:
Arduino_Ev_1_Park_Sens_r__:21:18: error: ‘melodi’ was not declared in this scope
melodi(olcum*10);
^
/Users/apple/Documents/Arduino/Arduino_Ev_1_Park_Sens_r__/Arduino_Ev_1_Park_Sens_r__.ino: In function ‘int mesafe(int, int)’:
Arduino_Ev_1_Park_Sens_r__:39:30: error: expected ‘)’ at end of input
if(distance >= maxrange || distance
^
Arduino_Ev_1_Park_Sens_r__:39:30: error: expected statement at end of input
Arduino_Ev_1_Park_Sens_r__:39:30: error: expected ‘}’ at end of input
exit status 1
‘melodi’ was not declared in this scope
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
bir yorumda araçlardan düzeltebileceğimiz yazıyordu ben bunu windows 10 olan bilgisayarımda yapıyordum ama bu mac te yok yardımcı olurmusunuz
Abi burda 16 satırda
Melodi (olcum*10) kısmında hata veriyor lütfen yardımcı olun
O satırın sonunda noktalı virgül kullanmayı unutmuş olabilir misiniz acaba?
Bu sensörü araç ön tamponuna yada ızgarasına uygulamak istiyorum. Sensör su geçirmemesi için bişey yapılabilir mi?
Suya karşı dayanaklı ve korunaklı mesafe sensörleri mevcut, o sensörlerden kullanabilirsiniz.
Herşeyi aynısini yaptim ama hiç ötmüorr
Mesafe sensörünüzü kontrol etmenizi öneririm. Hiç ötmüyorsa mesafe sensörünüzün donanımsal bağlantılarında bir problem olabilir.
merhaba bu projeyi aracın önüne ses gelen kısmı da duyabilmem için aracın içine nasıl monte edebilirim
En basit çözüm, kabloyu uzatmak olacaktır 🙂
melodi was not declared in this scope
bu hatayı alıyorum acaba yardımcı olabilir misiniz devreyi aynı şekilde kurdum
Çalışmanız programın 2690 bayt (8 %) saklama alanını kullandı. Maksimum 32256 bayt.
Global değişkenler belleğin 28 byte kadarını (1%) kullanıyor. Yerel değişkenler için 2020 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
bu sorunu nasıl aşabiliriz
en sonunda buraya yazma kararı aldım ben de niye her kodda hata var (abartmış olabilirim) ben kendin yazdın direk kopyala yapıştır yaptım yine hata veriyor kütüphanemi eklemeliyim
Merhabalar hocam hayırlı ramazanlar. Bir konuda yardımınıza ihtiyacım var. Çoğu yeri araştırmama rağmen hiçbir çözüm bulamadım. https://i.resmim.net/dqmfB.png bu sorunu alıyorum lütfen yadım eder misiniz?
Kod yüklenmiş, herhangi bir sorun yok 🙂
Hocam ama ötmüyor sensörüm yaklaşınca
O zaman sensörünüzün ve diğer birimlerin bağlantılarını kontrol etmeniz gerekiyor.
merhaba taslak yüklenirken hata oluştu diyor ama ne hatası yazmıyor yardımcı olur musunuz