Inhoudsopgave:

Open Source Hot Tub-controller - Ajarnpa
Open Source Hot Tub-controller - Ajarnpa

Video: Open Source Hot Tub-controller - Ajarnpa

Video: Open Source Hot Tub-controller - Ajarnpa
Video: Raspberry Pi powered Hot Tub Controller 2024, Juli-
Anonim
Open Source Hot Tub-controller
Open Source Hot Tub-controller

Ik vond online een gebruikte hottub van een paar jaar oud en besloot er een gaaf project van te maken. De ingebouwde bedieningselementen waren al vervelend en tijdrovend, dus dat gaf me nog een reden om eraan te sleutelen. Om energie te besparen, verlaag ik de temperatuur van het zwembad als ik hem niet gebruikt, maar als ik de hottub wilde gebruiken, moest ik de temperatuur 4 uur van tevoren verhogen. Als voorbeeld van wat ik bedoel met vervelend: om energie te besparen, moest ik de temperatuur van het zwembad verlagen als ik hem niet gebruikte, maar als ik de hot tub wilde gebruiken, moest ik de temperatuur 4 uur van tevoren verhogen. Een ander ding dat gebeurde was dat de circulatiepomp op de een of andere manier besloot om 's nachts willekeurig in te schakelen - dat zou waarschijnlijk onder controle zijn gekomen als ik de handleiding had gelezen, maar als knutselaar scheur ik liever de bedieningselementen eruit en gebruik in plaats daarvan een Raspberry Pi - dus hier is mijn artikel "Open source hot tub-controller."

Stap 1: Veiligheidswaarschuwing

Als u ook van plan bent om aan uw bubbelbad te sleutelen, moet u zich bewust zijn van de risico's. Hoewel hoogspanningssystemen experimenteel interessant zijn, kunnen ze gevaarlijk zijn, en als ze niet met zorg, respect en intelligentie worden behandeld, kunnen ze dodelijke verwondingen veroorzaken. Er zijn talloze handleidingen online te vinden over veilig werken met hoogspanning. Als je niet zeker weet wat je doet, stop dan nu en ga jezelf onderwijzen.

Stap 2: Componenten

In dit project gebruik ik een UniPi 1.1, maar dat hoeft niet zo te zijn, je kunt de Raspberry GPIO's ook gebruiken met een relaisbord, de UniPi is handig om ook een 1-draads verbinding te hebben. De klemmen, montagerails en kabelkanalen die ik gebruik zijn niet nodig maar zorgen ervoor dat de kast er netjes uitziet, dat kan men vereenvoudigen door hem direct te bedraden. De UniPi heeft een 5V-voeding nodig, ik gebruik een op DIN-rail gemonteerde met een uitgangsstroom van 3A.

Stap 3: Ruim de kast op

Ruim de kast op
Ruim de kast op
Ruim de kast op
Ruim de kast op

Ik hergebruik geen van de ingebouwde controller-elektronica, daarom verwijder ik ze allemaal. Mijn hottub heeft de volgende draden:

  1. Circulatiepomp
  2. Jets Pomp
  3. Ventilator
  4. Verwarming
  5. ozonator
  6. Temperatuursensor
  7. Stroomsensor
  8. Levering
  9. 2x Displaykabel

De klemmen op de print zijn gelabeld. Het is een goed idee om de kabels te markeren, zodat u later het doel van elke kabel weet. Om de bedrading gemakkelijker te maken, heb ik de hele kast eruit gehaald. Daarna heb ik alle componenten verwijderd, het oude schoongemaakt en begonnen met de installatie.

Stap 4: Installatie en bedrading

Installatie en bedrading
Installatie en bedrading
Installatie en bedrading
Installatie en bedrading
Installatie en bedrading
Installatie en bedrading
Installatie en bedrading
Installatie en bedrading

Ik gebruik het originele scherm niet opnieuw. Het zou waarschijnlijk op de een of andere manier kunnen worden geïntegreerd, maar omdat het alleen de temperatuur toont, is het de moeite niet waard. Ik heb ook gedacht aan het installeren van een aanraakscherm, maar ze werken een beetje niet als je vingers helemaal nat zijn.

De ingebouwde temperatuursensor is een temperatuurafhankelijke weerstand (PT100). Hoewel de UniPi een analoge ingang heeft waarmee ik de weerstand kon meten, dacht ik mijn leven gemakkelijker te maken door in plaats daarvan een 1-draads temperatuursensor te gebruiken.

Eerst heb ik de kabelgoten, links, rechts, boven en in het midden van de kast gemonteerd.

Vervolgens heb ik twee DIN-rails gemonteerd, één in het midden tussen de kabelgoten en één 75 mm onder de middelste kabelgoot. Ik gebruik zelftappende schroeven om alle componenten te monteren.

Op de onderste DIN-rail heb ik de klemmen, de relais en de 5V-voeding gemonteerd. Als klemmen heb ik railterminals met trekveren gebruikt. Aan de linkerkant zijn de klemmen voor de toevoerleiding - 3x Grijs voor de 3 fasen - 1x Blauw voor de nulleider - 1x Geel/Groen voor de aarde.

Vervolgens heb ik voor elke andere kabel een grijze, een blauwe en een geel/groene klem toegevoegd. Sommige kabels in de hottub zijn wat dik. Ik ben in Europa en daar hebben we andere normen voor kabeldikte dan in de VS. De klemmen moeten geschikt zijn voor 6 mm ^ 2 voor alle verbindingen.

Rechts van de klemmen zitten de relais. De interne UniPi-relais kunnen slechts 5A schakelen, dus ze kunnen niet worden gebruikt om de belasting rechtstreeks te schakelen. Ik gebruikte vermogensrelais met 230V AC stuurspanning en nu kan de installatie een vermogen aan tot 4kVA.

Aan de linkerkant van de bovenste DIN-rail heb ik 2 potentiaalverdelers gemonteerd, één voor GND en één voor 12V+. De 12V+ wordt geleverd door de UniPi. Ernaast plaatste ik de UniPi 1.1, met een montageplaat voor DIN-rails.

Ik heb geluk gehad met het formaat van de kast, alles past precies. Nu begint het plezier - laten we de bedrading doen. De draadkleuren zijn niet standaard. Ik gebruik de kleuren op de volgende manier:

  • Zwart: 230V stroom
  • Rood: 230V geschakeld
  • Blauw: neutrale geleider
  • Donkerblauw: 5V of 12V+
  • Donkerblauw/Wit: 5/12V GND
  • Groen/Geel: Aarde/Grond

Ik gebruik adereindhulzen voor elk draaduiteinde, die zijn niet nodig voor dit soort klem, maar het ziet er wel mooi uit. Ik heb 3 fasen beschikbaar, de hoofdzekering is 16A Typ C. De verwarming heeft 10A, de pompen hebben elk ongeveer 6A. Dus verdeel ik de belasting over alle 3 fasen. Ik gebruik de eerste om de regeleenheid, de ozon en de blazer van stroom te voorzien, de tweede fase voor de verwarming en de derde voor de 2 pompen.

De magnetische en flowsensoren zijn digitaal, dus ik heb het ene uiteinde aangesloten op de 12V en het andere op een van de digitale ingangen. Om de wifi-verbinding te verbeteren, gebruik ik niet langer het originele metalen deksel, maar vervang het door een acryl exemplaar.

De afdekking van de hottub is voorzien van veiligheidsclips, zodat de wind deze niet per ongeluk kan openen. Ik vergeet natuurlijk die clips te sluiten, dus heb ik een magnetische schakelaar geïnstalleerd die me waarschuwt wanneer de klep opengaat. So far so good, het is tijd om de hersens van de operatie voor te bereiden.

Stap 5: Besturingssysteem

Ik gebruikte nymea om de UniPi en BerryLan te bedienen voor de wifi-installatie. Er is een Raspberry Pi-image die UniPi ondersteunt en beide componenten bevat die hier beschikbaar zijn:

Ik flitste de SD-kaart met Etcher.io, plaatste hem in de UniPi en zette de hot tub aan. Ik moest wat kleine veranderingen aan het besturingssysteem doen, dus moest ik de UniPi verbinden met mijn wifi-netwerk. Dit is wat ik deed:

$ ssh nymea@YOUR-IP-ADDRESS-GIVEN-BY-BERRYLAN #password is nymea $ sudo su $ apt-get update $ apt-get install unzip nymea-plugin-unipi $ wget https://github.com/UniPiTechnology/ evok/archive/v… $ unzip v.2.0.7c.zip $ cd evok-v.2.0.7c $ bash install-evok.sh $ > te gebruiken websitepoort: >1040 $ > te gebruiken API-poort: >8080 $ > Uw model: >3 $ > (WiFi installeren?) [j/n] n $ sudo reboot nu

De standaardmodus voor BerryLan is "offline", dus de BT-server start wanneer de Raspberry Pi niet is verbonden met een netwerk.

Tussen haakjes.: Met BerryLan kon iemand de Raspberry ook in de access point-modus zetten, zodat de klant zonder router rechtstreeks verbinding kon maken met de hot tub. Oké, nu is het besturingssysteem klaar voor gebruik en kunnen we doorgaan met de laatste stappen.

Stap 6: Instellen

Opstelling
Opstelling
Opstelling
Opstelling

Ik gebruik de desktop-app voor nymea:app. Je kunt het ook voor Android- en iOS-apparaten installeren en je UniPi op dezelfde manier bedienen.

Voeg toestel toe

Ik heb de relaisuitgangen toegevoegd, nymea ontdekt hoeveel IO's er beschikbaar zijn: Apparaat toevoegen -> UniPi -> Relaisuitgang -> Selecteer relais één en noemde het "Verwarmer". Ik herhaalde die stappen voor alle relais en ik stelde de bedieningselementen als volgt in:

Ga naar Apparaat toevoegen -> UniPi -> Relaisuitgang -> Selecteer `"Relais 1"' en noem het "Verwarmer"

  • Relais 2: Jetspomp
  • Relais 3: Circulatiepomp
  • Relais 4: Ventilator
  • Relais 5: ozonator

Vervolgens heb ik de ingangen toegevoegd: Apparaat toevoegen -> UniPi -> Digitale ingang -> Selecteer "Input 1" en noem het "Flow Sensor" Ik herhaalde die stappen voor alle ingangen die ik heb:

  • Ingang 1: Flowsensor
  • Ingang 2: Afdeksensor

De 1-draads temperatuursensor: Apparaat toevoegen -> UniPi -> Temperatuursensor -> Naam aan temperatuur

Last but not least heb ik 2 schakelknoppen toegevoegd. Het zijn niet echt apparaten, maar meer in de buurt van "staten". Dit helpt me om ze later in mijn "Favorieten" lijst te gebruiken, zodat ik alles snel aan of uit kan zetten. Apparaat toevoegen -> guh GmbH -> Toggle Switch -> Naam: Zomermodus

De "Zomermodus" is om de kachel tijdens de zomermaanden volledig uit te schakelen. Apparaat toevoegen -> guh GmbH -> Toggle Switch -> Naam: Ready-modus De "Ready-modus" is om de doeltemperatuur te schakelen tussen 37°C (gereed) en 29°C (niet gereed).

Voeg wat magie toe

Magie is in feite een regelset die nymea opdracht geeft om dingen automatisch te doen. Als "Klaarmodus" is ingeschakeld en "Zomermodus" is uitgeschakeld en de temperatuur lager is dan 37°C, worden de verwarming en de circulatiepomp geactiveerd, anders worden ze gedeactiveerd. Als "Klaarmodus" is uitgeschakeld en de "Zomermodus" is uitgeschakeld en de temperatuur lager is dan 29°C worden de verwarming en de circulatiepomp geactiveerd, anders worden ze gedeactiveerd. Als de circulatiepomp aan staat en de stromingssensor niet aan, stuur dan een waarschuwing. Als de watertemperatuur onder de 3°C daalt, stuur dan een waarschuwing. Als de watertemperatuur 37°C bereikt, stuur dan een melding "Hot tub klaar" Als de magnetische sensor is uitgeschakeld, stuur dan een melding "Deksel van de hot tub is open". Schakel de jetpomp tussen 9.00 en 10.00 uur in. Ik gebruik de hot tub niet elke dag, dus ik heb geen "Heat Up"-regel ingesteld. Soms, als ik thuiskom van mijn werk, wil ik er gewoon zo snel mogelijk inspringen, dus gebruik ik de externe verbinding om de kachel van tevoren aan te zetten. Mijn hottub warmt op met een snelheid van ongeveer 2 graden per uur. In de ruststand houd ik de temperatuur meestal op 29°, dus ik moet de verwarming 4 uur van tevoren aanzetten. PS.: Sommige mensen denken dat het opwarmen van het bad meer energie kost dan het constant op temperatuur houden, maar ik heb het nagekeken en dit is niet het geval van mijn kant. De configuratie van de externe verbinding maakt ook pushmeldingen mogelijk, zodat je coole meldingen kunt ontvangen.

Nu kan ik elke pomp aan/uit zetten, de hottub-modus "Klaar" of "Zomer" instellen, de temperatuur controleren en de blazer schakelen.

Dat is alles, de hot tub is klaar - ik zet het zwembad graag aan vanuit mijn luie stoel of op de terugweg van mijn werk. Voor die luie zondagochtenden stel ik specifieke timers in, zodat ik voor het ontbijt een duik kan nemen. Mijn volgende project is het verwijderen van de ingebouwde LED's en deze vervangen door WS2812 LED's. Ik hoop dat je mijn artikel leuk vond en ik hoor graag je mening over het project.

Aanbevolen: