Meteorološka stanica
Moderators: pedja089, stojke369, [eDo], trax
Meteorološka stanica
Ovih dana smo završili projekat meteorološke stanice i postavili je na zgradu naše škole. Uređaj smo spakovali u kutijicu dizajniranu u Tinkercaduhttps://www.tinkercad.com/things/jW1Sr1B6j2U-ws a potom i odštampali na ultimaker 2+ štampaču. Uređaj mjeri temperaturu, vlažnost, pritisak i sadržaj dima u zraku. Svi rezultati se šalju na školsku stranicu http://devetaos.weebly.com.Šema je u prilogu rađena u Eagle-u. Procesor koji radi podatke i šalje na web je NODE MCU mini a program pisan u Arduino IDE. Naknadno ću ih dodati.
Re: Meteorološka stanica
Evo korišteni kod koji sam skrpio iz nekoliko različitih projekata i prilagodio svojim potrebama:
Eagle shema:
Code: Select all
#include <DHT.h> // Including library for dht
#include <Wire.h>
#include <SFE_BMP180.h>
#include <ESP8266WiFi.h>
String apiKey = "Ubacite svoj api kod"; // Enter your Write API key from ThingSpeak
const char *ssid = "ubacire svoj ssid"; // replace with your wifi ssid and wpa2 key
const char *pass = "ubacite svoj pasvord";
const char* server = "api.thingspeak.com";
#define DHTPIN 0 //pin where the dht11 is connected
DHT dht(DHTPIN, DHT11);
int smoke = A0;
int sensorThres = 400; // Your threshold value
WiFiClient client;
SFE_BMP180 bmp180;
void setup()
{
pinMode(smoke, INPUT);
Serial.begin(9600);
delay(10);
dht.begin();
bool success = bmp180.begin();
if (success) {
Serial.println("BMP180 init success");
}
Serial.println("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
}
void loop()
{
char status;
double T, P;
bool success = false;
status = bmp180.startTemperature();
if (status != 0) {
delay(1000);
status = bmp180.getTemperature(T);
if (status != 0) {
status = bmp180.startPressure(3);
if (status != 0) {
delay(status);
status = bmp180.getPressure(P, T);
if (status != 0) {
Serial.print("Pressure: ");
Serial.print(P);
Serial.println(" hPa");
Serial.print("Temperature: ");
Serial.print(T);
Serial.println(" C");
}
}
}
}
int k = analogRead(smoke);
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t))
{
Serial.println("Failed to read from DHT sensor!");
return;
}
if (client.connect(server,80)) // "184.106.153.149" or api.thingspeak.com
{
String postStr = apiKey;
postStr +="&field1=";
postStr += String(t);
postStr +="&field2=";
postStr += String(h);
postStr +="&field3=";
postStr += String(P);
postStr +="&field4=";
postStr += String(k);
postStr += "\r\n\r\n";
client.print("POST /update HTTP/1.1\n");
client.print("Host: api.thingspeak.com\n");
client.print("Connection: close\n");
client.print("X-THINGSPEAKAPIKEY: "+apiKey+"\n");
client.print("Content-Type: application/x-www-form-urlencoded\n");
client.print("Content-Length: ");
client.print(postStr.length());
client.print("\n\n");
client.print(postStr);
Serial.print("Temperature: ");
Serial.print(t);
Serial.print(" degrees Celcius, Humidity: ");
Serial.print(h);
Serial.print("Pritisak: ");
Serial.print(P);
Serial.print("Kvalitet zraka: ");
Serial.print(k);
Serial.println("%. Send to Thingspeak.");
}
client.stop();
Serial.println("Waiting...");
// thingspeak needs minimum 15 sec delay between updates, i've set it to 30 seconds
delay(10000);
}
Re: Meteorološka stanica
Super
Re: Meteorološka stanica
Super je projekat. Ideja mi se bas svidja.
Samo mi se kutija nikako ne svidja... Po meni treba biti puno provetrenija i neki stit od sunca da ima.
Mozda ovako nesto
https://www.yoctopuce.com/EN/article/a- ... d-node-red
Samo mi se kutija nikako ne svidja... Po meni treba biti puno provetrenija i neki stit od sunca da ima.
Mozda ovako nesto
https://www.yoctopuce.com/EN/article/a- ... d-node-red
Re: Meteorološka stanica
Evo još jedan prijedlog
https://www.thingiverse.com/thing:2853171
https://www.thingiverse.com/thing:2853171
Re: Meteorološka stanica
Pozdrav, da li je neko imao iskustvo sa ovim ESP-om. U Meteo stanici sam koristio
wemas-ov node mcu-mini i odlično je sve radilo na stolu, ali kada sam ga montirao vani prvo se dešavalo da zablesavi i isključi se nekad nakon 2-3 sata nekad nakon dan i na kraju više ne radi nikako. Bilo je dovoljno isključiti ga sa napajanja i nakon par sekundi uključiti da ponovo radi. Sada ne radi nikako. Kada ga priključim na računar prepozna ga kao port4 ali ne dozvoljava nikakav upis podataka ni programa. Nadam se da nije razlog korona virus
wemas-ov node mcu-mini i odlično je sve radilo na stolu, ali kada sam ga montirao vani prvo se dešavalo da zablesavi i isključi se nekad nakon 2-3 sata nekad nakon dan i na kraju više ne radi nikako. Bilo je dovoljno isključiti ga sa napajanja i nakon par sekundi uključiti da ponovo radi. Sada ne radi nikako. Kada ga priključim na računar prepozna ga kao port4 ali ne dozvoljava nikakav upis podataka ni programa. Nadam se da nije razlog korona virus
Re: Meteorološka stanica
Nisam nikad radio, ali to mi jako lici ili na problem sa napajanjem ili sa memorijom.
A jer nece da se upise, vise na memoriju vuce.
A jer nece da se upise, vise na memoriju vuce.
Re: Meteorološka stanica
Čip za komunikaciju je ch340 i većina arduino pločica koje su imale taj čip su mi bile jako problematične. Iz čista mira neće da učitava program a onda opet proradi. Imao sam samo jednu pločicu, davno sam naručio još par komada no izgleda da neće ni doći
Re: Meteorološka stanica
Mozda, ali mi cudno da je on. Njega lako proveris. Vidi samo na izlazu tx i rx.
U srbiji ih ima na kupujem prodajem. Pa vidi ocel ko poslati busem... Ako ne, iskombinovacemo nesto.
U srbiji ih ima na kupujem prodajem. Pa vidi ocel ko poslati busem... Ako ne, iskombinovacemo nesto.