Elektroda.pl
Elektroda.pl
X
PLC Fatek
Proszę, dodaj wyjątek www.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 3837 15
  • 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!
  • Semicon
  • #2 08 Paź 2017 16:50
    zster

    Poziom 28  

    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 :)

  • Semicon
  • #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
    22053
    Użytkownik usunął konto  
  • #5 21 Paź 2017 13:58
    Jacek Rutkowski
    Poziom 23  

    R-MIK napisał:
    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?

    Jakie zabezpieczenia masz na myśli?
    Czujników czy ESP?

  • #6 21 Paź 2017 15:28
    Mikroprocesorowiec
    Poziom 11  

    Jacek Rutkowski napisał:
    R-MIK napisał:
    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?

    Jakie zabezpieczenia masz na myśli?
    Czujników czy ESP?

    ESP. Ja bym dał zabezpieczenie ESD.

  • #7 21 Paź 2017 19:07
    Jacek Rutkowski
    Poziom 23  

    W postaci...?
    Diody do zasilania czy transile?
    Sam chcę zbudować podobny układ.
    Ale gdy 15 lat temu budowałem termometr na 8952 z trzema czujnikami DS18B20 nie dałem żadnych zabezpieczeń i pomimo że najdalszy czujnik umieszczony na zewnątrz jest podłączony na 40m kablu 8x0.5 alarmowym nic jeszcze się nie stało.
    Burzy było kilka i to konkretnych, nigdy nic się nie stało poza resetowaniem LCD podczas wyładowań.

  • #8 22 Paź 2017 09:39
    Mikroprocesorowiec
    Poziom 11  

    Jacek Rutkowski napisał:
    W postaci...?
    Diody do zasilania czy transile?
    Sam chcę zbudować podobny układ.
    Ale gdy 15 lat temu budowałem termometr na 8952 z trzema czujnikami DS18B20 nie dałem żadnych zabezpieczeń i pomimo że najdalszy czujnik umieszczony na zewnątrz jest podłączony na 40m kablu 8x0.5 alarmowym nic jeszcze się nie stało.
    Burzy było kilka i to konkretnych, nigdy nic się nie stało poza resetowaniem LCD podczas wyładowań.

    Ja przechodze zawsze na czerwonym swietle i nic mi sie nie stało.
    Domek mam bez piorunochronu i nic się nie stało
    \ccziekawe po do Dallas (teraz Maxim) zrobił układ DS9503?

  • #9 22 Paź 2017 16:41
    Jacek Rutkowski
    Poziom 23  

    Nie neguję zabezpieczeń tylko chciałem się dowiedzieć o jakich zabezpieczeniach R-MIK myślał.
    DS9503 jest ciekawą propozycją jednak zastanawiam się czy dioda Zenera 7V5 - 9V1 w SOT23 oraz rezystory 5R1 0805 mogły by być tańszą alternatywą?
    4zł/szt dosyć drogo wydaje mi się za 4 rezystory i Diodę...

  • #10 22 Paź 2017 18:06
    22053
    Użytkownik usunął konto  
  • #11 22 Paź 2017 18:59
    zster

    Poziom 28  

    R-MIK napisał:
    Ile miejsca na PCB zajmnie?


    To chyba kluczowa kwestia - "miejsce" na PCB bywa bardzo cenne. Trzeba też wziąć pod uwagę pojemności wprowadzane przez dodatkowe elementy i ścieżki pomiędzy nimi - przy długich magistralach 1Wire może mieć to znaczenie.

  • #12 22 Paź 2017 22:38
    Jacek Rutkowski
    Poziom 23  

    Zgodzę się z tym ze ma znaczenie w niektórych przypadkach ale przy własnej 1 warstwowej płytce cena pcb nie gra żadnej roli a zakup specjalnie układu zamiast diody i oporników z szuflady nie koniecznie jest opłacalny.
    Ten DS ma diodę na max 2A i ok 30pF pojemności więc transile 600W odpadają ponieważ dla 10V mają ponad 100pF i 1W może mieć już problemy.
    Gdy będę zamawiał coś innego zamówię przy okazji i DS9503...

  • #13 26 Paź 2017 10:53
    22053
    Użytkownik usunął konto  
  • #14 26 Paź 2017 14:00
    Jacek Rutkowski
    Poziom 23  

    SRV05-4 rzeczywiście wygląda bardzo ciekawie ze względu na znikoma pojemność dodawaną do układu.
    Właśnie zamówiłem sobie u chińczyka paczuszkę 50szt za $1.00 z dostawą :)
    Jak przyjdą przetestuję zapalarką do gazu:)

  • #15 26 Paź 2017 14:53
    22053
    Użytkownik usunął konto  
  • #16 26 Paź 2017 20:36
    Jacek Rutkowski
    Poziom 23  

    Prawdę mówiąc kupiłem już ok 50 różnych rzeczy z Aliexess i jeszcze nie spotkałem się z czymś co by nie działało lub działało nieprawidłowo.
    Ponadto w tme są po 1zł/szt więc nie zapłacę 6$ za 5szt :)
    Gdyby nie cena przesyłki kupiłbym 5szt w tme do próby ale nic więcej nie potrzebuje od nich zamawiać.
    Nie wiedziałem po prostu że te zabezpieczenia są takie fajne i tak tanie ale ja jestem hobbystą a nie zawodowcem...