from pathlib import Path
html = r'''
Arduino ile Ev Yapımı Ultrasonik Mesafe Sensörü
Arduino ile Ev Yapımı Ultrasonik Mesafe Sensörü
Bu içerik, hazır HC-SR04 mantığını temel alarak ev yapımı bir ultrasonik mesafe sensörünün nasıl geliştirilebileceğini adım adım anlatan özgün Türkçe bir blog düzenlemesidir. Amaç, tetik darbesi, 40 kHz ultrasonik yayın, yankı algılama ve mesafe hesabı sürecini anlaşılır hale getirmektir.
Kategori: Arduino • Sensörler • Elektronik Projeler
Ultrasonik mesafe ölçümü basit görünür ama işin elektroniği dikkat ister. Sistemde verici transdüser kısa bir ultrasonik darbe üretir, bu ses bir yüzeye çarparak geri döner, alıcı transdüser de bu dönüşü yakalar. Gönderilen darbe ile alınan yankı arasındaki süre ölçülür ve ses hızına göre mesafe hesaplanır.
Temel mantık: Ölçtüğünüz süre, ses dalgasının gidiş ve dönüş toplam süresidir. Bu yüzden hesapta süre ikiye bölünür.
Örneğin ölçülen gecikme 588 µs ise sonuç yaklaşık 10 cm olur. Yani işin özü, zaman ölçümünü doğru yapmak ve alıcı tarafta yankıyı temiz biçimde ayıklamaktır.
1. Hazır modülü anlamak: HC-SR04 nasıl çalışıyor?
Ev yapımı sisteme geçmeden önce, piyasadaki klasik ultrasonik modülü anlamak şart. HC-SR04 benzeri modüllerde dört temel pin bulunur: VCC, Trig, Echo ve GND. Tetik pinine kısa bir darbe verildiğinde modül yaklaşık 40 kHz civarında kısa bir ses paketi üretir. Bu ses bir nesneden geri döndüğünde modül Echo çıkışında mesafeyle ilişkili genişlikte bir darbe oluşturur.
Hazır modülün ön ve arka yapısı. Verici ve alıcı dönüştürücüler aynı kart üzerinde yer alır.Hazır modülün test düzeni. Osiloskopta gönderilen 40 kHz paket ile alınan yankının zaman farkı gözlenebilir.
Tetik ve yankı ilişkisi
Hazır modül davranışı kabaca şöyledir: Önce tetik darbesi alınır, çok kısa bir gecikmenin ardından 8 çevrimlik 40 kHz ultrasonik yayın yapılır. Ardından Echo pini aktif olur. Geri dönen ses algılandığında Echo pasif hale gelir. Böylece Echo pininde oluşan darbenin genişliği doğrudan mesafe bilgisini temsil eder.
Trigger, TX dalgası, RX dalgası ve Echo sinyalinin birbirine göre zaman ilişkisi.
2. Ev yapımı modül tasarımı
Bu projede amaç, hazır modülün mantığını sıfırdan kurmak. Bunun için iki ultrasonik dönüştürücü, bir işlemsel yükselteç katı, sürücü bölümü ve mikrodenetleyici kontrolü gerekir. Alıcı tarafta küçük yankı sinyalini yükseltmek, verici tarafta ise güçlü bir sürüş elde etmek kritik önemdedir.
Kullanılan yaklaşım
Bir dönüştürücü verici, diğeri alıcı olarak kullanılır.
Mikrodenetleyici tetik sinyalini alır ve vericiye 40 kHz’lik kısa bir paket uygular.
Alıcı tarafta op-amp katı yankıyı yükseltir.
Yeterli seviyeye ulaşan yankı, Echo mantığına dönüştürülür.
Sistemin amacı hazır sensör gibi davranan bir tetik ve yankı arayüzü oluşturmaktır.
Ev yapımı ultrasonik sensörün şematik yapısı. Alıcı tarafta yükseltme, verici tarafta daha güçlü sürüş hedeflenir.
Neden MAX232 kullanılıyor?
Bu tasarımın dikkat çeken noktalarından biri sürücü bölümünde MAX232 benzeri bir seviye dönüştürücü yaklaşımının kullanılmasıdır. Bunun nedeni, verici ultrasonik dönüştürücüye daha yüksek tepe-tepe gerilim uygulanarak menzilin artırılabilmesidir. Kısacası düşük seviyeli bir dijital işaret, sürücü katında daha etkili bir ultrasonik uyarıya dönüştürülür.
3. PCB yerleşimi ve fiziksel kurulum
Devre ekmek tahtasında doğrulandıktan sonra kalıcı karta taşınır. Verici ve alıcı birimlerin fiziksel ayrımı, istenmeyen doğrudan kuplajı azaltmak açısından faydalıdır. Ayrıca op-amp katında yer alan ayar potansiyometreleriyle eşik seviyeleri dikkatle ayarlanmalıdır. Amaç, alıcı tarafta sahte tetiklemeleri azaltırken gerçek yankıyı net biçimde algılamaktır.
Devrenin gerçek kart üzerindeki görünümü. Alıcı ve verici bölümleri ayrı konumlandırılmıştır.
Pratik not: Alıcı kazancı gereğinden fazla açılırsa ortam gürültüsü veya doğrudan kuplaj yanlış yankı gibi algılanabilir. Bu yüzden pot ayarı, projedeki en kritik kalibrasyon noktalarından biridir.
4. Yazılım mantığı
Kontrol yazılımı temelde dört işi yapar:
Tetik girişini izlemek
Kısa gecikmeden sonra 40 kHz burst üretmek
Echo çıkışını aktif hale getirmek
Yankı algılandığında Echo sinyalini sonlandırmak
Buradaki kritik detay, vericinin sürekli değil sadece kısa süreli bir paket üretmesidir. Böylece sistem hem hazır modüllere benzer davranır hem de mesafe hesabı için net bir zaman penceresi oluşturur.
Ölçüm sırası:
1) Trigger darbesi algılanır
2) Kısa bekleme uygulanır
3) 8 çevrim civarında 40 kHz burst üretilir
4) Echo çıkışı HIGH yapılır
5) Yankı algılanınca Echo LOW yapılır
Bu mantık, ikinci bir Arduino veya başka bir kontrol kartı tarafından standart ultrasonik sensör gibi okunabilecek bir arayüz üretir.
5. Test düzeni
Son aşamada ev yapımı modül, ikinci bir Arduino ile test edilir. Bu ikinci kart sadece tetik darbesi gönderir, Echo genişliğini ölçer ve sonucu ekranda gösterir. Böylece asıl modülün hazır bir ultrasonik sensör gibi çalışıp çalışmadığı kolayca doğrulanır.
İkinci Arduino ve I2C LCD ile yapılan test bağlantısı. Echo darbe süresi ölçülerek mesafe hesaplanır.
Burada pulseIn() Echo pininin HIGH kaldığı süreyi mikrosaniye cinsinden verir. Bu değer sesin toplam gidiş-dönüş süresidir. O yüzden sonuç yine ikiye bölünür.
Sonuç
Bu proje, ultrasonik mesafe sensörlerinin çalışma prensibini yalnızca kullanmakla kalmayıp gerçekten anlamak isteyenler için çok öğretici bir örnektir. Hazır modülün iç mantığını söküp kendi verici, alıcı ve işleme katınızı kurduğunuzda hem analog tarafta hem de zamanlama tarafında ciddi bir deneyim kazanırsınız.
Hazır modül kullanmak hızlıdır. Ama işin özünü öğrenmek istiyorsanız, bu tarz bir devre sizi doğrudan sinyal işleme, yükseltme, eşikleme ve zaman tabanlı ölçüm mantığının içine sokar.
Not: Bu sayfa, kaynak içerikteki teknik yaklaşım esas alınarak hazırlanmış özgün Türkçe blog düzenlemesidir. Görseller kaynak sunucudan çağrılmaktadır. Kalıcı yayın için görselleri kendi sunucunuza yüklemeniz daha sağlıklı olur.
Bir Yorum Yaz