• 11-05-2024, 18:17:35
    #1
    Merhaba herkese, arduino ide de esp32 kullanarak blynk ıot üzerinden uzaktan kontrollü ve sensör verilerini blynk üzerinde görüntüleyebileceğimiz bir proje yapmaya çalışıyoruz fakat kod düzgün şekilde derlenmesine ve esp32 ye yüklenmesine rağmen düzgün çalışmıyor. karşılaştığımız sorunlar: lcd ekranda sensör verileri yazması gerekirken yazmıyor, blynk üzerinde device online gözüküyor ve kısa bir süre sonra offline oluyor. Kısaca kod yüklenmesine ve devre doğru olmasına rağmen çalıştıramıyoruz, konu hakkında bilgisi olup yardımcı olabilecek varsa şimdiden teşekkür ederim.

    Kullandığımız kod:
    #include <WiFi.h>
    #include <WiFiClient.h>
    #include <BlynkSimpleEsp32.h>
    #include <DHT.h>
    #include <ESP32Servo.h>
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>

    // WiFi ve Blynk ayarları
    char auth[] = "BURAYA_BLYNK_AUTH_TOKEN_GIRIN";
    char ssid[] = "WIFI_AG_ISMI";
    char pass[] = "WIFI_SIFRE";

    // Pin atamaları
    #define DHTPIN 33 // DHT11 sensörü pin
    #define SERVOPIN 27 // Servo motor pin
    #define LDRPIN 36 // LDR pin
    #define GAZPIN 34 // Gaz sensörü pin
    #define BUZZERPIN 32 // Buzzer pin
    #define LEDPIN 14 // LED pin

    // Sensör ve modül nesneleri
    DHT dht(DHTPIN, DHT11);
    Servo servo;
    LiquidCrystal_I2C lcd(0x27, 16, 2); // LCD I2C adresi ve boyutu

    // Blynk bağlantı fonksiyonu
    void connectBlynk() {
    Blynk.begin(auth, ssid, pass);
    }

    void setup() {
    Serial.begin(9600);
    // WiFi bağlantısı
    WiFi.begin(ssid, pass);
    while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
    }

    Serial.println("WiFi baglandi!");
    connectBlynk();
    // Sensör ve aktüatör pinleri
    pinMode(BUZZERPIN, OUTPUT);
    pinMode(LEDPIN, OUTPUT);
    // LCD başlatma
    lcd.init();
    lcd.backlight();
    lcd.setCursor(0, 0);
    lcd.print("Akilli Ev"); // Başlangıçta LCD'ye yazı yazdırma
    // Servo motor başlatma
    servo.attach(SERVOPIN);
    delay(2000);
    }
    void loop() {
    Blynk.run();
    // Sıcaklık ve nem okuma
    float humidity = dht.readHumidity();
    float temperature = dht.readTemperature();
    // Işık seviyesi okuma
    int lightLevel = analogRead(LDRPIN);
    // Gaz sensöründen değer okuma
    int gasValue = analogRead(GAZPIN);
    // Blynk üzerinden kontrol
    if (Blynk.connected()) {
    Blynk.virtualWrite(V5, humidity); // Blynk Grafik tablosu için nem verisi
    Blynk.virtualWrite(V6, temperature); // Blynk Grafik tablosu için sıcaklık verisi
    Blynk.virtualWrite(V7, lightLevel); // Blynk Grafik tablosu için ışık seviyesi verisi
    Blynk.virtualWrite(V8, gasValue); // Blynk Grafik tablosu için gaz sensörü verisi
    }

    // LCD'ye sensör verilerini yazdırma
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("Nem: ");
    lcd.print(humidity);
    lcd.print("%");
    lcd.setCursor(0, 1);
    lcd.print("Sicaklik: ");
    lcd.print(temperature);
    lcd.print("C");
    // Seri monitöre sensör verilerini yazdırma
    Serial.print("Nem: ");
    Serial.print(humidity);
    Serial.print("% - ");
    Serial.print("Sıcaklık: ");
    Serial.print(temperature);
    Serial.println("C");
    delay(1000); // 1 saniyede bir okuma yap
    }

    // Blynk butonları için callback fonksiyonları
    BLYNK_WRITE(V1) {
    int servoValue = param.asInt(); // Blynk'teki düğme değeri
    if (servoValue == 1) {
    servo.write(90); // Servo motoru 90 derece konumlandır (kapıyı aç)
    } else {
    servo.write(0); // Servo motoru 0 derece konumlandır (kapıyı kapat)
    }
    }

    BLYNK_WRITE(V2) {
    int buzzerValue = param.asInt(); // Blynk'teki düğme değeri
    digitalWrite(BUZZERPIN, buzzerValue); // Buzzer'ı aç/kapat
    }
    BLYNK_WRITE(V3) {
    int ledValue = param.asInt(); // Blynk'teki düğme değeri
    digitalWrite(LEDPIN, ledValue); // LED'i aç/kapat
    }
  • 11-05-2024, 19:53:05
    #2
    Ekranda hiç mi yazı yok yoksa kareler mi var?
  • 11-05-2024, 20:22:44
    #3
    BABER adlı üyeden alıntı: mesajı görüntüle
    Ekranda hiç mi yazı yok yoksa kareler mi var?
    kareler biraz gözüküyor ama yazı yok. LCD kısmını bir şekilde hallederizde bizim için önemli olan kısmı Blynk IoT uygulamasına bağlanması ve sensör verilerini oraya göndermesi ayrıca servo motor ve ledi de Blynk üzerinden kontrol etmemiz gerekiyor.
  • 11-05-2024, 20:44:46
    #4
    SmokyWriter adlı üyeden alıntı: mesajı görüntüle
    kareler biraz gözüküyor ama yazı yok. LCD kısmını bir şekilde hallederizde bizim için önemli olan kısmı Blynk IoT uygulamasına bağlanması ve sensör verilerini oraya göndermesi ayrıca servo motor ve ledi de Blynk üzerinden kontrol etmemiz gerekiyor.
    Kareler biraz gözüküyorsa pot ayarını kontrol eder misiniz? Bir de dht servo ve lcd max çıkış akımını geçiyor olabilir. Sadece dht takılı iken dener misiniz, offline oluyor mu bu şekilde?
  • 11-05-2024, 20:48:49
    #5
    BABER adlı üyeden alıntı: mesajı görüntüle
    Kareler biraz gözüküyorsa pot ayarını kontrol eder misiniz? Bir de dht servo ve lcd max çıkış akımını geçiyor olabilir. Sadece dht takılı iken dener misiniz, offline oluyor mu bu şekilde?
    lcd pot ayarı normal çalışması gereken değerde yani boş sketch açıp yazdırdığımızda çalışıyor. dh, servo ve lcd ye 3.3v veriliyor. Blynk uygulamasına bağlamadan kendi kendine çalışmasını sağladığımızda hepsi düzgün şekilde çalışıp serial monitöre ve lcd ye değerleri gönderiyolar fakat blynk işin içine girdiğinde her şey bozuluyor maalesef. Ayrıca konudan bağımsız FRC geçmişiniz var sanırım başarılarınızın devamını dilerim bende lisede FRC yarışmalarına katılıyordum.
  • 11-05-2024, 20:54:39
    #6
    SmokyWriter adlı üyeden alıntı: mesajı görüntüle
    lcd pot ayarı normal çalışması gereken değerde yani boş sketch açıp yazdırdığımızda çalışıyor. dh, servo ve lcd ye 3.3v veriliyor. Blynk uygulamasına bağlamadan kendi kendine çalışmasını sağladığımızda hepsi düzgün şekilde çalışıp serial monitöre ve lcd ye değerleri gönderiyolar fakat blynk işin içine girdiğinde her şey bozuluyor maalesef. Ayrıca konudan bağımsız FRC geçmişiniz var sanırım başarılarınızın devamını dilerim bende lisede FRC yarışmalarına katılıyordum.
    Teşekkürler, profil açıklaması eski kalmış biraz. Artık FRC, FTC, FLL hepsine eğitmenlik yapıyorum. Sketch ile şimdi kendim bi esp bağlayıp deneyeceğim. Ayrıca wp varsa pm'den iletin daha hızlı yanıtlaşırız.
  • 11-05-2024, 21:01:21
    #7
    BABER adlı üyeden alıntı: mesajı görüntüle
    Teşekkürler, profil açıklaması eski kalmış biraz. Artık FRC, FTC, FLL hepsine eğitmenlik yapıyorum. Sketch ile şimdi kendim bi esp bağlayıp deneyeceğim. Ayrıca wp varsa pm'den iletin daha hızlı yanıtlaşırız.
    teşekkürler iletiyorum wp