This is an old revision of the document!


Nume proiect

Introducere

Pentru proiect am ales sa fac un sensor care măsoară curentul consumat de orice aparat electronic, dar FOARTE IMPORTANT, sa consume maximum 5 amperi. Ideea a fost inspirată de necesitatea de a da valorile de curent consumate pentru factura la curent. Plănuiesc să îmbunătățesc design-ul pentru a putea monta aparatul la tabloul meu de siguranță, si din casă să pot observa în timp real curentul consumat. Este un proiect destul de compact si ieftin de făcut, așa că oricine îl poate monta în casa lor, fiind în părerea mea foarte util.

Descriere generală

Funcționarea proiectului nu necesită nici-o interacționare din partea omului, tot procesul fiind automat în cod. Senzorul de curent alternativ este legat de firul conectat la borna pozitiva și transmite date către Arduino, care le procesează și le scrie pe un display LCD. !ATENȚIE! În schemă am folosit o fotodiodă, deoarece TinkerCad nu are niciun fel de senzor de curent, dar are cele două borne ale senzorului folosit de mine și permite copierea perfectă a proiectului.

Hardware Design

Componentele utilizate sunt:

  • Arduino Uno
  • Breadboard
  • LCD1602 Display Module
  • B10K Potentiometer
  • ZMCT103C AC Current Sensor
  • Wires

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare: Arduino IDE
  • librării şi surse 3rd-party: EmonLib.h, LiquidCrystal.h
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

#include “EmonLib.h” Include Emon Library #include <LiquidCrystal.h> #define VOLT_CAL 151.1 #define CURRENT_CAL 25 EnergyMonitor emon1; Create an instance const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2; LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

  void setup()
  {  
    Serial.begin(9600);
    lcd.begin(16,2);              // columns, rows.  use 16,2 for a 16x2 LCD, etc.
    lcd.clear();
    lcd.setCursor(0,0);           // set cursor to column 0, row 0 (the first row)
    lcd.print("Running");
    emon1.voltage(1, VOLT_CAL, 1.7);  // Voltage: input pin, calibration, phase_shift
    emon1.current(0, CURRENT_CAL);       // Current: input pin, calibration.
  }
  void loop()
  {
    emon1.calcVI(20,2000);         // Calculate all. No.of half wavelengths (crossings), time-out
    float currentDraw = emon1.Irms;             //extract Irms into Variable
    float supplyVoltage = emon1.Vrms;                    //extract Vrms into Variable
    Serial.print("Voltage: ");
    Serial.println(supplyVoltage);

    Serial.print("Current: ");
    Serial.println(currentDraw);
    Serial.print("Watts: ");
    Serial.println(currentDraw * supplyVoltage);
    Serial.println("\n\n");
    delay (2000);
    lcd.clear();
    lcd.setCursor(0,0);           // Displays all current data
    lcd.print(currentDraw);
     lcd.print("A");
    lcd.setCursor(10,0);
    lcd.print(currentDraw * supplyVoltage);
    lcd.print("W");
    lcd.setCursor(0,1);
    lcd.print(supplyVoltage);
    lcd.print("V");
    lcd.setCursor(10,1);
    lcd.print(currentDraw * supplyVoltage / 1000);
    lcd.print("kW");
  }

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2023/tmiu/voltagemeasurer.1685294694.txt.gz · Last modified: 2023/05/28 20:24 by eduard.bazarea
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0