|
Avtomatlashtirilgan piyodalarni o’tishini ogohlantirish va xafsizligini oshirish qurilmasi Kirish I bob. Piyodalarning avtomobil yo’llarini kesib o’tishda xafsizligi
|
bet | 17/18 | Sana | 15.06.2024 | Hajmi | 4,3 Mb. | | #263888 |
Bog'liq Avtomatlashtirilgan piyodalarni o (2)Tizimdan foydalanish qamrovi
Dam olish maskanlari ( istirohat bog‘lari, parklar);
Ta’lim muassalari (MTM, maktab, OTMlar);
Umumjamoat joylar (bozorlar, shifoxonalar);
Savdo markazlari;
Svetoforsiz piyodalar o’tish joylari;
3.2. Qurulmani tashkil etuvchi elektron qurulmalar va sxemalarini ishlab chiqish.
Transport vositalari xaydovchilariga piyoda haqida ogohlantirish belgili indikatori
Piyodalar o'tish joyiga haydovchilar e'tiborini jalb qilish uchun sariq yonuvchi indikator.
LED yoritgichlar piyodalar o'tish maydonida yorug'likning yorqinligini oshirish uchun ishlatiladi
WI-FI li boshqarish bloki
“Kuting!” belgisi piyodani o’tish ketma ketligini rejalashtiradi
50 Wt li quyosh paneli
Piyoda uchun o’tishini ogohlantiruvchi tugmasi
3.3. Qurulmani dasturiy taminoti, algaritimi.
//BLYNK API
#define BLYNK_TEMPLATE_ID "TMPL6kcEP8kT5"
#define BLYNK_TEMPLATE_NAME "IoT Greenhouse"
#define BLYNK_AUTH_TOKEN "QQJ8ZW_o9cw2p6uiN25wVoXVo4dVARIj"
#define BLYNK_PRINT Serial
//Kutubxonalarni qo'shish
#include
#include
#include
#include
LiquidCrystal_I2C lcd(0x27, 20, 4);
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Roziboev"; // WIFI manzili
char pass[] = "Navruz919042302"; // WIFI kodi
BlynkTimer timer;
bool relayState = 0;
#define soilSensor 34 //tuproq namligi
#define ldrSensor 35 //fotorezistor
#define relay 32 //rele chiqishi
#define DHTPIN 33 //DHT sensori pini
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
void sendSensor()
{
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t)) {
Serial.println("Sensorga ulanib bo'lmadi(((");
return;
}
//Serverga ma'lumotlarni yuklash
Blynk.virtualWrite(V32, t);//Temperatura
Blynk.virtualWrite(V4, h);
Serial.print("Temperatura : ");
Serial.print(t);
lcd.setCursor(0, 0);
lcd.print("Temperatura:");
lcd.print(t);
lcd.print(" C");
Serial.print("Havodagi namlik : "); //Havodagi namlik
Serial.println(h);
lcd.setCursor(0, 1);
lcd.print("H. namlik:");
lcd.print(h);
lcd.print("%");
int namlik = analogRead(soilSensor); //Tuproqdagi namlik darajasi
namlik = map(namlik, 0, 1024, 0, 100);
namlik = (namlik - 100) * -1;
Serial.print("T. namlik : ");
Serial.println(namlik);
Blynk.virtualWrite(V5, namlik);
lcd.setCursor(0, 2);
lcd.print("T. namlik:");
lcd.print(namlik);
lcd.print(" ");
int yoruglik = analogRead(ldrSensor); //Yoritilganlik darajasi
yoruglik = map(yoruglik, 0, 1024, 0, 100);
yoruglik = (yoruglik - 100) * -1;
Blynk.virtualWrite(V6, yoruglik);
Serial.print("Yorug'lik: ");
Serial.println(yoruglik);
lcd.setCursor(0, 3);
lcd.print("Yorug'lik: ");
lcd.print(yoruglik);
lcd.print("%");
}
void setup()
{
pinMode(relay, OUTPUT);
Serial.begin(115200);
lcd.init();
lcd.backlight();
Blynk.begin(auth, ssid, pass);
dht.begin();
lcd.setCursor(3, 0);
lcd.print("Yuklanmoqda.");
for (int a = 0; a <= 15; a++) {
lcd.setCursor(a, 1);
lcd.print(".");
delay(500);}
lcd.clear();
timer.setInterval(100L, sendSensor);
}
BLYNK_WRITE(V7) {
relayState = param.asInt();
if (relayState == 1) {
digitalWrite(relay, HIGH);
} else {
digitalWrite(relay, LOW);
}
}
void loop()
{
Blynk.run();
timer.run();
}
|
|
Bosh sahifa
Aloqalar
Bosh sahifa
Avtomatlashtirilgan piyodalarni o’tishini ogohlantirish va xafsizligini oshirish qurilmasi Kirish I bob. Piyodalarning avtomobil yo’llarini kesib o’tishda xafsizligi
|