Elektronik kart tamirinde, kısa devre takibinde veya kablo demeti testlerinde standart multimetrelerin süreklilik (bip) modu bazen yavaş kalabilir. Standart ölçü aletleri analog sinyali işleyip ses üretene kadar 100-500ms arasında bir gecikme yaşatabilir. Bu projede, Arduino'nun dahili karşılaştırıcısını veya yüksek hızlı analog okuma döngüsünü kullanarak, **milisaniyeler seviyesinde tepki veren** ve belirlediğiniz direnç sınırının altındaki kısa devreleri anında yakalayan bir süreklilik test cihazı kurgulayacağız.

Önceki projelerimizdeki modüler yapıya sadık kalarak donanımsal yapıyı analog blokta topluyoruz. Sistem, proplar arasındaki voltaj düşümünü A2 pininden aşırı hızlı bir şekilde örnekler. Belirlenen direnç sınırının altında bir geçiş algılandığı an, milisaniye kaybetmeden Buzzer ve Kırmızı LED'i tetikler:
/**
* @file Sureklilik_Test_Cihazi.ino
* @brief Yüksek Hızlı Tepki Süreli Kısa Devre ve Süreklilik Algılama Algoritması
*
* Pin Eşleşmeleri:
* - Arduino A0 -> Referans Voltaj Çıkışı (Gerilim Bölücü Beslemesi)
* - Arduino A1 -> Boşta / Gelecek Ekran/Işık Eklentileri İçin Ayrıldı
* - Arduino A2 -> Ölçüm Probu Voltaj Okuma Hattı
* - Arduino D9 -> Kırmızı LED (Kısa Devre / Süreklilik Var)
* - Arduino D8 -> Yeşil LED (Hat Açık / Bağlantı Yok)
* - Arduino D7 -> Buzzer (Anlık Sesli Geri Bildirim)
*/
// Donanımsal Pin Tanımlamaları
const int REF_VOLTAJ_PIN = A0; // Gerilim bölücü köprüyü besleyen stabil hat
const int PROP_ANALOG_PIN = A2; // Ölçüm proplarının bağlı olduğu analog giriş
const int kirmiziLed = 9;
const int yesilLed = 8;
const int buzzer = 7;
// Sistemsel Değişkenler ve Eşik Değeri
int okunanVoltaj = 0;
/**
* EŞİK DEĞERİ AÇIKLAMASI:
* Gerilim bölücü devresinde proplar açık devre iken A2 pini 1023 (5V) okur.
* Proplar birbirine değdiğinde (0 Ohm) voltaj 0V'a düşer ve ADC 0 okur.
* Buradaki sınır değer, proplar arasındaki direnç limitini belirler.
* Değer küçüldükçe sadece çok daha saf/düşük kısa devrelerde buzzer öter.
*/
const int DIRENC_SINIRI_VOLTAJ = 50; // Kısa devre olarak kabul edilecek maksimum ADC eşiği
void setup() {
// Yüksek hızlı seri telemetri takibi (Hız için baud rate 115200 seçilmiştir)
Serial.begin(115200);
// İndikatör ve hızlı buzzer çıkış pinleri yönlendiriliyor
pinMode(kirmiziLed, OUTPUT);
pinMode(yesilLed, OUTPUT);
pinMode(buzzer, OUTPUT);
// Gerilim bölücü referans pini çıkış yapılıp HIGH konumuna getiriliyor
pinMode(REF_VOLTAJ_PIN, OUTPUT);
digitalWrite(REF_VOLTAJ_PIN, HIGH);
// İlk durum ayarları
digitalWrite(yesilLed, HIGH);
digitalWrite(kirmiziLed, LOW);
digitalWrite(buzzer, LOW);
Serial.println(F("[SISTEM] Yuksek Hizli Sureklilik Test Cihazi Aktif."));
}
void loop() {
// -------------------------------------------------------------------------
// 1. AŞAMA: YÜKSEK HIZLI VOLTAJ ÖRNEKLEME
// -------------------------------------------------------------------------
// Propların ucundaki anlık gerilim düşümünü A2 portundan okuyoruz.
// Tepki süresini milisaniyelerin altında tutmak için bu alanda delay kullanılmaz.
okunanVoltaj = analogRead(PROP_ANALOG_PIN);
// -------------------------------------------------------------------------
// 2. AŞAMA: DİRENÇ SINIRI VE KISA DEVRE KONTROLÜ
// -------------------------------------------------------------------------
if (okunanVoltaj < DIRENC_SINIRI_VOLTAJ) {
// Proplar arası direnç sınırın altında: Kısa devre veya tam süreklilik var!
digitalWrite(yesilLed, LOW); // Açık hat indikatörünü kapat
digitalWrite(kirmiziLed, HIGH); // Kısa devre LED'ini aç
digitalWrite(buzzer, HIGH); // Buzzer'ı anında ötür
// Anlık durum lojistiği seri porttan basılıyor
Serial.print(F("[KISA DEVRE] Voltaj ADC: "));
Serial.println(okunanVoltaj);
}
else {
// Hat açık devre veya belirlenen direnç sınırından daha yüksek bir dirence sahip
digitalWrite(kirmiziLed, LOW);
digitalWrite(buzzer, LOW);
digitalWrite(yesilLed, HIGH);
}
// Cihazın milisaniyelik tepki hızını bozmamak ve proplar ayrıldığı an sesin
// anında kesilmesi için döngü sonu gecikmesi tamamen sıfıra yakın tutulur.
delayMicroseconds(50);
}
Bu süreklilik test cihazının doğru direnç hassasiyetiyle çalışabilmesi ve Arduino'yu koruması için kurulması gereken basit elektriksel köprü şu şekildedir:
1. Gerilim Bölücü (Pull-Up) Direnci: Arduino'nun A0 (Referans Çıkışı) pini ile A2 (Ölçüm Girişi) pini arasına 1KΩ ile 10KΩ arasında sabit bir direnç (Pull-up direnci) bağlanır. Bu direnç, proplar boştayken A2 pininin havada kalmasını engeller ve kararlı bir şekilde 5V (1023) okunmasını sağlar.
2. Test Proplarının Bağlantısı:
3. Tepki Hızı Sırrı: Kod bloklarında fark edileceği üzere, sistemde büyük delay() fonksiyonları tamamen kaldırılmıştır. Arduino'nun standart analog okuma süresi yaklaşık 100 mikrosaniyedir. Döngü bu hızda döndüğü için proplar birbirine dokunduğu an (ADC değeri 50'nin altına indiği mikrosaniyede) buzzer donanımsal olarak ses üretmeye başlar ve piyasadaki birçok multimetreden daha agresif, hızlı bir kısa devre yakalama performansı sunar.
Henüz yorum yapılmamış. İlk yorumu siz yapın!