Skocz do zawartości

Przesyłanie danych na strone WWW


Mrpatryk

Pomocna odpowiedź

@hazi18 olej na razie Blynka, spróbuj zrobić tak, by wynik pomiaru wyświetlał ci w monitorze portu szeregowego. Potem pomyślimy nad Blynkiem. 

Bo na razie pod inny pin masz podpięty DHT, z innego odczytujesz i zapisujesz do zmiennej... to nie zadziała. 

Jak chcesz gotowca to napisz w dziale ogłoszenia. 

Kurs Arduino na Forbocie to naprawdę przydatna rzecz w nauce podstaw programowania. 

  • Lubię! 1
Link do komentarza
Share on other sites

Hej,

Czeski błąd przy zmianie nr pinu 🙂

Więc podsumowując co mi radziłeś:

na pinie A0 nie czyta danych a na D1 czyta. Więc muszę ustawić wszystko w programie na D1.

Nie chcę gotowca całego programu bardziej zależy mi tylko na kawałeczku który pozwoli mi na odczyt danych z czujnika i wyświetlenie w Blynku. Jeśli tutaj będę miał to co chcę to sądzę, że każdy następny projekt nie sprawi mi tylu kłopotów 🙂

Link do komentarza
Share on other sites

Hej,

no zmieniałem to dlatego z digital na analog i na A0 a u góry zapomniałem zmienić na A0.

OK ogarnąłem troszkę kod i zmieniłem wyświetlanie danych dla Virtualnych pinów. Przecież ja ściągałem dane z całego czujnika DTH a w pierwotnym kodzie mam podział na temperaturę i wilgotność... pomyślałem chwilę i do wyświetlania danych dałem zmienna którą używałem. oto kod:

#include "DHT.h"
//#include <TM1637Display.h>
#define DHTPIN D1     // what pin we're connected to
#define DHTTYPE DHT22   // DHT 22  (AM2302)
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
// You should get Auth Token in the Blynk App.
char auth[] = "_hyKFQylC32c9eUlduUNgp_oM1c9RydD";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "TP-LINK";
char pass[] = "";

DHT dht(DHTPIN, DHTTYPE);

float sensorData;


void setup(void)
{
  // Debug console
  Serial.begin(9600);
  Blynk.begin(auth, ssid, pass);
  

  dht.begin();
}

void loop(void)

{ 
  Blynk.run();

  float h = dht.readHumidity();
  float t = dht.readTemperature();
  int i=0;
if (dht.readTemperature()>=36.5)  // wywołanie funkcji warunkowej
{
    // digitalWrite(przekaznik,HIGH);  // włączenie przekaźnika   
    Serial.print("Humidity: "); 
    Serial.print(h);
    Serial.print(" %\t");
    Serial.print("Temperature: "); 
    Serial.print(t);
    Serial.println(" *C");

}

  else  // wywołanie funkcji warunkowej
  {
//   digitalWrite(przekaznik,LOW);  // wyłączenie przekaźnika
   Serial.print("Humidity: "); 
    Serial.print(h);
    Serial.print(" %\t");
    Serial.print("Temperature: "); 
    Serial.print(t);
    Serial.println(" *C");  
  }

}
  BLYNK_READ(V1) //Blynk app has something on V1
{
  sensorData = dht.readTemperature(); //reading the sensor on D1
  Blynk.virtualWrite(V1, sensorData); //sending to Blynk
}
  BLYNK_READ(V2) //Blynk app has something on V1
{
  sensorData = dht.readHumidity(); //reading the sensor on D1
  Blynk.virtualWrite(V2, sensorData); //sending to Blynk
}

 

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Pomijając zmienną "i", którą nie wiadomo po co deklarujesz, "if"-a i "else" - a które wyświetlają te same dane, na dodatek nieaktualne, to powiedz mi co jest zapisane w zmiennej której wartość wysyłasz do BLYNKa? 

Kurs Arduino Forbota, to zaledwie kilkanaście godzin pracy, góra kilkadziesiąt, licząc czas jaki upłynął od założenia tego wątku, dawno byś go przerobił i wykonał zadanie z tego tematu z palcem w.... 

Link do komentarza
Share on other sites

zmienna i to pozostałość po starym kodzie, wywalona. If else to chyba widać po kodzie po co są potrzebne, tylko jeszcze odkomentowałem w kodzie linijki z przekaźnikiem aby to działało. W zmiennych jest temperatura i wilgotność, co działa na szeregowym i w Blynku.

Link do komentarza
Share on other sites

3 minuty temu, hazi18 napisał:

If else to chyba widać po kodzie po co są potrzebne

Po to żeby oprócz jednej czynności (włączenie/wyłączenie przekaźnika) w obu gałęziach robić to samo?

Powielanie kodu to straaaasznie fujasta sprawa...

Link do komentarza
Share on other sites

Chcę aby mimo wyłączonego przekaźnika pokazywał mi dane na wyświetlaczu. To jak można inaczej to zrobić?

 

Co może być powodem, że dane w Blynk aktualizują mi się co 12 sek na okres 2-3 sek?

Edytowano przez hazi18
pytanie
Link do komentarza
Share on other sites

Porównaj sobie dwa kody:

if (cośtam) {
  wykonaj_czynność_a();
  wykonaj_czynność_b();
}
else {
  wykonaj_czynność_c();
  wykonaj_czynność_b();
}
  

I taki:

if (cośtam) {
  wykonaj_czynność_a();
}
else {
  wykonaj_czynność_c();
}
wykonaj_czynność_b();

Teraz wyciągnij wnioski i popraw swój kod.

 

Link do komentarza
Share on other sites

a wiesz o tym, że dane w szeregowym i w Blynku to dane z zupełnie różnych odczytów? 

Wracając do if i else, powiedz mi kiedy to co wyświetla się po spełnieniu warunku if, będzie różnić się od tego co wyświetla się po spełnieniu warunku else? 

Link do komentarza
Share on other sites

Różnić się nie będzie niczym tylko nie chciałem aby przy wyłączonym przekaźniku było brak danych. To akurat tyczy się szeregowego więc usunąłem.

Pytanie czemu dane z Blynka aktualizują się co 12 sek na 2-3 sekundy? mam sekundnik w blynku to widzę jaki jest czas

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.