logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Konfiguracja OpenBeken do testów gorącego powietrza - MAX6675, rejestrowanie temperatury i mocy

p.kaczmarek2 19 Maj 2024 22:37 2034 0

TL;DR LABEL_AI_GENERATED

  • Konfiguracja OpenBeken łączy WB3S z MAX6675 i gniazdo Mycket Smart Outdoor Socket PE-01E IP44 do testów stacji gorącego powietrza.
  • Oba urządzenia działają na stockowym OpenBekenie i wysyłają dane skryptami autoexec.bat przez SendGET do własnego serwera HTTP.
  • MAX6675 odczytuje pojedyncze słowo SPI 16-bitowe, a skrypty raportują temperaturę oraz napięcie, prąd i moc co 0,5 sekundy.
  • Zestaw posłużył do wygenerowania wykresów 350c.html i 450c.html oraz przetestowania 8 stacji hot air, choć wymagał dalszego postprocessingu.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA
Treść została przetłumaczona angielski » polski Zobacz oryginalną wersję tematu
Słuchaj:
  • Termopara typu K z modułem przetwornika A/D MAX6675 na płytce prototypowej.
    Poniżej przedstawię moją konfigurację do testowania stacji gorącego powietrza - dwa urządzenia OpenBeken, pierwsze używane do pomiaru temperatury gorącego powietrza za pomocą MAX6675, a drugie używane do pomiaru mocy - oba raportują pomiary do mojego serwera HTTP, dzięki czemu mogę je wykorzystać do dalszego przetwarzania. Oczywiście moja konfiguracja została wykonana na stockowym OpenBekenie bez hardcodingu - wszystkie raporty są wykonywane przez skrypty. Zobaczmy więc, jak je oskryptowałem.

    Pierwsze urządzenie - moja płytka WB3S - pomiar temperatury MAX6675
    MAX6675 może mierzyć bardzo wysokie temperatury i jest bardzo łatwy w użyciu - można go podłączyć do dowolnych trzech GPIO. MAX6675 wykorzystuje protokół SPI, ale w tym przypadku transakcja SPI jest bardzo prosta i wymaga jedynie odczytu pojedynczego 16-bitowego słowa.
    Termopara typu K z modułem przetwornika A/D MAX6675, zestaw.
    W tym przypadku, dowolne urządzenie OBK może być łatwo użyte.
    Oto zrzut ekranu z mojego panelu, wiem, że jest bardzo niechlujny, większość rzeczy nie jest związana z tym projektem:
    Zrzut ekranu z panelu użytkownika urządzenia BK7231T_FourRelays.
    Najważniejsza część znajduje się w autoexec.bat w LittleFS, zobacz tutaj jak go zrobić:



    Oto mój skrypt:
    
    startDriver MAX6675 24 26 6 1
    
    again:
    
    SendGET http://192.168.0.169:8002/log.php?temperature=$CH1
    delay_s 0.5
    
    goto again
    

    Załóżmy co się tutaj dzieje:
    - najpierw masz MAX6675 init i ustawione piny, składnia jest taka:
    
    MAX6675 CS CLK MISO targetChannel
    

    - następnie masz pętlę, co 0.5s temperatura jest wysyłana (a dokładniej wartość kanału 1) do mojego niestandardowego serwera HTTP, gdzie skrypt log.php przetwarza ją dalej

    Drugie urządzenie - Mycket Power Metering Socket - Gniazdo do pomiaru pomiar mocy
    Poniżej kilka informacji na temat drugiego urządzenia, z którego korzystałem:

    Mycket Smart Outdoor Socket PE-01E IP44 z pomiarem energii

    Zrzut ekranu panelu skryptu opóźnienia OBK z danymi pomiarowymi.
    Jednakże, każde gniazdo do pomiaru mocy powinno być dobre do tego celu.
    Mój skrypt tutaj wysyła pomiary napięcia/prądu/mocy do mojego skryptu co 0.5 sekund:
    
    again:
    
    SendGET http://192.168.0.169:8002/log.php?voltage=$voltage¤t=$current&power=$power
    delay_s 0.5
    
    goto again
    


    Mój skrypt logujący w PHP
    Urządzenie OBK wysyła pomiary napięcia/prądu/mocy do mojego skryptu co 0,5 sekundy. Mój skrypt logujący jest w rzeczywistości całkiem sprytny - nie ma zakodowanych na sztywno wartości. nie ma żadnych zakodowanych nazw zmiennych, po prostu zapisuje to, co zostało odebrane przez GET. Ponadto dodawany jest znacznik czasu:
    https://github.com/openshwprojects/hotair/blob/main/log.php
    Poniższe rozwiązanie może nie być idealne w niektórych przypadkach, na przykład dlatego, że zapisany czas to czas, w którym odebrano pomiar a nie czas, w którym został zrobiony, więc mogą być pewne małe rozbieżności, ale są one akceptowalne dla mojego projektu.

    Następująca konfiguracja pozwoliła mi stworzyć te wykresy:
    https://openshwprojects.github.io/hotair/350c.html
    https://openshwprojects.github.io/hotair/450c.html
    Oczywiście, pomiary wymagały dalszego postprocessingu (usunięcie podwójnych wpisów i scalenie), ale jest to poza zakresem tego tematu.
    Co więcej, oczywiście możliwe byłoby połączenie moich dwóch skryptów w jedno urządzenie i podłączenie MAX6675 do samego gniazda pomiaru mocy, ale nie chciałem ponownie otwierać sprawy Mycket. W każdym razie, to na razie wszystko. Do tej pory użyłem mojego setupu do przetestowania 8 stacji hot air, więc bądźcie czujni na więcej! Daj mi znać, jeśli masz jakieś pytania lub sugestie.

    Fajne? Ranking DIY
    Pomogłem? Kup mi kawę.
    O autorze
    p.kaczmarek2
    Moderator Smart Home
    Offline 
    Inżynier programista z wieloletnim doświadczeniem embedded i full stack developer.
    Specjalizuje się w: embedded, Full-Stack Developer
    p.kaczmarek2 napisał 14768 postów o ocenie 12910, pomógł 659 razy. Jest z nami od 2014 roku.
  • REKLAMA
Słuchaj:
REKLAMA