Obsah:

DIY měřicí modul pro Arduino: 9 kroků (s obrázky)
DIY měřicí modul pro Arduino: 9 kroků (s obrázky)

Video: DIY měřicí modul pro Arduino: 9 kroků (s obrázky)

Video: DIY měřicí modul pro Arduino: 9 kroků (s obrázky)
Video: How to use 4 channel Relay to control AC load with Arduino code 2024, Listopad
Anonim
DIY modul pro měření výkonu pro Arduino
DIY modul pro měření výkonu pro Arduino
DIY modul pro měření výkonu pro Arduino
DIY modul pro měření výkonu pro Arduino
DIY modul pro měření výkonu pro Arduino
DIY modul pro měření výkonu pro Arduino

Ahoj všichni, doufám, že se vám daří skvěle! V tomto pokynu vám ukážu, jak jsem vyrobil tento modul měřiče výkonu/ wattmetru pro použití s deskou Arduino. Tento měřič výkonu dokáže vypočítat spotřebu energie a zatížení DC. Spolu s napájením nám tento modul může také poskytnout přesné hodnoty napětí a proudu. Může snadno měřit nízké napětí (kolem 2 V) a nízké proudy až 50 mA s chybou nejvýše 20 mA. Přesnost závisí na výběru komponent na základě vašich požadavků.

Zásoby

  • IC LM358 duální OP-AMP
  • 8pinová IC základna
  • Odpojovací odpor (v mém případě 8,6 miliOhmů)
  • Rezistory: 100K, 10K, 2,2K, 1K (1/2watt)
  • Kondenzátory: 3 * 0,1uF keramické kondenzátory
  • Veroboard nebo nulová deska
  • Šroubové svorky
  • Páječka a pájka
  • Arduino Uno nebo jakákoli jiná kompatibilní deska
  • OLED displej
  • Připojení chlebových vodičů

Krok 1: Shromáždění požadovaných komponent

Shromažďování požadovaných komponent
Shromažďování požadovaných komponent

Tento projekt používá velmi jednoduché a snadno dostupné komponenty: zahrnují rezistory, keramické kondenzátory, operační zesilovač a veroboard pro prototypování.

Výběr a hodnota komponent závisí na typu aplikace a rozsahu výkonu, který chcete měřit.

Krok 2: Pracovní princip

Pracovní princip
Pracovní princip
Pracovní princip
Pracovní princip
Pracovní princip
Pracovní princip
Pracovní princip
Pracovní princip

Fungování napájecího modulu je založeno na dvou konceptech teorie obvodů a základní elektřiny: Koncept děliče napětí pro měření vstupního napětí a Ohmův zákon pro výpočet proudu protékajícího obvodem. Používáme zkratovací odpor, abychom na něm vytvořili velmi malý pokles napětí. Tento pokles napětí je úměrný množství proudu protékajícího zkratem. Toto malé napětí při zesílení operačním zesilovačem lze použít jako vstup do mikrokontroléru, který lze naprogramovat tak, aby nám poskytl aktuální hodnotu. Operační zesilovač se používá jako neinvertující zesilovač, kde je zisk určen hodnotami zpětné vazby odpor R2 a R1. Použití neinvertující konfigurace nám umožňuje mít jako referenci měření společný základ. Za tímto účelem se proud měří na spodní straně obvodu. Pro svou aplikaci jsem zvolil zisk 46 pomocí 100K a 2,2K odporu jako zpětnovazební sítě. Měření napětí se provádí pomocí obvodu děliče napětí, který rozděluje vstupní napětí v poměru k použité síti odporů.

Aktuální hodnotu z OP-zesilovače i hodnotu napětí z dělicí sítě lze přivést do dvou analogových vstupů arduina, abychom mohli vypočítat výkon spotřebovaný zátěží.

Krok 3: Spojení dílů dohromady

Spojení dílů dohromady
Spojení dílů dohromady
Spojení dílů dohromady
Spojení dílů dohromady
Spojení dílů dohromady
Spojení dílů dohromady

Začněme konstrukci našeho napájecího modulu rozhodováním o poloze šroubových svorek pro vstupní a výstupní připojení. Po označení příslušných poloh připájíme šroubové svorky a bočníkový odpor na místo.

Krok 4: Přidání dílů pro síť Sense Sense

Přidání dílů pro síť Sense Sense
Přidání dílů pro síť Sense Sense
Přidání dílů pro síť Sense Sense
Přidání dílů pro síť Sense Sense
Přidání dílů pro síť Sense Sense
Přidání dílů pro síť Sense Sense

Pro snímání vstupního napětí používám síť děliče napětí 10K a 1K. Také jsem přidal 0,1 uF kondenzátor přes 1K odpor k vyhlazení napětí. Síť pro snímání napětí je pájena poblíž vstupního terminálu

Krok 5: Přidání dílů do sítě Current Sense

Přidání dílů do sítě Current Sense
Přidání dílů do sítě Current Sense
Přidání dílů do sítě Current Sense
Přidání dílů do sítě Current Sense
Přidání dílů do sítě Current Sense
Přidání dílů do sítě Current Sense
Přidání dílů pro síť Current Sense
Přidání dílů pro síť Current Sense

Proud se měří výpočtem a zesílením poklesu napětí na bočníkovém rezistoru s předem definovaným ziskem nastaveným sítí odporů. Je použit neinvertující režim zesílení. Je žádoucí udržovat stopy pájky malé, aby se zabránilo nežádoucímu poklesu napětí.

Krok 6: Dokončení zbývajících připojení a dokončení stavby

Dokončení zbývajících připojení a dokončení stavby
Dokončení zbývajících připojení a dokončení stavby
Dokončení zbývajících připojení a dokončení stavby
Dokončení zbývajících připojení a dokončení stavby
Dokončení zbývajících připojení a dokončení stavby
Dokončení zbývajících připojení a dokončení stavby

Když jsou připojeny a připájeny sítě pro snímání napětí a proudu, je čas pájet kolíkové zástrčky a provést potřebná připojení výkonových a signálních výstupů. Modul bude napájen standardním provozním napětím 5 voltů, které snadno získáme z desky arduino. Dva napěťové snímací výstupy budou připojeny k analogovým vstupům arduina.

Krok 7: Propojení modulu s Arduino

Propojení modulu s Arduino
Propojení modulu s Arduino
Propojení modulu s Arduino
Propojení modulu s Arduino
Propojení modulu s Arduino
Propojení modulu s Arduino
Propojení modulu s Arduino
Propojení modulu s Arduino

Když je modul dokončen, nyní je konečně čas jej připojit k Arduinu a spustit ho. Abych viděl hodnoty, použil jsem OLED displej, který pro komunikaci s Arduinem používal protokol I2C. Parametry zobrazené na obrazovce jsou Napětí, Proud a Výkon.

Krok 8: Kód projektu a schéma zapojení

Kód projektu a schéma zapojení
Kód projektu a schéma zapojení

V tomto kroku jsem připojil schéma zapojení a kód napájecího modulu (dříve jsem připojil soubor.ino a.txt obsahující kód, ale nějaká chyba serveru způsobila, že kód byl pro uživatele nepřístupný nebo nečitelný, a tak jsem napsal celý v tomto kroku kód. Vím, že to není dobrý způsob sdílení kódu:(). Neváhejte tento kód upravit podle svých požadavků. Doufám, že vám tento projekt pomohl. Podělte se o své připomínky v komentářích. Na zdraví!

#zahrnout

#zahrnout

#zahrnout

#zahrnout

#define OLED_RESET 4 Adafruit_SSD1306 displej (OLED_RESET);

float val = 0;

plovoucí proud = 0;

plovoucí napětí = 0;

float power = 0;

neplatné nastavení () {

pinMode (A0, INPUT);

pinMode (A1, VSTUP);

display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // inicializace pomocí I2C addr 0x3C (pro 128x32) display.display ();

zpoždění (2000);

// Vymažte vyrovnávací paměť.

display.clearDisplay ();

display.setTextSize (1);

display.setCursor (0, 0);

display.setTextColor (BÍLÁ);

Serial.begin (9600); // Zobrazení hodnot na sériovém monitoru

}

prázdná smyčka () {

// bere průměr pro stabilní hodnoty

pro (int i = 0; i <20; i ++) {

proud = proud + analogové Čtení (A0);

napětí = napětí + analogové Čtení (A1); }

aktuální = (aktuální/20); proud = proud * 0,0123 * 5,0; // kalibrační hodnota, bude změněna podle použitých komponent

napětí = (napětí/20); napětí = napětí * 0,0508 * 5,0; // kalibrační hodnota, bude změněna podle použitých komponent

výkon = napětí*proud;

// tisk hodnot na sériovém monitoru

Serial.print (napětí);

Serial.print ("");

Serial.print (aktuální);

Serial.print ("");

Serial.println (napájení);

// tisk hodnot na OLED displeji

display.setCursor (0, 0);

display.print ("Napětí:");

display.print (napětí);

display.println ("V");

display.setCursor (0, 10);

display.print ("Aktuální:");

display.print (aktuální);

display.println ("A");

display.setCursor (0, 20);

display.print ("Napájení:");

display.print (napájení);

display.println ("W");

display.display ();

zpoždění (500); // obnovovací frekvence nastavená zpožděním

display.clearDisplay ();

}

Doporučuje: