Αναρτήσεις

pir motion sensor-servo-lcd

Εικόνα
  Αυτή είναι η διάταξη με την οποία θα μπορούσαμε να ανοίγουμε αυτόματα τον κάδο, μόλις ανιχνεύεται ανθρώπινη παρουσία με τη βοήθεια του pir motion αισθητήρα και να εμφανίζεται ένα προτρεπτικό μήνυμα για την απόρριψη των σκουπιδιών στην οθόνη. το σχέδιό μας στο tinkercad:

dust sensor and esp32

Εικόνα
 https://github.com/renebohne/esp32-weather-station/blob/master/README.md Μετρήσεις σε μια μέρα όπου η χωματερή Καλύμνου καπνίζει:

DHT22 με το esp32: διαβάζοντας θερμοκρασία, υγρασία και πίεση

Εικόνα
esp32  https://stevezafeiriou.com/esp32-dht22-sensor-setup/ Ο κώδικας για να διαβάσει τον αισθητήρα: // Example testing sketch for various DHT humidity/temperature sensors written by ladyada // REQUIRES the following Arduino libraries: // - DHT Sensor Library: https://github.com/adafruit/DHT-sensor-library // - Adafruit Unified Sensor Lib: https://github.com/adafruit/Adafruit_Sensor # include "DHT.h" # define DHTPIN 4 // Digital pin connected to the DHT sensor // Feather HUZZAH ESP8266 note: use pins 3, 4, 5, 12, 13 or 14 -- // Pin 15 can work but DHT must be disconnected during program upload. // Uncomment whatever type you're using! //#define DHTTYPE DHT11 // DHT 11 # define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 //#define DHTTYPE DHT21 // DHT 21 (AM2301) // Connect pin 1 (on the left) of the sensor to +5V // NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1 // to 3.3V instead of 5V! // Connect pin 2 of the se...

esp32 and wifi

Εικόνα
presentation /*     Rui Santos & Sara Santos - Random Nerd Tutorials   https://RandomNerdTutorials.com/learn-esp32-with-arduino-ide/   Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files.   The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. */ #include <WiFi.h> #include <WebServer.h> // Replace with your network credentials const char * ssid = "SSID" ; const char * password = "PASSWORD" ; // Assign output variables to GPIO pins const int output26 = 26 ; const int output27 = 27 ; String output26State = "off" ; String output27State = "off" ; // Create a web server object WebServer server ( 80 ) ; // Function to handle turning GPIO 26 on void handleGPIO26On () {   output26State = "on" ;   digitalWrite ( output26, HIGH ) ;   handleRoot () ; } // Function to handle ...

Χρησιμοποιώντας την ηλιακή ενέργεια

Εικόνα
Ένα χρήσιμο στοιχείο στην πραγματοποίηση της ιδέας μας είναι η χρήση της ηλιακής ενέργειας για την τροφοδοσία των συσκευών μας (όπως π.χ. το esp32) αλλά και για τη φόρτιση κινητών σε εξωτερικούς χώρους, όπου η παραμονή μας διαρκεί αρκετές ώρες. Πειραματιστήκαμε με το esp32  και τα tablet  του σχολείου και επιβεβαιώσαμε ότι η τάση και το ρεύμα εξόδου είναι αρκετά για τη λειτουργία του αισθητήρα DHT22 συνδεδεμένου με το esp32, η αποστολή των μετρήσεων στο Thingspeak καθώς και η φόρτιση ενός tablet (έστω και με πιο αργό ρυθμό). https://randomnerdtutorials.com/power-esp32-esp8266-solar-panels-battery-level-monitoring/

servo and led

Εικόνα
   Ελέγχοντας την κίνηση ενός servo το οποίο μπορεί να χρησιμοποιηθεί για το άνοιγμα των κάδων στην πλατεία και όχι μόνο. Για την οπτικοποίηση χρησιμοποιήσαμε τη βοήθεια δύο led: // C++ code #include <Servo.h> int angle = 0; int i = 0; Servo servo_9; void setup() {   pinMode(5, OUTPUT);   servo_9.attach(9, 500, 2500);   pinMode(4, OUTPUT);   angle = 0; } void loop() {   while (angle < 180) {     angle += 1;     digitalWrite(5, HIGH);     servo_9.write(angle);   }   delay(2000); // Wait for 2000 millisecond(s)   if (angle == 180) {     digitalWrite(5, LOW);   }   while (angle > 0) {     angle += -1;     digitalWrite(4, HIGH);     servo_9.write(angle);   }   delay(2000); // Wait for 2000 millisecond(s)   digitalWrite(4, LOW); }

ldr and lcd

Εικόνα
    // C++ code #include <LiquidCrystal_I2C.h> int ldr_light = 0 ; int darkness = 0 ; LiquidCrystal_I2C lcd_2 ( 0x 27 , 16 , 2 ) ; void setup () {   lcd_2 . init () ;   lcd_2 . clear () ;           lcd_2 . backlight () ;   pinMode ( A0, INPUT ) ;   pinMode ( 7 , OUTPUT ) ;   darkness = 650 ; } void loop () {   ldr_light = analogRead ( A0 ) ;   lcd_2 . setCursor ( 1 , 0 ) ;   lcd_2 . print ( "Is it dark ?" ) ;   lcd_2 . setCursor ( 1 , 1 ) ;   lcd_2 . print ( "darkness=" ) ;   lcd_2 . print ( ldr_light ) ;   if ( ldr_light < darkness ) {     digitalWrite ( 7 , HIGH ) ;   } else {     digitalWrite ( 7 , LOW ) ;   }   delay ( 1000 ) ; // Wait for 1000 millisecond(s)   lcd_2 . clear () ; } https://www.build-electronic-circuits.com/arduino-light-sensor/