Bu projemizde, taşınabilir ve pratik bir giyilebilir teknoloji prototipi olan Arduino Sosyal Mesafe / Uyarı Sistemi tasarlıyoruz. Projenin temel amacı; ultrasonik mesafe sensörü aracılığıyla çevredeki insanlarla olan fiziksel mesafeyi gerçek zamanlı olarak izlemek ve güvenli sınır olan 1 metrenin altına inildiğinde sesli (Buzzer) bir alarm üreterek kullanıcıyı uyarmaktır.
Küresel salgın dönemlerinde ve kalabalık kamusal alanlarda bulaş riskini en aza indirgemek amacıyla geliştirilen sosyal mesafe kuralları, günümüzde akıllı uyarı sistemleriyle denetlenmektedir.
Giyilebilir sosyal mesafe cihazları, kasklar veya akıllı rozetler temel olarak aynı donanımsal mantıkla çalışır. Bu rehberimizde, kompakt yapısı nedeniyle breadboard dostu ve taşınabilir projelere en uygun gömülü platformlardan biri olan Arduino Kart Modelleri ve Karşılaştırma Kılavuzumuzdan yararlanarak seçtiğimiz Arduino Nano kartını, popüler HC-SR04 Ultrasonik Mesafe Sensörünü ve piezo buzzer bileşenlerini bir araya getireceğiz.
Ayrıca, IoT tabanlı daha geniş veri izleme projelerine ilgi duyuyorsanız, önceden hazırlamış olduğumuz internet bağlantılı NodeMCU ESP8266 ve OLED Ekran ile Koronavirüs Takip Cihazı projesine de göz atabilirsiniz.
Arduino Sosyal Mesafe Sistemi: Çalışma Mantığı
Sistem, insan kulağının duyamayacağı frekansta (
) ultrasonik ses dalgaları yayarak çalışır. Sensörün tetik (Trigger) pimi mikrodenetleyici tarafından aktif edildiğinde yayılan ses dalgaları, karşıdaki bir engele (insan veya nesne) çarparak geri döner ve alıcı (Echo) pimi tarafından yakalanır. Arduino Nano, bu dalganın gidiş-dönüş süresini mikrosaniyeler seviyesinde ölçer ve ses hızı sabitini kullanarak mesafeyi santimetre cinsinden hesaplar. Eğer ölçülen anlık fiziksel mesafe
(1 metre) sınırının altına düşerse, Arduino buzzer çıkışını aktif ederek kesikli bir alarm sesi üretir.
Donanım Bağlantı ve Arayüz Tablosu
Arduino Nano ve HC-SR04 mesafe sensörünün elektriksel kablolama bağlantılarını kurmak için aşağıdaki pin eşleme tablosundan yararlanabilirsiniz:
| Arduino Nano Pin | HC-SR04 / Buzzer / Pil Bağlantısı |
| D4 | HC-SR04 Echo Pini |
| D3 | HC-SR04 Trig Pini |
| GND | HC-SR04 GND Pini |
| 5V | HC-SR04 VCC Pini |
| GND | Buzzer Katot (Eksi / -) Bacağı |
| D13 | Buzzer Anot (Artı / +) Bacağı |
| GND | 9V Pil Negatif Kutbu (GND) |
| VIN | 9V Pil Pozitif Kutbu ( |
Ana Donanım Bileşenlerinin İncelenmesi
1. Arduino Nano
Arduino Nano, klasik Arduino Uno ile neredeyse aynı elektriksel özelliklere ve donanımsal çevre birimlerine sahip olan, Breadboard uyumlu minyatür bir geliştirme kartıdır. Kalbinde 8-bitlik ATmega328P ve ATmega8 Mikrodenetleyici Programlama Kılavuzu içinde ele aldığımız ATmega328P entegresi yer alır. Uno’dan farklı olarak harici DC güç soketi barındırmaz ve bilgisayar bağlantısı için Mini-B USB arayüzünü kullanır. Küçük ebatları sayesinde kıyafete veya şapkaya monte edilecek giyilebilir rozet tasarımları için en ideal gömülü karttır.

2. HC-SR04 Ultrasonik Mesafe Sensörü
HC-SR04,
ile
arasında temassız mesafe ölçümü yapabilen,
hassasiyete sahip akustik bir sensördür. Üzerinde yerleşik ultrasonik verici (transmitter) ve alıcı (receiver) dönüştürücüler barındırır. Modülün algılama algoritması ve çalışma karakteristikleri hakkında daha kapsamlı bilgi edinmek için Ultrasonik Mesafe Sensörü ve mBlock Algoritmaları rehberimizden yararlanabilirsiniz.

3. Piezo Buzzer
Piezo buzzerlar, üzerlerine uygulanan alternatif gerilimin frekansına bağlı olarak mekanik titreşim üreten ve bu sayede ses dalgası yayan piezoelektrik seramik malzemeden oluşur. Düşük akım tüketimiyle direkt olarak Arduino dijital pinlerinden sürülebilen
aktif buzzer modelleri, bu tür uyarı sistemlerinde sesli ikaz üretmek için mükemmel bir çözümdür.

4. Taşınabilir Güç Kaynağı (Pil)
Sistemin giyilebilir bir rozet olarak kullanılabilmesi için bağımsız bir güç kaynağına ihtiyacı vardır. Projeyi beslemek için standart
piller veya şarj edilebilir lityum iyon piller (pil gerilimi regüle edilmek üzere Arduino Nano’nun VIN pinine uygulanır) kullanılabilir. Uzun ömürlü kullanım için şarj edilebilir NiMH
piller veya regülatörlü LiPo bataryalar tercih edilmelidir.
Akustik Mesafe Hesaplama Matematiği
HC-SR04 sensörünün tetiklenmesiyle yayılan ses dalgasının havada
sıcaklıktaki yayılma hızı yaklaşık
(mikrosaniye başına
) olarak kabul edilir. Ses dalgası hedefe gidip geri döndüğü için, ölçülen toplam uçuş süresi (seyahat süresi) ikiye bölünmelidir. Buradan yola çıkarak fiziksel mesafe (
) şu matematiksel formülle hesaplanır:
![]()
Bu formül, gömülü yazılım içerisinde uygulanarak milimetre seviyesinde kararlı mesafe verileri elde edilmesini sağlar.
Arduino Nano Sosyal Mesafe Projesi Kaynak Kodları
Aşağıda yer alan program kodu, Trig pininden
süresince tetikleme sinyali gönderir, Echo pininden dönen yansıma süresini ölçer, akustik formülü uygulayarak mesafeyi hesaplar ve
‘den daha yakın durumlarda Buzzer’ı
aralıklarla kesikli olarak öttürür:
Adım Adım Gömülü Kod Açıklaması
Yazılımın temel fonksiyon blokları ve değişken tanımlamaları şu şekildedir:
- Değişkenler: Ses dalgasının gidiş-dönüş süresini saklamak için
surec, hesaplanan fiziksel mesafeyi kaydetmek için iseuzaklikisimli uzun tamsayı (long) değişkenleri tanımlanmıştır. - setup() Yapılandırması: Donanımsal UART birimi hata ayıklama için 9600 baud hızında başlatılır. Mesafe sensörünün tetikleme pini (trigPin) çıkış (OUTPUT), yansımayı algılayan pini (echoPin) ise giriş (INPUT) olarak yapılandırılır. Buzzer’ın bağlı olduğu Pin 13 ise çıkış olarak atanır.
- loop() Döngüsü ve Sinyal Analizi: Tetikleme pini anlık gürültülerden temizlenmesi için önce
süresince düşük seviyeye (LOW) çekilir. Hemen ardından
boyunca yüksek seviye (HIGH) uygulanarak sensörün akustik dalga yayması sağlanır. `pulseIn()` fonksiyonu Echo pininin HIGH kalma süresini ölçerek seyahat süresini tespit eder. Elde edilen süre formüle tabi tutulup mesafe hesaplandıktan sonra if-else karar mekanizmasıyla mesafe
‘den küçükse buzzer aktif edilir, değilse kapatılır.
Arduino Nano resmi veri sayfasına buradan erişebilirsiniz.
Yorum yapma özelliği, forum tarafından gelen istek sebebiyle kapatılmıştır. Lütfen tartışmalar ve sorularınız için topluluk forumumuza katılın.

