Cuprins:
- Provizii
- Pasul 1: Adunarea componentelor necesare
- Pasul 2: Principiul de lucru
- Pasul 3: Aducerea pieselor împreună
- Pasul 4: Adăugarea pieselor pentru rețeaua Voltage Sense
- Pasul 5: Adăugarea pieselor pentru rețeaua Sense Sense curentă
- Pasul 6: Finalizarea conexiunilor rămase și finalizarea construcției
- Pasul 7: Conectarea modulului cu Arduino
- Pasul 8: Codul proiectului și diagrama circuitului
- Pasul 9: Video tutorial
Video: Modul de măsurare a puterii DIY pentru Arduino: 9 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Bună ziua tuturor, sper că vă descurcați grozav! În acest instructiv vă voi arăta cum am făcut acest modul de măsurare a puterii / wattmetru pentru a fi utilizat cu o placă Arduino. Acest contor de putere poate calcula puterea consumată de și încărcarea DC. Împreună cu puterea, acest modul ne poate oferi și citiri exacte ale tensiunii și curentului. Poate măsura cu ușurință tensiuni scăzute (în jur de 2V) și curenți mici, de până la 50 mA, cu o eroare de cel mult 20mA. Precizia depinde de alegerea componentelor pe baza cerințelor dumneavoastră.
Provizii
- IC LM358 dual OP-AMP
- Baza IC cu 8 pini
- Rezistență la șunt (8,6 milliOhms în cazul meu)
- Rezistoare: 100K, 10K, 2.2K, 1K (1 / 2watt)
- Condensatoare: 3 * 0.1uF condensatoare ceramice
- Veroboard sau tablă zero
- Borne cu șurub
- Fier de lipit și lipit
- Arduino Uno sau orice altă placă compatibilă
- Afișaj OLED
- Conectarea firelor de pană
Pasul 1: Adunarea componentelor necesare
Acest proiect folosește componente foarte simple și ușor de obținut: acestea includ rezistențe, condensatori ceramici, amplificator operațional și un veroboard pentru prototipare.
Alegerea și valoarea componentelor depind de tipul de aplicație și de gama de putere pe care doriți să o măsurați.
Pasul 2: Principiul de lucru
Funcționarea modulului de putere se bazează pe două concepte ale teoriei circuitului și ale electricității de bază: Conceptul divizorului de tensiune pentru măsurarea tensiunii de intrare și Legea lui Ohm pentru a calcula curentul care curge prin circuit. Folosim un rezistor de șunt pentru a crea o cădere de tensiune foarte mică peste el. Această cădere de tensiune este proporțională cu cantitatea de curent care curge prin șunt. Această mică tensiune, atunci când este amplificată de un amplificator operațional, poate fi utilizată ca intrare într-un microcontroler care poate fi programat pentru a ne oferi valoarea curentă. rezistorul R2 și R1. Utilizarea configurației fără inversare ne permite să avem un teren comun ca referință de măsurare. Pentru aceasta, curentul este măsurat pe partea de jos a circuitului. Pentru aplicația mea am ales un câștig de 46 prin utilizarea rezistenței 100K și 2.2K ca rețea de feedback. Măsurarea tensiunii se face utilizând un circuit divizor de tensiune care împarte tensiunea de intrare proporțional cu rețeaua de rezistență utilizată.
Atât valoarea curentului din OP-Amp, cât și valoarea tensiunii din rețeaua divizorului pot fi alimentate în două intrări analogice ale arduino-ului, astfel încât să putem calcula puterea consumată de o sarcină.
Pasul 3: Aducerea pieselor împreună
Să începem construcția modulului nostru de putere decidând poziția bornelor cu șurub pentru conexiunea de intrare și ieșire. După marcarea pozițiilor corespunzătoare, lipim bornele cu șurub și rezistența de șunt în poziție.
Pasul 4: Adăugarea pieselor pentru rețeaua Voltage Sense
Pentru detectarea tensiunii de intrare, folosesc o rețea de divizare a tensiunii de 10K și 1K. Am adăugat, de asemenea, un condensator de 0,1 uF pe rezistorul 1K pentru a netezi tensiunile. Rețeaua de detectare a tensiunii este lipită lângă terminalul de intrare
Pasul 5: Adăugarea pieselor pentru rețeaua Sense Sense curentă
Curentul este măsurat prin calcularea și amplificarea căderii de tensiune pe rezistența de șunt cu un câștig predefinit stabilit de rețeaua de rezistență. Se utilizează modul de amplificare fără inversare. Este de dorit să păstrați urmele lipite mici, astfel încât să evitați căderea de tensiune nedorită.
Pasul 6: Finalizarea conexiunilor rămase și finalizarea construcției
Cu rețelele de detectare a tensiunii și curentului conectate și lipite, este timpul să lipiți pinii antetului masculin și să faceți conexiunile necesare ale ieșirilor de putere și semnal. Modulul va fi alimentat de tensiunea standard de funcționare de 5 volți pe care o putem obține cu ușurință de pe o placă arduino. Cele două ieșiri de detectare a tensiunii vor fi conectate la intrările analogice ale arduino-ului.
Pasul 7: Conectarea modulului cu Arduino
Cu modulul complet, este în sfârșit momentul să-l conectați cu un Arduino și să-l executați. Pentru a vedea valorile, am folosit un afișaj OLED care folosea protocolul I2C pentru a comunica cu arduino. Parametrii afișați pe ecran sunt Tensiune, Curent și Putere.
Pasul 8: Codul proiectului și diagrama circuitului
Am atașat schema de circuit și codul modulului de alimentare în acest pas (anterior am atașat fișierul.ino și.txt care conțineau codul, dar o eroare de server a făcut ca codul să fie inaccesibil sau ilizibil pentru utilizatori, așa că am scris întregul cod în acest pas. Știu că nu este o modalitate bună de a partaja codul:(). Simțiți-vă liber să modificați acest cod în funcție de cerințele dvs. Sper că acest proiect v-a fost de ajutor. Vă rugăm să împărtășiți feedback-ul dvs. în comentarii. Bravo!
#include
#include
#include
#include
#define OLED_RESET 4 Afișaj Adafruit_SSD1306 (OLED_RESET);
float val = 0;
curent plutitor = 0;
tensiune de plutire = 0;
putere de plutire = 0;
configurare nulă () {
pinMode (A0, INPUT);
pinMode (A1, INPUT);
display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // inițializați cu I2C addr 0x3C (pentru 128x32) display.display ();
întârziere (2000);
// Ștergeți tamponul.
display.clearDisplay ();
display.setTextSize (1);
display.setCursor (0, 0);
display.setTextColor (ALB);
Serial.begin (9600); // Pentru a vedea valorile pe monitorul serial
}
bucla nulă () {
// luând media pentru citiri stabile
for (int i = 0; i <20; i ++) {
curent = curent + analogRead (A0);
tensiune = tensiune + analogRead (A1); }
curent = (curent / 20); curent = curent * 0,0123 * 5,0; // valoarea calibrării, care trebuie modificată în funcție de componentele utilizate
tensiune = (tensiune / 20); tensiune = tensiune * 0,0508 * 5,0; // valoarea calibrării, care trebuie modificată în funcție de componentele utilizate
putere = tensiune * curent;
// imprimarea valorilor pe monitorul serial
Serial.print (tensiune);
Serial.print ("");
Serial.print (curent);
Serial.print ("");
Serial.println (putere);
// imprimarea valorilor pe afișajul OLED
display.setCursor (0, 0);
display.print ("Tensiune:");
display.print (tensiune);
display.println ("V");
display.setCursor (0, 10);
display.print ("Curent:");
display.print (curent);
display.println ("A");
display.setCursor (0, 20);
display.print ("Putere:");
display.print (putere);
display.println ("W");
display.display ();
întârziere (500); // rata de reîmprospătare stabilită de întârziere
display.clearDisplay ();
}
Recomandat:
Placă de conducere a motorului eficientă din punct de vedere al puterii: 5 pași
Placă de conducere a motorului eficientă din punct de vedere al energiei: Proiectul prezentat este o placă de circuit a motorului pas cu pas / conducătorului de motor cu IC driver de motor SN754410, care include unele caracteristici de economisire a energiei. Placa poate acționa 2 motoare de curent continuu sau un motor pas cu pas cu ajutorul circuitului de punte dual H din IC. SN754410 IC
Modul de măsurare a puterii DC Diy pentru Arduino: 8 pași
Modul de măsurare a puterii DC Diy pentru Arduino: În acest proiect vom vedea cum se realizează modulul de măsurare a puterii DC folosind Arduino
Modul de alimentare IoT: Adăugarea unei funcții de măsurare a puterii IoT la controlerul meu de încărcare solară: 19 pași (cu imagini)
Modul de alimentare IoT: Adăugarea unei funcții de măsurare a energiei IoT la controlerul meu de încărcare solară: Bună ziua tuturor, sper că toți sunteți grozavi! În acest instructiv vă voi arăta cum am realizat un modul de măsurare a puterii IoT care calculează cantitatea de energie generată de panourile mele solare, care este utilizată de controlerul meu de încărcare solară t
Sonda de măsurare a nivelului apei subterane pentru setări de resurse reduse: 4 pași (cu imagini)
Sondă de măsurare a nivelului apelor subterane pentru setări de resurse reduse: Introducere Am primit o cerere de la Oxfam de a dezvolta un mod simplu prin care copiii școlari din Afganistan să poată monitoriza nivelurile apelor subterane din puțurile din apropiere. Această pagină a fost tradusă în Dari de Dr. Amir Haidari și traducerea poate fi
Control periferic al puterii cu economizor de ecran: 3 pași (cu imagini)
Controlul puterii periferice cu Screen Saver: Mai întâi: acest proiect se conectează la portul imprimantei unui computer. Nu voi fi responsabil pentru cineva care își arde placa de bază. Vă rog, vă rog, fiți atenți și verificați triplu toate conexiunile dacă doriți să încercați ceva de genul