Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Tarvittavien komponenttien kerääminen
- Vaihe 2: Toimintaperiaate
- Vaihe 3: Osien kokoaminen yhteen
- Vaihe 4: Osien lisääminen jänniteanturiverkkoon
- Vaihe 5: Osien lisääminen nykyiseen tunnistusverkkoon
- Vaihe 6: Jäljellä olevien yhteyksien viimeistely ja rakenteen viimeistely
- Vaihe 7: Moduulin yhdistäminen Arduinon kanssa
- Vaihe 8: Projektikoodi ja piirikaavio
- Vaihe 9: Opetusvideo
Video: DIY -virranmittausmoduuli Arduinolle: 9 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Hei kaikki, toivottavasti teillä menee hyvin! Tässä ohjeessa näytän sinulle, kuinka tein tämän tehomittari/ wattimittarimoduulin käytettäväksi Arduino -levyn kanssa. Tämä tehomittari voi laskea DC -kuormituksen kuluttaman tehon. Virran lisäksi tämä moduuli voi myös antaa meille tarkat jännitteen ja virran lukemat. Se voi helposti mitata pieniä jännitteitä (noin 2 V) ja pieniä virtauksia, jopa 50 mA ja virheen ollessa enintään 20 mA. Tarkkuus riippuu komponenttien valinnasta tarpeidesi mukaan.
Tarvikkeet
- IC LM358 dual OP-AMP
- 8 -nastainen IC -pohja
- Shuntivastus (8,6 milliOhms minun tapauksessani)
- Vastukset: 100K, 10K, 2,2K, 1K (1/2 wattia)
- Kondensaattorit: 3 * 0,1uF keraamiset kondensaattorit
- Veroboard tai nollataulu
- Ruuviliittimet
- Juotin ja juote
- Arduino Uno tai mikä tahansa muu yhteensopiva levy
- OLED -näyttö
- Leipäleipäjohtojen liittäminen
Vaihe 1: Tarvittavien komponenttien kerääminen
Tässä projektissa käytetään erittäin yksinkertaisia ja helposti hankittavia komponentteja: niihin kuuluvat vastukset, keraamiset kondensaattorit, operatiivinen vahvistin ja veroboot prototyyppien laatimiseksi.
Komponenttien valinta ja arvo riippuvat sovellustyypistä ja mitattavasta tehoalueesta.
Vaihe 2: Toimintaperiaate
Tehomoduulin toiminta perustuu kahteen piiriteorian ja perussähkön käsitteeseen: Jännitteenjakajakonsepti tulojännitteen mittaamiseen ja Ohmin laki piirin läpi kulkevan virran laskemiseksi. Käytämme shunttivastusta luomaan hyvin pieni jännitehäviö sen yli. Tämä jännitehäviö on verrannollinen shuntin läpi kulkevan virran määrään. Tätä pientä jännitettä, kun sitä vahvistetaan operaatiovahvistimella, voidaan käyttää tulona mikrokontrolleriin, joka voidaan ohjelmoida antamaan meille nykyinen arvo. vastus R2 ja R1. Käyttämällä ei -invertoivaa kokoonpanoa voimme saada yhteisen maan mittareferenssiksi. Tätä varten virtaa mitataan piirin matalalta puolelta. Sovellukselleni olen valinnut 46 vahvistuksen käyttämällä 100K- ja 2,2K -vastusta palauteverkkona. Jännitteen mittaus tehdään käyttämällä jännitteenjakajapiiriä, joka jakaa tulojännitteen suhteessa käytettyyn vastusverkkoon.
Sekä OP-vahvistimen nykyinen arvo että jakajaverkon jännitearvo voidaan syöttää kahteen arduinon analogiseen tuloon, jotta voimme laskea kuorman kuluttaman tehon.
Vaihe 3: Osien kokoaminen yhteen
Aloitetaan tehomoduulin rakentaminen päättämällä tulo- ja lähtöliitännän ruuviliittimien sijainti. Kun olet merkinnyt sopivat asennot, juotamme ruuviliittimet ja shuntivastuksen paikoilleen.
Vaihe 4: Osien lisääminen jänniteanturiverkkoon
Tulojännitteen tunnistamiseen käytän 10K ja 1K jännitteenjakajaverkkoa. Lisäsin myös 0,1 uF: n kondensaattorin 1K -vastuksen yli jännitteiden tasoittamiseksi.
Vaihe 5: Osien lisääminen nykyiseen tunnistusverkkoon
Virtaa mitataan laskemalla ja vahvistamalla jännitehäviötä shuntivastuksen yli ennalta määritetyllä vahvistuksella, jonka vastusverkko asettaa. Käytetään ei -invertoivaa vahvistustilaa. On toivottavaa pitää juotosjäljet pieninä, jotta vältetään ei -toivottu jännitehäviö.
Vaihe 6: Jäljellä olevien yhteyksien viimeistely ja rakenteen viimeistely
Kun jännite- ja virtatunnistusverkot on kytketty ja juotettu, on aika juottaa urospuoliset nastat ja tehdä tarvittavat liitännät teho- ja signaalilähtöihin. Moduuli saa virtansa 5 voltin normaalista käyttöjännitteestä, jonka voimme helposti saada arduino -kortilta. Kaksi jänniteantulähtöä kytketään arduinon analogisiin tuloihin.
Vaihe 7: Moduulin yhdistäminen Arduinon kanssa
Kun moduuli on valmis, nyt on vihdoin aika yhdistää se Arduinoon ja saada se käyntiin. Näyttääkseni arvot olen käyttänyt OLED -näyttöä, joka käytti I2C -protokollaa kommunikoidakseen arduinon kanssa. Näytössä näkyvät parametrit ovat jännite, virta ja teho.
Vaihe 8: Projektikoodi ja piirikaavio
Olen liittänyt virtamoduulin kytkentäkaavion ja koodin tässä vaiheessa (aiemmin olin liittänyt koodin sisältävän.ino- ja.txt -tiedoston, mutta joidenkin palvelinvirheiden vuoksi koodi ei ollut käytettävissä tai lukematon käyttäjille, joten kirjoitin koko koodi tässä vaiheessa. Tiedän, että se ei ole hyvä tapa jakaa koodi:(). Voit vapaasti muokata tätä koodia tarpeidesi mukaan. Toivon, että tämä projekti oli hyödyllinen sinulle. Jaa palautteesi kommenteissa. Heippa!
#sisältää
#sisältää
#sisältää
#sisältää
#define OLED_RESET 4 Adafruit_SSD1306 -näyttö (OLED_RESET);
kelluva val = 0;
kelluva virta = 0;
kelluva jännite = 0;
kelluva teho = 0;
void setup () {
pinMode (A0, INPUT);
pinMode (A1, INPUT);
display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // alustaminen I2C -lisäosalla 0x3C (128x32) näyttö. display ();
viive (2000);
// Tyhjennä puskuri.
display.clearDisplay ();
display.setTextSize (1);
display.setCursor (0, 0);
display.setTextColor (VALKOINEN);
Sarja.alku (9600); // Sarjamonitorin arvojen näyttäminen
}
void loop () {
// ottaen keskiarvo vakaille lukemille
(int i = 0; i <20; i ++) {
nykyinen = virta + analoginen luku (A0);
jännite = jännite + analoginen luku (A1); }
nykyinen = (nykyinen/20); nykyinen = nykyinen * 0,0123 * 5,0; // kalibrointiarvo, muutettava käytettyjen komponenttien mukaan
jännite = (jännite/20); jännite = jännite * 0,0508 * 5,0; // kalibrointiarvo, muutettava käytettyjen komponenttien mukaan
teho = jännite*virta;
// arvojen tulostaminen sarjamonitoriin
Sarjajälki (jännite);
Serial.print ("");
Serial.print (nykyinen);
Serial.print ("");
Sarja.println (teho);
// tulostetaan arvot OLED -näytölle
display.setCursor (0, 0);
display.print ("Jännite:");
näyttö. tulostus (jännite);
display.println ("V");
display.setCursor (0, 10);
display.print ("Nykyinen:");
display.print (nykyinen);
display.println ("A");
display.setCursor (0, 20);
display.print ("Virta:");
näyttö. tulostus (teho);
display.println ("W");
display.display ();
viive (500); // viiveen asettama virkistystaajuus
display.clearDisplay ();
}
Suositeltava:
Halvempi ESP8266 WiFi -suoja Arduinolle ja muille mikroille: 6 vaihetta (kuvilla)
Halvempi ESP8266 -WiFi -suoja Arduinolle ja muille mikroille: Päivitys: 29. lokakuuta 2020 Testattu ESP8266 -levykirjastolla V2.7.4 - toimii Päivitys: 23. syyskuuta 2016 Älä käytä Arduino ESP -levykirjastoa V2.3.0 tähän projektiin. V2.2.0 works Päivitys: 19. toukokuuta 2016 Tämän hankkeen versio 14 tarkistaa kirjastoja ja koodia toimimaan
MCP41HVX1 Digitaalinen potentiometri Arduinolle: 10 vaihetta (kuvilla)
MCP41HVX1 -digitaalinen potentiometri Arduinolle: MCP41HVX1 -digitaaliset potentiometrit (aka DigiPots) ovat laitteita, jotka matkivat analogisen potentiometrin toimintaa ja joita ohjataan SPI: n kautta. Esimerkkisovellus olisi korvata stereosi äänenvoimakkuuden säädin DigiPotilla, joka on
Kilpi Arduinolle vanhoilta venäläisiltä VFD -putkilta: kello, lämpömittari, jännitemittari : 21 vaihetta (kuvilla)
Kilpi Arduinolle vanhoilta venäläisiltä VFD -putkilta: kello, lämpömittari, jännitemittari …: Tämä projekti kesti lähes puoli vuotta. En voi kuvata kuinka paljon työtä tähän projektiin meni. Tämän projektin tekeminen yksin vie minut ikuisesti, joten sain apua ystäviltäni. Täältä näet työmme koottuina yhteen erittäin pitkään ohjeeseen
DIY -lasinohjausmoduuli Arduinolle: 14 vaihetta (kuvilla)
DIY-lasinohjausmoduuli Arduinolle: Tässä ohjeessa esittelen kaksiakselisen, yhden peilin lasersäteen ohjausmoduulin rakentamisen käyttämällä 3D-painettuja osia ja edullisia eBay-komponentteja. Hallitse
DIY Apple Remote Shield Arduinolle: 6 vaihetta (kuvilla)
DIY Apple Remote Shield Arduinolle: Oletko koskaan halunnut tehdä omenan kaukosäätimen? Tai ehkä haluat, että yksi arduino -luomuksistasi voi hallita iTunesia Macissa, iPodissa tai Apple TV: ssäsi? Nyt voit! Työskentelin aikoinaan projektissa, josta halusin tulla