Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2023:vstoica:eduard-spirache [2023/05/27 22:07]
eduard.spirache
pm:prj2023:vstoica:eduard-spirache [2023/05/31 11:11] (current)
eduard.spirache [Rezultate obtinute]
Line 1: Line 1:
 ===== Ghost Repeller - Spirache Eduard 332CA ===== ===== Ghost Repeller - Spirache Eduard 332CA =====
 +
 +
  
 ===== Introducere ===== ===== Introducere =====
Line 6: Line 8:
 Pentru a veni în ajutorul tuturor persoanelor iubitoare de grădini, în timpul nopții, voi crea un proiector LED de grădină care se aprinde în momentul în care detectează mișcare. Astfel, atunci când se așează într-un alt colț al grădinii sau se ridică pentru a aduce ceva, nu vor avea parte de surprize neplăcute. Nimeni nu își dorește să creadă că grădina este bântuită de fantome, nu-i așa? Pentru a veni în ajutorul tuturor persoanelor iubitoare de grădini, în timpul nopții, voi crea un proiector LED de grădină care se aprinde în momentul în care detectează mișcare. Astfel, atunci când se așează într-un alt colț al grădinii sau se ridică pentru a aduce ceva, nu vor avea parte de surprize neplăcute. Nimeni nu își dorește să creadă că grădina este bântuită de fantome, nu-i așa?
  
-În plus, afișarea temperaturii ar fi un plus, pentru că de multe ori serile de vară pot fi răcoroase. Așa că aș vrea ca proiectorul de nădejde să conțină un senzor de temperatură pentru a putea verifica dacă o pătură este necesară înaintea unei sesiuni de privit stele. Și, în cele din urmă, un ceas ar fi util pentru că, să recunoaștem,​ eu am mereu tendința să pierd timpul în grădină și să nu-mi dau seama când trebuie să mă întorc în casă.+În plus, afișarea temperaturii ar fi un plus, pentru că de multe ori serile de vară pot fi răcoroase. Așa că aș vrea ca proiectorul de nădejde să conțină un senzor de temperatură pentru a putea verifica dacă o pătură este necesară înaintea unei sesiuni de privit stele.
  
 ==== Descriere ==== ==== Descriere ====
-Proiectorul LED se va aprinde in momentul in care afara este intuneric si detecteaza miscare. Dedesubtul proiectorului va fi plasata o cutie cu un display ce va afisa timpul, dar si temperatura.+Proiectorul LED se va aprinde in momentul in care afara este intuneric si detecteaza miscare. Dedesubtul proiectorului va fi plasata o cutie cu un display ce va afisa umiditatea, dar si temperatura.
  
 ===== Hardware ===== ===== Hardware =====
Line 20: Line 22:
   * Senzor de temperatura   * Senzor de temperatura
   * Ecran LCD   * Ecran LCD
-  * Modul ceas RTC 
-  * Baterie 3V 
  
 === Diagrama === === Diagrama ===
Line 27: Line 27:
  
 === Circuit === === Circuit ===
 +{{:​pm:​prj2023:​vstoica:​circuit_spirache.jpg?​700|}}
  
 ===== Software ===== ===== Software =====
 === Diagrama === === Diagrama ===
 {{:​pm:​prj2023:​vstoica:​diagrama_software_spirache_eduard.png?​700|}} {{:​pm:​prj2023:​vstoica:​diagrama_software_spirache_eduard.png?​700|}}
 +
 === Cod === === Cod ===
 +<​code>​
 +
 +#include <​LiquidCrystal_I2C.h>​
 +#include <​dht.h>​
 +
 +dht DHT;
 +
 +LiquidCrystal_I2C lcd(0x27,​16,​2);​
 +
 +int LightSensor = 0;
 +int PIRSensor = 0;
 +bool RelayOn = false;
 +int sensor_Input;​
 +float temp;
 +
 +void setup() {
 +  Serial.begin(9600);​
 +
 +  // Init pins
 +  pinMode(A2, INPUT);
 +  pinMode(2, INPUT);
 +  pinMode(7, OUTPUT);
 +
 +  // Init LED
 +  digitalWrite(7,​ HIGH);
 +  ​
 +  // Init LCD
 +  lcd.begin(16,​ 2);
 +  lcd.init();
 +  lcd.backlight();​
 +}
 +void loop() {
 +  display_temp();​
 +  detect_motion();​
 +}
 +void detect_motion()
 +{
 + ​LightSensor = analogRead(A2);​
 + ​PIRSensor = digitalRead(2);​
 +
 +  Serial.println(PIRSensor);​
 +  Serial.println(LightSensor);​
 +
 + // If it keeps detecting motion and the light is on,
 + // it keeps the light on for another 5 seconds
 + if (PIRSensor == HIGH && RelayOn == true) {
 +   ​delay(5000);​
 +   ​return;​
 + }
 + 
 + if (LightSensor < 100) {
 +   // Sets the relay on if it detects motion
 +   if (PIRSensor == HIGH) {
 +     ​digitalWrite(7,​ LOW);
 +     ​RelayOn = true;
 +     ​delay(5000); ​
 +   } else {
 +     ​digitalWrite(7,​ HIGH);
 +     ​RelayOn = false;
 +     ​delay(200);​
 +   }
 + } else {
 +   // sets to LOW
 +   ​digitalWrite(7,​ HIGH);
 +   ​RelayOn = false;
 +   ​delay(200);​
 + ​} ​
 +  ​
 +}
 +void display_temp()
 +{
 +  int dht = DHT.read11(A0);​
 +  lcd.setCursor(0,​ 0);
 +  lcd.print("​Temp:"​);​
 +  lcd.print(DHT.temperature);​
 +  lcd.print("​C"​);​
 +  lcd.setCursor(0,​ 1);
 +  lcd.print("​Umiditate:"​);​
 +  lcd.print(DHT.humidity);​
 +}
 +</​code>​
 +
 +===== Rezultate obtinute =====
 +<​html>​
 +<iframe width="​560"​ height="​315"​ src="​https://​youtube.com/​embed/​CAY0YuoIFvo?​feature=share"​ title="​YouTube video player"​ frameborder="​0"​ allow="​accelerometer;​ autoplay; clipboard-write;​ encrypted-media;​ gyroscope; picture-in-picture;​ web-share"​ allowfullscreen>​
 +</​iframe></​html>​
 +
 +
 +{{:​pm:​prj2023:​vstoica:​spirache_eduard_rezultat_final.jpeg?​300|}}
 +{{:​pm:​prj2023:​vstoica:​lipituri_spirache.jpg?​350|}}
 +{{:​pm:​prj2023:​vstoica:​carcasa_deschisa_spirache.jpg?​300|}}
 +
 +
 +
 +===== Concluzie =====
 +A fost un proiect interesant, ce pot spune ca m-a ajutat sa imi dezvolt imaginatia, mi-a demonstrat ca daca iti doresti sa confectionezi un lucru pe cont propriu, nu este imposibil.
 +
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +  * https://​github.com/​adafruit/​DHT-sensor-library 
-Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. +  * https://​howtomechatronics.com/​tutorials/​arduino/​dht11-dht22-sensors-temperature-and-humidity-tutorial-using-arduino/​ 
-</note>+  ​https://www.arduinolibraries.info/​libraries/​liquid-crystal-i2-c 
 +  * https://​www.iottechtrends.com/​use-relay-module-with-arduino/
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
- 
-==== Schema Hardware ==== 
-{{:​pm:​prj2023:​vstoica:​hardware_spirache.png?​600|}} 
  
pm/prj2023/vstoica/eduard-spirache.1685214447.txt.gz · Last modified: 2023/05/27 22:07 by eduard.spirache
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