Talaan ng mga Nilalaman:

Module ng Pagsukat ng Lakas ng DIY para sa Arduino: 9 Mga Hakbang (na may Mga Larawan)
Module ng Pagsukat ng Lakas ng DIY para sa Arduino: 9 Mga Hakbang (na may Mga Larawan)

Video: Module ng Pagsukat ng Lakas ng DIY para sa Arduino: 9 Mga Hakbang (na may Mga Larawan)

Video: Module ng Pagsukat ng Lakas ng DIY para sa Arduino: 9 Mga Hakbang (na may Mga Larawan)
Video: 30 Ultimate Windows 10 Mga Tip at Trick para sa 2020 2024, Nobyembre
Anonim
Module ng Pagsukat ng Lakas ng DIY para sa Arduino
Module ng Pagsukat ng Lakas ng DIY para sa Arduino
Module ng Pagsukat ng Lakas ng DIY para sa Arduino
Module ng Pagsukat ng Lakas ng DIY para sa Arduino
Module ng Pagsukat ng Lakas ng DIY para sa Arduino
Module ng Pagsukat ng Lakas ng DIY para sa Arduino

Kamusta kayong lahat, sana ay mahusay kayo! Sa itinuturo na ito ay ipapakita ko sa iyo kung paano ko nagawa ang Power meter / Wattmeter module na ito para magamit sa isang Arduino board. Maaaring makalkula ng power meter na ito ang kuryente na natupok ng at DC Load. Kasabay ng kapangyarihan, ang modyul na ito ay maaari ding magbigay sa amin ng tumpak na pagbabasa ng boltahe at kasalukuyang. Madali nitong masusukat ang mababang boltahe (sa paligid ng 2V) at mababang alon, kasing baba ng 50 mA na may error na hindi hihigit sa 20mA. Ang kawastuhan ay nakasalalay sa pagpili ng mga bahagi batay sa iyong mga kinakailangan.

Mga gamit

  • IC LM358 dual OP-AMP
  • 8 pin base ng IC
  • Shunt resistor (8.6 milliOhms sa aking kaso)
  • Mga resistorista: 100K, 10K, 2.2K, 1K (1 / 2watt)
  • Mga Capacitor: 3 * 0.1uF ceramic capacitors
  • Veroboard o zero board
  • Mga terminal ng tornilyo
  • Panghinang at bakalang panghinang
  • Arduino Uno o anumang iba pang katugmang board
  • OLED Display
  • Pagkonekta sa mga wire ng breadbard

Hakbang 1: Pagkolekta ng Mga Kinakailangan na Mga Sangkap

Pagtitipon ng Mga Kinakailangan na Mga Sangkap
Pagtitipon ng Mga Kinakailangan na Mga Sangkap

Gumagamit ang proyektong ito ng napakasimple at madaling makakuha ng mga sangkap: nagsasama sila ng mga resistors, ceramic capacitor, Operational amplifier at isang veroboard para sa prototyping.

Ang pagpili at halaga ng mga bahagi ay nakasalalay sa uri ng aplikasyon at ang saklaw ng lakas na nais mong sukatin.

Hakbang 2: Ang Prinsipyo sa Paggawa

Ang Prinsipyo sa Paggawa
Ang Prinsipyo sa Paggawa
Ang Prinsipyo sa Paggawa
Ang Prinsipyo sa Paggawa
Ang Prinsipyo sa Paggawa
Ang Prinsipyo sa Paggawa
Ang Prinsipyo sa Paggawa
Ang Prinsipyo sa Paggawa

Ang pagtatrabaho ng module ng kuryente ay batay sa dalawang konsepto ng teorya ng circuit at pangunahing kuryente: Ang konsepto ng divider ng boltahe para sa pagsukat ng input boltahe at Batas ng Ohm upang makalkula ang kasalukuyang dumadaloy sa circuit. Gumagamit kami ng isang shunt resistor upang lumikha ng isang napakaliit na boltahe na drop sa kabuuan nito. Ang pagbagsak ng boltahe na ito ay nasa proporsyon sa dami ng kasalukuyang dumadaloy sa shunt. Ang maliit na boltahe na ito kapag pinalakas ng isang pagpapatakbo na amplifier ay maaaring magamit bilang isang input sa isang microcontroller na maaaring mai-program upang bigyan kami ng kasalukuyang halaga. Ang pagpapatakbo amplifier ay ginagamit bilang isang hindi invertting amplifier kung saan ang nakuha ay natutukoy ng mga halaga ng feedback risistor R2 at R1. Ang paggamit ng pagsasaayos na hindi inverting ay nagbibigay-daan sa amin upang magkaroon ng isang karaniwang batayan bilang sanggunian sa pagsukat. Para sa mga ito, ang kasalukuyang sinusukat sa mababang bahagi ng circuit. Para sa aking aplikasyon pumili ako ng isang nakakuha ng 46 sa pamamagitan ng paggamit ng 100K at 2.2K risistor bilang feedback network. Ang pagsukat ng boltahe ay ginagawa sa pamamagitan ng paggamit ng isang boltahe divider circuit na hinahati ang input boltahe sa proporsyon sa ginamit na resistor network.

Ang parehong kasalukuyang halaga mula sa OP-Amp at ang halaga ng boltahe mula sa divider network ay maaaring pakainin sa dalawang mga analog input ng arduino upang makalkula natin ang kuryenteng natupok ng isang pag-load.

Hakbang 3: Pinagsasama ang Mga Bahagi.

Pinagsasama ang mga Bahagi.
Pinagsasama ang mga Bahagi.
Pinagsasama ang mga Bahagi.
Pinagsasama ang mga Bahagi.
Pinagsasama ang mga Bahagi.
Pinagsasama ang mga Bahagi.

Simulan natin ang pagtatayo ng aming module ng kuryente sa pamamagitan ng pagpapasya sa posisyon ng mga terminal ng tornilyo para sa koneksyon sa pag-input at output. Matapos markahan ang mga naaangkop na posisyon, hinihinang namin ang mga terminal ng tornilyo at ang resistor ng shunt sa lugar.

Hakbang 4: Pagdaragdag ng Mga Bahagi para sa Voltage Sense Network

Pagdaragdag ng Mga Bahagi para sa Voltage Sense Network
Pagdaragdag ng Mga Bahagi para sa Voltage Sense Network
Pagdaragdag ng Mga Bahagi para sa Voltage Sense Network
Pagdaragdag ng Mga Bahagi para sa Voltage Sense Network
Pagdaragdag ng Mga Bahagi para sa Voltage Sense Network
Pagdaragdag ng Mga Bahagi para sa Voltage Sense Network

Para sa sensing ng pag-input ng boltahe gumagamit ako ng isang boltahe na divider network na 10K at 1K. Nagdagdag din ako ng isang 0.1 uF capacitor sa kabuuan ng 1K risistor upang makinis ang mga voltages. Ang boltahe na network ng pakiramdam ay soldered malapit sa input terminal

Hakbang 5: Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network

Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network
Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network
Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network
Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network
Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network
Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network
Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network
Pagdaragdag ng Mga Bahagi para sa Kasalukuyang Sense Network

Ang kasalukuyang ay sinusukat sa pamamagitan ng pagkalkula at pagpapalaki ng boltahe drop sa kabuuan ng shunt risistor na may paunang natukoy na pakinabang na itinakda ng resistor network. Non inverting amplification mode ang ginamit. Ito ay kanais-nais na panatilihing maliit ang mga solder trace upang maiwasan ang hindi nais na pagbagsak ng boltahe.

Hakbang 6: Pagkumpleto ng Natitirang Mga Koneksyon at Pagtatapos ng Build.

Pagkumpleto ng Natitirang Mga Koneksyon at Pagtatapos ng Build.
Pagkumpleto ng Natitirang Mga Koneksyon at Pagtatapos ng Build.
Pagkumpleto ng Natitirang Mga Koneksyon at Pagtatapos ng Build.
Pagkumpleto ng Natitirang Mga Koneksyon at Pagtatapos ng Build.
Pagkumpleto ng Natitirang Mga Koneksyon at Pagtatapos ng Build.
Pagkumpleto ng Natitirang Mga Koneksyon at Pagtatapos ng Build.

Sa pamamagitan ng boltahe at kasalukuyang mga network ng kahulugan na konektado at na-solder, oras nito upang maghinang ang mga male pin na header at gawin ang mga kinakailangang koneksyon ng kapangyarihan at signal output. Ang module ay tatakbo ng pamantayan ng boltahe ng pagpapatakbo ng 5 volts na madali nating makukuha mula sa isang arduino board. Ang mga output ng dalawang boltahe ay maiugnay sa mga analog input ng arduino.

Hakbang 7: Pagkonekta sa Modyul Sa Arduino

Pagkonekta sa Modyul Sa Arduino
Pagkonekta sa Modyul Sa Arduino
Pagkonekta sa Modyul Sa Arduino
Pagkonekta sa Modyul Sa Arduino
Pagkonekta sa Modyul Sa Arduino
Pagkonekta sa Modyul Sa Arduino
Pagkonekta sa Modyul Sa Arduino
Pagkonekta sa Modyul Sa Arduino

Sa pagiging kumpleto ng modyul, sa wakas ay oras na upang ikonekta ito sa isang Arduino at patakbuhin ito. Upang makita ang mga halaga, gumamit ako ng isang OLED display na gumamit ng I2C protocol upang makipag-usap sa arduino. Ang mga parameter na ipinakita sa screen ay Boltahe, Kasalukuyan at Lakas.

Hakbang 8: Project Code at Circuit Diagram

Project Code at Circuit Diagram
Project Code at Circuit Diagram

Inilakip ko ang circuit diagram at code ng module ng kuryente sa hakbang na ito (Dati ay na-attach ko ang.ino at.txt file na naglalaman ng code ngunit ang ilang mga error sa server ang sanhi ng code na hindi ma-access o hindi mabasa sa mga gumagamit, kaya't sinulat ko ang buong code sa hakbang na ito. Alam ko na hindi magandang paraan upang maibahagi ang code:(). Huwag mag-atubiling baguhin ang code na ito alinsunod sa iyong mga kinakailangan. Inaasahan kong kapaki-pakinabang para sa iyo ang proyektong ito. Mangyaring ibahagi ang iyong puna sa mga komento. Cheers!

# isama

# isama

# isama

# isama

# tukuyin ang OLED_RESET 4 Adafruit_SSD1306 display (OLED_RESET);

float val = 0;

float kasalukuyang = 0;

float boltahe = 0;

float power = 0;

walang bisa ang pag-setup () {

pinMode (A0, INPUT);

pinMode (A1, INPUT);

display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // ipasimula sa I2C addr 0x3C (para sa 128x32) display.display ();

pagkaantala (2000);

// I-clear ang buffer.

display.clearDisplay ();

display.setTextSize (1);

display.setCursor (0, 0);

display.setTextColor (PUTI);

Serial.begin (9600); // Upang makita ang mga halaga sa serial monitor

}

void loop () {

// kumukuha ng average para sa matatag na pagbabasa

para sa (int i = 0; i <20; i ++) {

kasalukuyang = kasalukuyang + analogRead (A0);

boltahe = boltahe + analogRead (A1); }

kasalukuyang = (kasalukuyang / 20); kasalukuyang = kasalukuyang * 0.0123 * 5.0; // halaga ng pagkakalibrate, mababago alinsunod sa ginamit na mga sangkap

boltahe = (boltahe / 20); boltahe = boltahe * 0.0508 * 5.0; // halaga ng pagkakalibrate, mababago alinsunod sa ginamit na mga sangkap

lakas = boltahe * kasalukuyang;

// pag-print ng mga halaga sa serial monitor

Serial.print (boltahe);

Serial.print ("");

Serial.print (kasalukuyang);

Serial.print ("");

Serial.println (lakas);

// pag-print ng mga halaga sa display na OLED

display.setCursor (0, 0);

display.print ("Boltahe:");

display.print (boltahe);

display.println ("V");

display.setCursor (0, 10);

display.print ("Kasalukuyang:");

display.print (kasalukuyang);

display.println ("A");

display.setCursor (0, 20);

display.print ("Lakas:");

display.print (lakas);

display.println ("W");

display.display ();

pagkaantala (500); // refresh rate na itinakda ng pagkaantala

display.clearDisplay ();

}

Inirerekumendang: