Blynk- Dht11- 5V 2Kanal Röle- Program Tepki Hızı Neden Yavaş

erdinccatal

Yeni Üye
Katılım
12 Ekim 2021
Mesajlar
7
merhaba, arkadaşlar aşağıdaki program ve blynk arayüzünü sizler ile paylaşıyorum... benim sorunum blynk arayüzünde D0 ve D1 röle butonlarına tıkladığımda röleler gecikmeli cevap vermektedir. ancak programda HCSR04 ultrasonik sensör ile ilgili olan kısımları çıkardığımda (satır numarası 11,12,13,14,17,18,21,22,23,24,25,26,27,28,30) sadece DHT11 ve 2 adet röle için çalıştırdığımda aynı anda tepki almaktayım. herhangi bir gecikme olmamaktadır. konu hakkında bilgi paylaşımı ve yardımlarınız için şimdiden teşekkür ederim.

nodemcu:
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <dht11.h> // dht11 kütüphanesini ekliyoruz.
#define DHT11PIN 4 // DHT11PIN olarak Dijital 2"yi belirliyoruz.
dht11 DHT11;
int sicaklik, nem;
char auth[33] = "W-Btn3XnaSu4qi9v3bj3rUTNFComubFc";
char ssid[33] = "E";
char pass[33] = "erdinccatal";
const int echoPin = D8;
const int trigPin = D6;
long duration;
int distance;
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT); 
Blynk.begin(auth, ssid, pass);}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(20); 
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.017;                   
Blynk.virtualWrite(V3, distance);   
Blynk.run();
delay(500);} 
BLYNK_READ(V0) {
DHT11.read(DHT11PIN);
sicaklik = DHT11.temperature;
Serial.println("Sıcaklık: " + String(sicaklik));
Blynk.virtualWrite(V0, sicaklik);}
BLYNK_READ(V1) {
DHT11.read(DHT11PIN);
nem = DHT11.humidity;
Serial.println("Nem: " + String(nem)); 
Blynk.virtualWrite(V1, nem);}
 
blynk arayüzünü eklemeyi unutmuşum. aşağıda bulabilmeniz mümkündür...
 

Ekler

  • WhatsApp Image 2021-10-13 at 14.11.23.jpeg
    WhatsApp Image 2021-10-13 at 14.11.23.jpeg
    49.8 KB · Görüntüleme: 104
Ana döngüde 500 ms delay var zaten. Bundan dolayı en az 500 ms lik bir gecikme mutlaka olur.
 
Hangi fonksiyonların gecikme yarattığını tespit etmek için millis() fonksiyonunu kullanabilirsin. Şüpheli fonksiyonu çağırmadan önce ve sonraki milisaniye zamanı kaydedersin, sonra da farka bakarsın.
 
biraz önce bir deneme yaptım. şöyle ki; blynk daki dht11 in gauge lerine yani hem nem hemde sıcaklık verilerinin komut kısmını açtığımda orada verileri yenileme hızı vardı ve bende 1saniyede bir verileri yenile yazıyordu. ben bu değeri 5 saniyeye düşürdüm. yani 5 saniyede bir nem ve sıcaklık verisi yenileyecek şekilde düzenledim ve sonuç farkedilir derece değişti. yani epey hızlandı.

ilave olarak sizin belirttiğiniz şekilde; ana döngüdeki delayları 500 değilde örneğin 50 yapsam programda herhangi hata vermez sanırım. bu şekilde de epey zaman kazanırım diye düşünüyorum.

diğer bir olasılıkta bütün delayları kaldırsam program hata verir mi acaba? bir deneyip cevabını yazacağım
 

Çevrimiçi personel

Forum istatistikleri

Konular
5,985
Mesajlar
102,089
Üyeler
2,517
Son üye
Dzenit

Son kaynaklar

Son profil mesajları

deneyci wrote on hakan8470's profile.
Sibonge uNkulunkulu ngokuhlukahluka asinike kona.

Bu hangi dil? :)
Lyewor_ wrote on taydin's profile.
Merhabalar. Elektrik laboratuvarınız varsa bunun hakkında bir konunuz var mı acaba? Sizin laboratuvarınızı merak ettim de :)
Lyewor_ wrote on taydin's profile.
Merhabalar forumda yeniyim! Bir sorum olacaktı lcr meterler hakkında. Hem bobini ölçen hemde bobin direnci ölçen bir lcr meter var mı acaba?
gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
Back
Top