- Gerekli Bileşenler:
- Arduino Voltmetre Devre Şeması:
- Arduino tabanlı AC Voltmetrenin Çalışması:
- Simülasyon:
- Kod Açıklaması:
Bu projede Arduino'yu kullanarak evimizdeki Alternatif Akım Kaynağının gerilimini ölçecek bir AC Gerilim Ölçüm Cihazı yapacağız. Bu voltajı Arduino IDE'nin seri monitörüne yazdıracağız ve multimetre üzerinde göstereceğiz.
Bir Dijital Voltmetre yapmak, analog bir voltmetre yapmaktan çok daha kolaydır çünkü analog voltmetre durumunda, tork, sürtünme kayıpları vb. Gibi fiziksel parametreler hakkında iyi bilgiye sahip olmanız gerekirken, dijital voltmetre durumunda sadece bir LCD veya LED matris kullanabilirsiniz veya hatta dizüstü bilgisayarınız (bu durumda olduğu gibi) sizin için voltaj değerlerini yazdırır. İşte bazı Dijital Voltmetre Projeleri:
- ICL7107 kullanan PCB'li Basit Dijital Voltmetre Devresi
- LM3914 Voltmetre Devresi
- AVR Mikrodenetleyiciyi kullanarak 0-25V Dijital Voltmetre
Gerekli Bileşenler:
- Bir 12-0-12 transformatör
- 1N4007 diyot
- 1 uf kapasitör
- Dirençler 10k; 4.7k.
- Zener diyot (5v)
- Arduino UNO
- Bağlantı telleri
Arduino Voltmetre Devre Şeması:
Bu Arduino Voltmetre için Devre Şeması yukarıda gösterilmiştir.
Bağlantılar:
- Transformatörün yüksek voltaj tarafını (220V) şebeke kaynağına ve düşük voltajı (12v) voltaj bölücü devresine bağlayın.
- 4.7k dirençle seri olarak 10k direnci bağlayın, ancak 4.7k direnç boyunca giriş olarak voltaj aldığınızdan emin olun.
- Diyotu gösterildiği gibi bağlayın.
- 4.7k boyunca kapasitör ve zener diyotu bağlayın
- Diyotun n terminalinden Arduino'nun analog pini A0'a bir kablo bağlayın.
** Not: Arduino'nun toprak pimini şekilde gösterilen noktaya bağlayın, aksi takdirde devre çalışmayacaktır.
Voltaj bölücü devresine ihtiyacınız var mı?
220/12 v trafo kullandığımız için lv tarafında 12 v elde ediyoruz. Bu voltaj Arduino için giriş olarak uygun olmadığından, Arduino'ya giriş olarak uygun voltaj değeri verebilen bir voltaj bölücü devresine ihtiyacımız var.
Diyot ve kondansatör neden bağlanır?
Arduino giriş olarak negatif voltaj değerleri almadığından, öncelikle Arduino tarafından sadece pozitif voltaj değerini alması için AC aşağı inme negatif döngüsünü kaldırmamız gerekir. Bu nedenle, voltaj düşürmeyi düzeltmek için diyot bağlanır. Düzeltme hakkında daha fazla bilgi edinmek için Yarım dalga doğrultucu ve Tam dalga Doğrultucu devremizi kontrol edin.
Bu rektifiye edilmiş voltaj, bize herhangi bir tam analog değer veremeyen büyük dalgalanmalar içerdiğinden düzgün değildir. Bu nedenle, ac sinyalini düzeltmek için kondansatör bağlanır.
Zener diyotun amacı?
Arduino, 5v'den yüksek voltaj beslenirse hasar görebilir. Bu nedenle, bu voltajın 5v'yi aşması durumunda arızalanan Arduino'nun güvenliğini sağlamak için 5v zener diyot bağlanır.
Arduino tabanlı AC Voltmetrenin Çalışması:
1. Normal güç oranlı dirençlerde kullanıma uygun olan transformatörün lv tarafında kademeli voltaj elde edilir.
2. Sonra 4.7k direnç üzerinden uygun voltaj değerini elde ederiz
Ölçülebilen maksimum voltaj, bu devrenin proteus üzerinde simüle edilmesiyle bulunur (simülasyon bölümünde açıklanmıştır).
3. Arduino bu gerilimi 0 ile 1023 arasında analog değerler şeklinde A0 pininden giriş olarak alır. 0 0 volt ve 1023 5v'dir.
4. Arduino daha sonra bu analog değeri bir formülle karşılık gelen şebeke AC voltajına dönüştürür. (Kod bölümünde açıklanmıştır).
Simülasyon:
Tam devre proteusta yapılır ve daha sonra simüle edilir. Bu devrenin ölçebileceği maksimum voltajı bulmak için vuruş ve deneme yöntemi kullanılır.
Alternatörün tepe voltajı 440 (311 rms) yapılırken, A0 pimindeki voltaj 5 volt, yani maksimum olarak bulundu. Dolayısıyla bu devre maksimum 311 rms voltajı ölçebilir.
220 rms ile 440v arasındaki çeşitli voltajlar için simülasyon gerçekleştirilir.
Kod Açıklaması:
Tam ArduinoVoltmeter Kodu bu projenin sonunda verilmiştir ve yorumlar ile iyi bir şekilde açıklanmıştır. Burada birkaç kısmını açıklıyoruz.
m, A0 pininden alınan giriş analog değeridir, yani
m = pinMode (A0, INPUT); // pin a0'ı giriş pini olarak ayarlayın
Bu formüle n değişkenini atamak için n = (m * . 304177), önce simülasyon bölümünde elde edilen veriler kullanılarak bir takım hesaplamalar yapılır:
Simülasyon fotoğrafında görüldüğü gibi AC giriş gerilimi 311volt iken A0 pininde 5v veya 1023 analog değer elde edilmektedir. Dolayısıyla:
Dolayısıyla herhangi bir rasgele analog değer, m'nin analog değer elde edildiği (311/1023) * m'ye karşılık gelir.
Dolayısıyla şu formüle ulaşıyoruz:
n = (311/1023) * m volt veya n = (m *.304177)
Şimdi bu voltaj değeri, aşağıda açıklandığı gibi seri komutlar kullanılarak seri monitörde yazdırılır. Ve ayrıca gösterildiği gibi multimetre gösterilen video aşağıda.
Ekranda yazdırılan değerler şunlardır:
Kodda belirtildiği gibi analog giriş değeri:
Seri.print ("analog giriş"); // bu, Serial.print (m) yazdırılan analog değere "analog giriş" olan bir isim verir; // bu sadece analog giriş değerini yazdırır
Kodda belirtildiği gibi gerekli ac voltajı:
Seri.print ("ac voltajı"); // bu, Serial.print (n) yazdırılan analog değere "ac voltaj" adını verir; // bu sadece ac voltaj değerini yazdırır