Mündəricat:
Video: Birra_Monitor: 3 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
İlkin olaraq, vibrasyona (SW-420 NC) görə tramit və ya mayelərdə bir fermentasiya xidməti göstərilir. Temperaturun (DHT22) monitorinqi temperaturun və temperaturun monitorinqini həyata keçirir. Blynk proqramının IoT ilə əlaqəli bütün proqramları Blynk tətbiqetməsində tapa bilərsiniz.
Layihə sadə bir vibrasiya sensoru (SW-420 NC) istifadə edərək evdə hazırlanan pivənin mayalanmasını izləmək üçün istifadə olunur. temperatur sensoru (DHT22) əlavə edilməsi, fermentasiya üçün uyğun olan otağın temperaturunu və rütubətini izləməyə xidmət edir. Bu məlumatlar bir nodemcu kartı ilə idarə olunur və IoT həlləri hazırlamaq üçün təyin edilmiş Blynk tətbiqi ilə görüntülənir.
Addım 1: Qablaşdırma
Şəxsi sensorlar son nəticədə heç bir problem yaratmır.
Lövhə və sensorlar sadə qovşaq qutusuna yerləşdirilib.
Addım 2: Sensor İşdə
quello che succede quando il sensore è "montato" sul gorgogliatore və CO2 il sensore registrerà delle vibrazioni che verranno visualizzate sull'app Blynk
Sensor köpükləyiciyə "quraşdırıldıqda" nə olur ki, hər dəfə CO2 atıldıqda sensor Blynk tətbiqində nümayiş olunacaq titrəmələri qeyd edəcək
Addım 3: Kod
proqram təminatı Arduino IDE proqram təminatı ilə təmin edilir.
Arduino IDE proqramını karta yükləmək üçün kifayət edəcək kodun hamısının işləməsinə icazə verilir.
#Adafruit_Sensor.h daxil edin
#DHT.h daxil edin
#blynk_print seriyasını təyin edin
#ESP8266WiFi.h daxil edin;
#daxil BlynkSimpleEsp8266.h;
#SimpleTimer.h daxil edin;
#WidgetRTC.h daxil edin;
float lettura [50]; // ölçü Arrayper mediası
int nume_Letture = 0; // progressivo letture
float tot_Letture = 0; // somma letture
float media_Letture = 0; // media Letturası
int conteggio = 0; // dəyişkən di conteggio primario
// hər bir media üçün dəyişə bilərsiniz
int i = 0;
int cc = 0;
int togli = 0;
// hər bir medya üçün çox yaxşı dəyişikliklər
int val; // dəyişkən registrazione vibrazione
int vibr_pin = 5; // Piedino x Sensore di Vibrazione D1
int vb = 0; // Başlanğıc və s
int vbr = 0; // Başlanğıc və s
int vbinit = 0; // Başlanğıcda 0
işarəsiz uzun prima = 0; // svop başına minil/maksimum
uzun Tempmax = 660000; // svop başına minil/maksimum
float tmax = -100; // impostazione impossibile per la temperatura massima
float tmin = 100; // impostazione impossibile per il temperatura minima
float umax = 0; // impostazione impossibile per umidità massima
float umin = 100; // impostazione impossibile per umidità minima
String maxt; // Blynk üçün vizual görüntülər
String nanə; // Blynk üçün vizual görüntülər
String maxu; // Blynk üçün vizual görüntülər
Simli dəqiqə; // Blynk üçün vizual görüntülər
char auth = "a °°°°°°°°°°°°°° d"; // token Blynk
char ssid = "T °°°°°°°°°°°°°°°° 9"; // wifi
char pass = "O °°°°°°°°°°°°°° R"; // psw
#deftine DHTPIN 2 // pin sensore DHT
#DHTTYPE DHT22 təyin edin
DHT dht (DHTPIN, DHTTYPE);
SimpleTimer timer; // taymer
WidgetRTC rtc; // Blynk sisteminə görə
WidgetLED led1 (V15); // Led Blynk sul pin V15
BLYNK_CONNECTED () {
rtc.begin (); // avvio RTC
}
BLYNK_WRITE (V0) // Blynk -də hər dəfə sıfırlama qaydası
{
int attiva = param.asInt ();
əgər (attiva == 1) {
tmax = -100;
tmin = 100;
umax = 0;
umin = 100;
maxt = "------------";
nanə = "------------";
maxu = "------------";
minu = "------------";
media_Letture = 0;
tot_Letture = 0;
nume_Letture = 0;
conteggio = 0;
cc = 0;
Serial.println (conteggio);
Blynk.virtualWrite (V8, media_Letture);
Blynk.virtualWrite (V10, maxt);
Blynk.virtualWrite (V11, nanə);
Blynk.virtualWrite (V12, maxu);
Blynk.virtualWrite (V13, dəqiqə);
Blynk.virtualWrite (V1, conteggio);
Serial.println ("Sıfırlama");
gecikmə (200);
Blynk.virtualWrite (V0, LOW);
}
}
void sendSensor () // prosedur qaydaları
{
String currentTime = String (saat ()) + ":" + dəqiqə ();
String currentDate = String (gün ()) + "/" + ay ();
float h = dht.readHumidity ();
float t = dht.readTemperature ();
əgər (isnan (h) || isnan (t)) {
Serial.println ("DHT sensorundan oxunmadı!");
led1.on ();
qayıtmaq;
}
başqa {
led1.off ();
}
əgər (t> tmax) {
tmax = t;
maxt = String (t) + "° C (" + currentTime + "-" + currentDate + ")";
}
əgər (t <tmin) {
tmin = t;
nanə = String (t) + "° C (" + currentTime + "-" + currentDate + ")";
}
əgər (h> umax) {
umax = h;
maxu = String (h) + "% (" + currentTime + "-" + currentDate + ")";
}
əgər (h <umin) {
umin = h;
minu = String (h) + "% (" + currentTime + "-" + currentDate + ")";
}
Blynk.virtualWrite (V5, h);
Blynk.virtualWrite (V6, t);
Blynk.virtualWrite (V7, vb);
Blynk.virtualWrite (V10, maxt);
Blynk.virtualWrite (V11, nanə);
Blynk.virtualWrite (V12, maxu);
Blynk.virtualWrite (V13, dəqiqə);
}
etibarsız calcolo_media () // hər bir media qeydiyyatı proseduru
{
lettura [nume_Letture] = dht.readTemperature ();
əgər (isnan (lettura [nume_Letture])) {
led1.on ();
qayıtmaq;
}
// prosedur media dairəsi
əgər (nume_Letture> = 48) {
togli = nume_Letture-48;
tot_Letture -= (lettura [togli]);
tot_Letture += (lettura [nume_Letture]);
nume_Letture = 0; // bir sıfır və ya bir neçə dəfə
cc = 1; // identifica primo passaggio dopo 48 letture (24ore)
}
əgər (cc == 1) {
conteggio = 48; // DOPO le prime 24ore 24 yarıya bölmək üçün semper (48mezzore)
}
başqa {
// media prima dello scadere delle 24ore
tot_Letture += (lettura [nume_Letture]);
conteggio = conteggio+1;
}
media_Letture = tot_Letture/conteggio;
nume_Letture = nume_Letture+1;
Blynk.virtualWrite (V8, media_Letture);
Blynk.virtualWrite (V1, conteggio);
}
boş quraşdırma ()
{
Serial.begin (115200);
Blynk.begin (auth, ssid, pass);
dht.begin ();
timer.setInterval (10000, sendSensor); // yuxu temperaturu 5 dəqiqə
timer.setInterval (1800000, calcolo_media); // 30 dəqiqə ərzində media paylaşın
}
boşluq döngəsi ()
{
Blynk.run ();
timer.run ();
uzun adesso = millis ();
val = digitalRead (vibr_pin);
vb = vb+val;
əgər (adesso - prima> = Tempmax)
{
vb = 0;
vbinit = vb;
prima = əlavə;
}
Tövsiyə:
Arduino Avtomobil Ters Park Diqqət Sistemi - Addım -addım: 4 addım
Arduino Avtomobil Ters Park Diqqət Sistemi | Addım-addım: Bu layihədə, Arduino UNO və HC-SR04 Ultrasonik Sensoru istifadə edərək sadə bir Arduino Car Reverse Park Sensor Dövrü dizayn edəcəyəm. Bu Arduino əsaslı Avtomobil Ters siqnal sistemi Avtonom Naviqasiya, Robot Aralığı və digər diapazonlarda istifadə edilə bilər
Addım -addım PC qurulması: 9 addım
Addım -addım PC Bina: Təchizat: Təchizat: MotherboardCPU & CPU soyuducu PSU (Enerji təchizatı vahidi) Yaddaş (HDD/SSD) RAMGPU (tələb olunmur) Kassa Alətləri: Tornavida ESD bilərzik/mattermal pasta/aplikator
Üç Hoparlör Devresi -- Addım-addım təlimat: 3 addım
Üç Hoparlör Devresi || Addım-addım Təlimat: Dinamik Dövrə, ətraf mühitdən alınan səs siqnallarını MIC-ə gücləndirir və gücləndirilmiş səsin çıxarıldığı yerdən Dinamikə göndərir.Burada bu Hoparlör Devrini düzəltməyin üç fərqli yolunu göstərəcəyəm:
Robot texnikasında bir dəst ilə addım-addım təhsil: 6 addım
Bir dəst ilə Robototexnikada Addım-addım Təhsil: Öz robotumu düzəltdikdən bir neçə ay sonra (zəhmət olmasa bunların hamısına baxın) və iki dəfə hissələri arızalandıqdan sonra bir addım geri çəkilmək və öz fikrimi yenidən düşünmək qərarına gəldim. strategiya və istiqamət. Bir neçə aylıq təcrübə bəzən çox mükafatlandırıcı idi və
Arduino Uno ilə Akustik Levitasiya Addım-addım (8 addım): 8 addım
Arduino Uno ilə Akustik Levitasiya Adım Adım (8 addım): ultrasəs səs ötürücüləri L298N Dc dişi qadın adapteri kişi dc pinli Arduino UNOBreadboard Bu necə işləyir: Əvvəlcə Arduino Uno-ya kod yükləyirsiniz (rəqəmsal ilə təchiz edilmiş bir mikro nəzarətçidir) və kodu çevirmək üçün analog portlar (C ++)