2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
İstehlak olunan gücü ölçmək üçün bir cihaz istifadə edilə bilər. Bu dövrə gərginliyi və cərəyanı ölçmək üçün bir Voltmetr və Ampermetr kimi də çıxış edə bilər.
Təchizat
Avadanlıq Komponentləri
Arduino Uno
LCD 16 X 2
LM 358 Op-Amp
7805 Voltaj tənzimləyicisi
Potensialiometr 10k ohm
0.1 µF
Rezistor 10k ohm
Rezistor, 20 kohm
Rezistor 2.21k ohm
Rezistor, 0.22 ohm
Test yükü
Bağlayıcı tellər
Proqram Komponentləri:
Arduino IDE
Addım 1: Arduino Wattmeterin işləməsi
Öz sayğaclarınızı yaratmaq nəinki sınaq xərclərini azaldır, həm də test prosesini asanlaşdırmaq üçün bizə yer verir.
İş:
Sensor hissəsindən gərginliyi və cərəyanı ölçmək üçün etibarlı olan iki bölmə var. Gərginliyi ölçmək üçün 10KΩ və 2.2KΩ Rezistor istifadə edərək bir gərginlik bölücü dövrə aparılır.
Bu rezistorların köməyi ilə 24V -a qədər olan gərginliyi asanlıqla ölçə bilərsiniz. Bu rezistorlar, Arduinonun işlədiyi normal diapazon olan 0V - 5V gərginlik aralığını götürməyimizə də dəstək olur.
Cərəyanı ölçmək üçün cari dəyərləri şərti gərginlik dəyərlərinə dəyişdirməliyik. Ohm Qanununa görə, bir yük üzərindəki gerilim düşməsi cərəyana mütənasibdir.
Beləliklə, yükə görə kiçik bir şunt rezistoru təşkil edilir. Bu rezistordakı gərginliyi qiymətləndirərək cərəyanı hesablaya bilərik. Arduino-ya verilən dəyərləri böyütmək üçün LV358 Op-Amp-in İnversiyasız Gücləndirici rejimində istifadə etdik.
Geribildirim nəzarəti üçün gərginlik bölücü şəbəkəyə a20KΩ Rezistor və 1KΩ Rezistor daxildir. Bu rezistorlar təxminən 21 qazanc əldə edirlər.
Xüsusi IoT Çözümləri yaratmağınıza kömək edəcək IoT Kursu haqqında daha çox məlumat əldə edin.
Addım 2: Kod işləyin
#daxil edin
int Read_Voltage = A1;
int Read_Current = A0;
const int rs = 2, en = 4, d4 = 9, d5 = 10, d6 = 11, d7 = 12;
LiquidCrystal lcd (rs, en, d4, d5, d6, d7);
üzmə gərginliyi = 0.0;
float Cərəyan = 0.0;
float Gücü = 0.0;
boş quraşdırma ()
{
lcd.begin (16, 2);
Serial.begin (9600);
lcd.print ("Arduino");
lcd.setCursor (0, 1);
lcd.print ("Vattmetr");
gecikmə (2000);
lcd.clear ();
}
boşluq döngəsi ()
{
Gərginlik = analogRead (Read_Voltage);
Cari = analogRead (Read_Current);
Gərginlik = Gərginlik * (5.0/1023.0) * 6.46;
Cari = Cərəyan * (5.0/1023.0) * 0.239;
Serial.println (Gərginlik); Serial.println (Cari);
Güc = Gərginlik * Cərəyan;
Serial.println (Güc);
lcd.setCursor (0, 0);
lcd.print ("V =");
lcd.print (gərginlik);
lcd.print ("");
lcd.print ("I =");
lcd.print (Cari);
lcd.setCursor (0, 1);
lcd.print ("P =");
lcd.print (Güc);
gecikmə (1000);
}