2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Na meranie spotrebovanej energie je možné použiť zariadenie. Tento obvod môže tiež fungovať ako voltmetr a ampérmeter na meranie napätia a prúdu.
Zásoby
Hardvérové komponenty
Arduino Uno
LCD 16 x 2
LM 358 Op-Amp
7805 Volage regulátor
Potenciometer 10k ohm
0,1 uF
Odpor 10 kOhm
Rezistor, 20 kohm
Odpor 2,21 kOhm
Rezistor, 0,22 ohmov
Skúšobné zaťaženie
Pripojovacie vodiče
Softvérové súčasti:
Arduino IDE
Krok 1: Práca wattmetra Arduino
Vybudovanie vlastných meračov nielenže zníži náklady na testovanie, ale tiež nám poskytne priestor na uľahčenie procesu testovania.
Práca:
Zo senzorovej časti sú dve sekcie, ktoré sú spoľahlivé na meranie napätia a prúdu. Na meranie napätia sa vykoná obvod deliča napätia pomocou odporu 10 KΩ a 2,2 KΩ.
Pomocou týchto rezistorov môžete ľahko merať napätie až 24V. Tieto odpory nás tiež podporujú pri prechode rozsahu napätia na 0V - 5V, čo je normálny rozsah, na ktorom Arduino funguje.
Aby sme mohli merať prúd, musíme zmeniť aktuálne hodnoty na konvenčné hodnoty napätia. Podľa Ohmovho zákona je pokles napätia na záťaži úmerný prúdu.
Preto je vzhľadom na zaťaženie usporiadaný malý bočníkový odpor. Odhadom napätia na tomto odpore môžeme vypočítať prúd. Na zväčšenie hodnôt poskytovaných Arduinu sme použili operačný zosilňovač LM358 v režime neinvertujúceho zosilňovača.
Sieť deliča napätia na ovládanie spätnej väzby obsahuje odpor 20 kΩ a odpor 1 kΩ. Tieto odpory ponúkajú zisk približne 21.
Získajte viac informácií o kurze IoT, ktorý vám pomôže pri vytváraní prispôsobených riešení IoT.
Krok 2: Spustite kód
#zahrnúť
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);
plavákové napätie = 0,0;
plavákový prúd = 0,0;
plavákový výkon = 0,0;
neplatné nastavenie ()
{
lcd.begin (16, 2);
Serial.begin (9600);
lcd.print („Arduino“);
lcd.setCursor (0, 1);
lcd.print ("wattmeter");
oneskorenie (2000);
lcd.clear ();
}
prázdna slučka ()
{
Napätie = analogRead (Read_Voltage);
Current = analogRead (Read_Current);
Napätie = napätie * (5,0/1023,0) * 6,46;
Prúd = prúd * (5,0/1023,0) * 0,239;
Serial.println (napätie); Serial.println (aktuálny);
Výkon = napätie * prúd;
Serial.println (Napájanie);
lcd.setCursor (0, 0);
lcd.print ("V =");
lcd.print (napätie);
lcd.print ("");
lcd.print ("I =");
lcd.print (aktuálny);
lcd.setCursor (0, 1);
lcd.print ("P =");
lcd.print (napájanie);
oneskorenie (1000);
}