Orodha ya maudhui:

Birra_Monitor: 3 Hatua
Birra_Monitor: 3 Hatua

Video: Birra_Monitor: 3 Hatua

Video: Birra_Monitor: 3 Hatua
Video: ▶️ Училка - Мелодрама | Училка фильм 2018 - Русские мелодрамы 2024, Novemba
Anonim
Birra_Monitor
Birra_Monitor

Ni mpango wa kutumikia mfuatiliaji wa shughuli za della birra fatta katika casa tramite un semplice sensore di vibrazione (SW-420 NC). l'aggiunta del sensore di temperatura (DHT22) hutumikia mfuatiliaji wa hali ya juu na umetumikia della stanza atta alla fermentazione. Jaribu programu hii ikiwa una mpango wa programu na programu ya programu ya Blynk inayoweza kutumiwa kwa njia zote za IOT ya Solution.

Mradi huo hutumiwa kufuatilia uchakachuaji wa bia inayotengenezwa kienyeji kwa kutumia kihisi rahisi cha mtetemo (SW-420 NC). nyongeza ya sensorer ya joto (DHT22) hutumikia kufuatilia hali ya joto na unyevu wa chumba kinachofaa kwa kuchacha. Takwimu hizi zinasimamiwa na kadi ya nodemcu na kuonyeshwa kupitia programu ya Blynk iliyoteuliwa kukuza suluhisho za IoT.

Hatua ya 1: Ufungaji

Ufungaji
Ufungaji
Ufungaji
Ufungaji

Scheda e sensori sono alloggiate in una semplice scatola di derivazione.

Bodi na sensorer zimewekwa kwenye sanduku rahisi la makutano.

Hatua ya 2: Sensorer Kazini

Sensorer katika Kazi
Sensorer katika Kazi
Sensorer katika Kazi
Sensorer katika Kazi

quello che succede quando il sensore è "montato" sul gorgogliatore che ad ogni espulsione di CO2 ilipata usajili wa kutafakari vibrazioni che verranno visualizate sull'app Blynk

ni nini hufanyika wakati chombo hicho "kimewekwa" kwenye kibubu ambacho kila wakati CO2 inafukuzwa sensor itarekodi mitetemo ambayo itaonyeshwa kwenye programu ya Blynk

Hatua ya 3: Kanuni

Huduma zote za mtandaoni zinahitajika kwenye tovuti yetu na tafadhali fikiria programu inayofaa ya programu na programu ya Arduino IDE.

nambari ya kuruhusu utendakazi wa yote ni yafuatayo ambayo yatatosha kupakia kwenye kadi programu ya Arduino IDE

# pamoja na Adafruit_Sensor.h

# pamoja na DHT.h

#fafanua BLYNK_PRINT Serial

# pamoja na ESP8266WiFi.h;

# pamoja na BlynkSimpleEsp8266.h;

# pamoja na RahisiTimer.h;

# pamoja na WijetiRTC.h;

lettura ya kuelea [50]; // vyombo vya habari vya Arrayper

nume_Letture = 0; // maendeleo ya letture

kuelea tot_Letture = 0; // letma ya somma

vyombo vya habari vya kueleaLeture = 0; // letture ya media

int conteggio = 0; // variabile di conteggio primario

// inizio dichiarazioni variabili kwa kila media media

int i = 0;

int cc = 0;

int togli = 0;

// faini dichiarazioni variabili kwa kila media kuendelea

int val; // variabile registrazione vibrazione

int vibr_pin = 5; // Piedino x Sensore di Vibrazione D1

int vb = 0; // Inizializzo vb a 0

int vbr = 0; // Inizializzo vb a 0

int vbinit = 0; // Inizializzo vbinit 0

prima ndefu isiyosainiwa = 0; // utile kwa kubadilisha min / max

muda mrefu Tempmax = 660000; // utile kwa kubadilisha min / max

kuelea tmax = -100; // impostazione impossibile kwa kila la temperatura massima

kuelea tmin = 100; // impostazione impossibile kwa il temperatura minima

kuelea umax = 0; // impostazione impossibile kwa umidità massima

kuelea umin = 100; // impostazione isiyowezekana kwa umidità minima

Maxtring ya kamba; // stringa visualizzata su Blynk

Mint ya kamba; // stringa visualizzata su Blynk

Kamba maxu; // stringa visualizzata su Blynk

Kamba minu; // stringa visualizzata su Blynk

char auth = "a °athatha >>

char ssid = "T °ilomako </b> </b> // wifi

char pass = "O °ilomako </b> </b> // psw

#fafanua DHTPIN 2 // pini sensore DHT

#fafanua DHTTYPE DHT22

DHT dht (DHTPIN, DHTTYPE);

Kipima muda cha SimpleTimer; // kipima muda

WidgetRTC rtc; // orologio di sistema Blynk

Widget LED iliyoongozwa1 (V15); // Iliyoongozwa na Blynk sul pin V15

BLYNK_CONNECTED () {

rtc kuanza (); // avvio RTC

}

BLYNK_WRITE (V0) // utaratibu wa kila siku kuweka upya da Blynk

{

int attiva = param.asInt ();

ikiwa (attiva == 1) {

tmax = -100;

dakika = 100;

umax = 0;

umin = 100;

maxt = "------------";

mnara = "------------";

maxu = "------------";

minu = "------------";

media_Letture = 0;

Jumla ya Upataji = 0;

nume_Letture = 0;

conteggio = 0;

cc = 0;

Serial.println (conteggio);

Blynk. VirtualWrite (V8, media_Letture);

Blynk. VirtualWrite (V10, maxt);

Blynk. VirtualWrite (V11, mnanaa);

Blynk. VirtualWrite (V12, maxu);

Blynk. VirtualWrite (V13, minu);

Blynk. VirtualWrite (V1, conteggio);

Serial.println ("Weka upya");

kuchelewesha (200);

Blynk. VirtualWrite (V0, CHINI);

}

}

batili sendSensor () // normale procedura di lettura

{

Kamba ya sasaTime = Kamba (saa ()) + ":" + dakika ();

Kamba ya sasaDate = Kamba (siku ()) + "/" + mwezi ();

kuelea h = dht.read Humidity ();

kuelea t = dht. soma Joto ();

ikiwa (isnan (h) || isnan (t)) {

Serial.println ("Imeshindwa kusoma kutoka kwa sensorer ya DHT!");

kuongozwa1 juu ya ();

kurudi;

}

mwingine {

kuongozwa1.off ();

}

ikiwa (t> tmax) {

tmax = t;

maxt = Kamba (t) + "° C (" + sasaTime + "-" + sasa Tarehe + ")";

}

ikiwa (t <tmin) {

tmin = t;

mint = Kamba (t) + "° C (" + sasaTime + "-" + sasa Tarehe + ")";

}

ikiwa (h> umax) {

umax = h;

maxu = Kamba (h) + "% (" + sasaTime + "-" + sasa Tarehe + ")";

}

ikiwa (h <umin) {

umin = h;

minu = Kamba (h) + "% (" + sasaTime + "-" + sasa Tarehe + ")";

}

Blynk. VirtualWrite (V5, h);

Blynk. VirtualWrite (V6, t);

Blynk. VirtualWrite (V7, vb);

Blynk. VirtualWrite (V10, maxt);

Blynk. VirtualWrite (V11, mnanaa);

Blynk. VirtualWrite (V12, maxu);

Blynk. VirtualWrite (V13, minu);

}

batili calcolo_media () // procedura kwa kila vyombo vya habari vya usajili

{

lettura [nume_Letture] = dht.readTemperature ();

ikiwa (isnan (lettura [nume_Letture])) {

kuongozwa1 juu ya ();

kurudi;

}

// circura ya media ya media

ikiwa (nume_Letture> = 48) {

togli = nume_Letture-48;

Jumla ya Upataji - = (lettura [togli]);

jumlaLeture + = (lettura [nume_Letture]);

nume_Letture = 0; // setta a zero e riparte tutto

cc = 1; // kitambulisho primo passaggio dopo 48 letture (24ore)

}

ikiwa (cc == 1) {

conteggio = 48; // DOPO le prime 24ore hugawanya semper kwa 24ore (48mezzore)

}

mwingine {

// vyombo vya habari prima dello scadere delle 24ore

jumlaLeture + = (lettura [nume_Letture]);

conteggio = conteggio + 1;

}

media_Letture = jumla_Letture / conteggio;

nume_Letture = nume_Letture + 1;

Blynk. VirtualWrite (V8, media_Letture);

Blynk. VirtualWrite (V1, conteggio);

}

kuanzisha batili ()

{

Serial. Kuanza (115200);

Blynk kuanza (auth, ssid, pass);

kuanza ();

timer.setInterval (10000, sendSensor); // lettura temperatura umidità ogni 5 min

timer.setInterval (1800000, calcolo_media); // barua kwa vyombo vya habari 30min

}

kitanzi batili ()

{

Kukimbia ();

timer.run ();

adesso ndefu = millis ();

val = digitalRead (vibr_pin);

vb = vb + val;

ikiwa (adesso - prima> = Tempmax)

{

vb = 0;

vbinit = vb;

prima = adesso;

}

Ilipendekeza: