Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

termometry+nodemcuV3+ThingSpeak

mateq96 08 Paź 2017 15:09 2142 3
  • Witam , zaprezentuję urządzenie - termo-kontroler ,przydatne w domach z piecami węglowymi służącymi do ogrzewania kaloryferów jak i wody w bojlerze .
    termometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeak

    Kontroler musi mieć podane adresy oraz ilość podłączonych termometrów. Dodatkowo do wysyłania danych do chmury potrzebne jest konto na serwisie takim jak ThingSpeak oraz dostęp do routerów z internetem.

    działanie:
    1. urządzenie próbuje łączyć się z podanymi punktami dostępu do internetu
    termometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeak

    2. sprawdza połączone termometry i sczytuje z nich dane
    termometry+nodemcuV3+ThingSpeak termometry+nodemcuV3+ThingSpeak

    3. tworzy punkt dostępu
    termometry+nodemcuV3+ThingSpeak

    4. kontroler porównuje pobraną temperaturę z poprzednią i prezentuje ją z odpowiednią ikonką




    termometry+nodemcuV3+ThingSpeak

    5. gdy jest połączony z internetem wysyła dane do serwisu ThingSpeak
    termometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeak

    Dodatkowo jest możliwość obsługi po kablu przez UART i konsole w komputerze lub lepsza opcja obsługa przez w w w .
    Pierwsza opcja to podłączenie kabla usb lub przejściówki UART do komputera ,instalacja sterowników i uruchomienie konsoli np. "Monitor portu szeregowego" lub "putty" i wpisywanie poleceń w konsoli.
    termometry+nodemcuV3+ThingSpeak

    Dostępne polecenia:
    log - wyświetla wartości zmiennych ( bez nazw )
    wifi - resetuje połączenie z internetem
    status - wyświetla informację z jaką siecią połączył się moduł
    stan - podaje aktualną temperaturę
    lcd.wl - włącza wyświetlanie na ekranie LCD
    lcd.wyl - wyłącza wyświetlanie na ekranie LCD
    czas -wyświetla czas pracy urządzenia


    Drugą opcją jest połączenie wifi:
    Łączymy się z punktem dostępowym ESPap
    uruchamiamy w przeglądarce adres 192.168.4.1
    i obsługujemy urządzenie online!
    termometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeak

    Zastosowałem też małą obsługę błędów:
    Użytkownik jest informowany jeśli któryś termometr nie został zainicjowany a temperatura z niego nie będzie pobierana.
    W trakcie pracy urządzenia sprawdzane jest czy temperatura jest pobierana prawidłowo ( temperatura -127 oznacza niepodłączone urządzenie, 85 oznacza błąd konfiguracji czyli zły dobór rezystancji lub zbyt krótki czas między wysłaniem zapytania o temperaturę a żądaniem odpowiedzi)
    jeśli termometr wyśle błędną temperaturę (-127 lub 85) to dane te nie będą wyświetlane ani wysyłane do serwisu w w w .
    termometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeaktermometry+nodemcuV3+ThingSpeak

    wykorzystane elementy:
    LoRin V3 - 10zł
    LCD20x4 - 12zł
    3x DS1820 - 3x 2,24zł
    kable - 0,90zł/mb
    2x potencjometry - grosze
    opcjonalnie:
    moduł I2C do LCD - 1,72zł
    fotorezystory - grosze

    Dodatkowo zastosowałem przyciemnianie ekranu przez fotorezystory bo się spać nie da przy jasnym ekranie. Jeden fotorezystor ustawiłem na diodę ESP więc co jakiś czas np. gdy dane są wysyłane wyświetlacz się rozjaśnia. Fotorezystory są połączone równolegle w dużej ilości by łączna rezystancja była niska.
    termometry+nodemcuV3+ThingSpeak
    Na stronie ThingSpeak można za darmo i prosto założyć konto i stworzyć kanał do publikacji wyników. Dane mogą być przechowywane publicznie(klucz publiczny) lub prywatnie (do pobrania danych trzeba uzyskać klucz od właściciela kanału)
    termometry+nodemcuV3+ThingSpeak

    kod programu w C++ w środowisku Arduino:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    PS. Jest to mój pierwszy wpis na Elektrodzie więc proszę o porady, bez agresji i wulgaryzmów!


    Fajne!
  • #2 08 Paź 2017 16:50
    zster

    Poziom 17  

    Dwie uwagi :
    -estetyka wyświetlanych informacji - brak odstępów i niezbyt przemyślany/czytelny układ.
    - przypisanie na stałe adresów czujników DS18B20 jest proste ale mści się, gdy trzeba wymienić czujnik. Wtedy bez zmiany programu ani rusz. Lepszym rozwiązaniem jest podłączenie poszczególnych czujników do osobnych pinów albo możliwość wykrywania i przypisywania adresów nowych urządzeń 1Wire.
    Przydało by się też wrzucenie podzespołów choćby na płytkę uniwersalną ;)
    Poza tym - dobre ćwiczenie :)

  • #3 08 Paź 2017 19:38
    actron
    Poziom 12  

    Standardowy zestaw z internetu, dobry początek do nauki i dalszego rozwoju.
    polecam:
    - popracować nad wyświetlanymi informacjami, na razie bardzo słabo. 4x20 to dużo możliwości
    - pobierz wykresy z thingspeak, można dostosować okresy i fajne dane widać
    termometry+nodemcuV3+ThingSpeak

  • #4 09 Paź 2017 17:23
    R-MIK
    Poziom 37  

    O adresach już była. Czujniki jak się domyślam, nie będą łączone kabelkiem 20cm tylko raczej kilkumetrowym. W tej sytuacji pytanie: "Dlaczego nie ma zabezpieczenia ESD"? Dlatego, ze ESP jest tani?

 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME