Αστέρια ΑνενεργάΑστέρια ΑνενεργάΑστέρια ΑνενεργάΑστέρια ΑνενεργάΑστέρια Ανενεργά
 

Υπό ανάπτυξη

Γράφει ο Στέλιος

Αδειούχος Ηλεκτρολόγος  1ης ομάδας Α ειδικότητας και ηλεκτρονικός.

312210 2453337766510 1944675408 n

Σε αυτο το project θα φτιάξουμε ενα μετεωρολογικό σταθμό με τον οποίο θα μετράμε 

την θερμοκρασία την υγρασία την πίεση της ατμόσφαιρας την υγρασία του εδάφους και θα αναγνωρίζουμε το πότε βρέχει .

 

 

 

 

Υλοποίηση κατασκευής

Βήμα 1ο 

Η λίστα των υλικών που θα χρησιμοποιηθούν:

Arduino board

DHT11 Humidity and temperature sensor  

BMP180 Barometer sensor 

Rain Drop sensor module

Soil Humidity sensor module

Breadboard or Custom ProtoShield

Jumper Wire

Βήμα 2ο

Οι συνδέσεις ειναι απλές ,ακολουθούμε τα παρακάτω

FPJ82JSIGZGTNR0.MEDIUM

Rain Drop Module

  • the VCC pin on Arduino’s 5V output
  • the GND pin to Arduino’s GND and
  • the Analog Data to Arduino's analog pin 0

 Soil Humidity Module

  • the VCC pin on Arduino’s 5V output
  • the GND pin to Arduino’s GND and
  • the Analog Data to Arduino's analog pin 1

 BMP185

  • the VCC pin on Arduino’s 3.3V output
  • the GND pin to Arduino’s GND
  • the SDA (Serial Data Line) pin to Arduino’s analog pin 4 and
  • the SCL (Serial Clock Line) pin to Arduino’s analog pin 5

 DHT11

  • the VCC pin on Arduino’s 5V output
  • the GND pin to Arduino’s GND and
  • the DATA pin to Arduino’s digital pin 4

Βήμα 3 

Το λογισμικό για τον  Arduino φαίνετε παρακάτω  το αντιγράφουμε όλο και το κάνουμε upload  

Για να το κατεβάσετε κάντε κλικ εδώ  arduino 

Επίσης θα χρειαστούμε και δύο βιβλιοθήκες 

Βιβλιοθήκη για τον αισθητήρα BMP180 εδώ

Βιβλιοθήκη για τον αισθητήρα dht11

/*
Pin Configuration
Rain Drop A0
Soil Humidity A1
SDA A4
SCL A5
DHT11 Data D2
*/
int result [5]; //Sensor result array
#include <Wire.h> //Including wire library
#include <SFE_BMP180.h> //Including BMP180 library
#define ALTITUDE 3 //Altitude where I live (change this to your altitude)
SFE_BMP180 pressure; //Creating an object
#include <DHT.h> //Including DHT11 library
#define DHTPIN 2 //Define DHT11 digital pin
#define DHTTYPE DHT11 //Define DHT TYPE which is DHT11
DHT dht(DHTPIN, DHTTYPE); //Execute DHT11 library
void setup() {
Serial.begin(9600); //Starting serial communication
Serial.println("Program started");
//Analog setup
pinMode(A0, INPUT); //Soil
pinMode(A1, INPUT); //Rain
//BMP180 Setup
if (pressure.begin()) //If initialization was successful, continue
{Serial.println("BMP180 init success");
Serial.print("AWS :");
Serial.print("\t");
Serial.print("Rain Drop\t");
Serial.print("Soil Hum\t");
Serial.print("Pressure \t");
Serial.print("Air Hum\t");
Serial.print("\t");
Serial.println("Temp \t");}
else //Else, stop code forever
{
Serial.println("BMP180 init fail");
while (1);
}

//DHT11 setup
dht.begin();
}
void loop() {
//analog setup
int A_Rain = analogRead(A0);
int A_Soil = analogRead(A1);
A_Rain = map(A_Rain, 800, 1023, 100, 0);
A_Soil = map(A_Soil, 400, 1023, 100, 0);
result[0]=A_Soil;
result[1]=A_Rain;
//bmp180 setup
char status;
double T, P, p0;
status = pressure.startTemperature();
if (status != 0) {
delay(status);
status = pressure.getTemperature(T);
if (status != 0) {
status = pressure.startPressure(3);
if (status != 0) {
delay(status);
status = pressure.getPressure(P, T);
if (status != 0) {
p0 = pressure.sealevel(P, ALTITUDE);
result[2]=p0;
}}}}
result[3] = dht.readHumidity();
result[4] = dht.readTemperature();
Serial.print("AWS : ");
Serial.print(" \t");
Serial.print(result[0]);
Serial.print(" %\t");
Serial.print("\t");
Serial.print(result[1]);
Serial.print(" %\t");
Serial.print("\t");
Serial.print(result[2]);
Serial.print(" hPa \t");
Serial.print(result[3]);
Serial.print(" %\t");
Serial.print("\t");
Serial.print(result[4]);
Serial.println("C \t");
delay(5000);
}

Τέλος αφού σιγουρευτείτε πως όλα έχουν πάει καλά βγάλτε τον arduino σε εξωτερικό χώρο ανοίξτε το σειριακό παράθυρο στο λογισμικό του arduino για να πάρετε τις πρώτες μετρήσεις.

Καλή επιτυχία.

 

 

Προσθήκη νέου σχολίου


Κωδικός ασφαλείας
Ανανέωση