Open source vraag gestuurd ventilatie systeem

Pagina: 1
Acties:

Onderwerpen


  • __Peter__
  • Registratie: December 2009
  • Laatst online: 04-04 13:04
Sinds een tijdje ben ik bezig met een nieuwe controller te ontwikkelen voor het vraag gestuurde ventilatie systeem van Itho. De reden hiervoor is dat de bestaande controller niet goed functioneert en een nieuwe controller erg duur is. Daarnaast zijn er nog installatie kosten en kan je niets Tweaken aan dit ding. Ik heb een print van Arjan Hiemstra om de controller uit te lezen wat handig is.

De basis van dit nieuwe ontwerp is dat de bestaande kleppen van Itho hergebruikt worden en dat de besturing aan te passen is volgens eigen wensen. Hoewel niet alle 12 kanalen gebruikt worden heb ik er toch voor gekozen om een uitvoering te maken van 12 kanalen.

De Itho kleppen zijn unipolaire stappen motoren en iedere stappen motor heeft 4 uitgangen nodig van de controller. Dat zou betekenen dat er 4x12 = 48 I/O nodig zouden zijn. De besturing is een ESP32 welke geen 48 I/O heeft. Ik heb er voor gekozen om 74HC595 ICs te gebruiken om het aantal I/O te vermenigvuldigen. Er zijn 2 sets van 3 74HC595. Dus met 6 I/O van de ESP32 kan ik 12 kleppen sturen. Vanwege het vermogen van de stappen motoren worden ULN2804A darlington transistoren gebruikt. De voeding is 15V en op de print wordt 3.3V en 5V. De 3.3V wordt gebruikt voor de 74HC595 circuits en de 5V om de ESP32 extern te voeden. De ESP32 module is een 30 pins module van Ali Express compatible met de NodeMCU uitvoering. De PCB is dubbelzijdig en ontwikkeld met KiCAD en in Nederland gemaakt door VDR Electronics.

Het itho systeem heeft twee sensoren; een vocht sensor in de buis van de badkamer en een CO2 sensor in de ventilator aanzuig. Op de nieuwe besturing heb ik twee sensoren geintegreerd; 1 SCD40 CO2/temperatuur/RH sensor in de aanzuig van de ventilator en een DHT22 RH/temperatuur sensor. De SCD40 communiceert met I2C en de DHT22 is een one-wire interface.

Hieronder een paar fotos van het geheel.

Afbeeldingslocatie: https://tweakers.net/i/ZNU0N1UHVQEAAXVEld_akhh8H1c=/232x232/filters:strip_icc():strip_exif()/f/image/CllYtgqI6dcQuEXFKMCTkkFi.jpg?f=fotoalbum_tileAfbeeldingslocatie: https://tweakers.net/i/arvvml90LsX6sTkRPfwYAIjhMS8=/232x232/filters:strip_icc():strip_exif()/f/image/csTBIDmIgxHqnTGcgKBDGh0f.jpg?f=fotoalbum_tileAfbeeldingslocatie: https://tweakers.net/i/ouKQ0sE8vO-4a1iEr1fjRzqyGyc=/232x232/filters:strip_icc():strip_exif()/f/image/LilF1ulxZyuClJvx0djI9neU.jpg?f=fotoalbum_tile
Afbeeldingslocatie: https://tweakers.net/i/OrCIKUNo56KlToYsv_agyQEN918=/232x232/filters:strip_icc():strip_exif()/f/image/IXvRnCNQA3TaAB5Vu8lWsrY9.jpg?f=fotoalbum_tile



Ik wil zowel de hardware als de software als open source op Github zetten zodra dit voldoende ontwikkelt is. Op dit moment zit de basis hardware besturing in de ESP32 en de regeling wordt ontwikkeld in Node-red en de communicatie via MQTT. De regeling is echter nog niet helemaal klaar. Ik heb voor ogen om de hele regeling in micropython te ontwikkelen

Mocht iemand belangstelling hebben om dit concept mede verder te ontwikkelen laat het dan even weten als reactie op deze post.

  • __Peter__
  • Registratie: December 2009
  • Laatst online: 04-04 13:04
Hey Wouter,

Dank voor je bericht. Ik ben zeker nog bezig met dit project. In principe werkt het al geruime tijd en best goed op basis van de C++ hardware sturing en control in Nodered samen met MQTT (zie comment over hacky MQTT gebruik). Dit is niet echt een setup wat handig is.

Ik ben nu bezig met het ontwikkelen van alle hardware besturing en control op basis van Micropython. Ook dit werkt best al wel goed maar nog niet alle functionaliteit zit er in en ik moet het nog debuggen. Er is ook nog geen web interface. Ik heb voor de besturing in Micropython een statemachine toegepast en dit principe maakt het wel simpel en overzichtelijk. Ook zou het systeem onafhankelijk kunnen werken van de WIFI connectie hoewel het systeem dan niet te monitoren valt. Zie ook onderstaande plaatje, dit is een screenshot van Grafana van de laatste 12 uur van mijn testopstelling. Deze setup heeft twee sensoren, een SCD41 en een DHT22.

Afbeeldingslocatie: https://tweakers.net/i/MQcfFvB-wo-LwPzlyf7spY5tzjM=/800x/filters:strip_exif()/f/image/EdsW66S4VMS96QPgPyjzpqui.png?f=fotoalbum_large

Daarnaast ben ik bezig met versie 2 met de volgende verbeteringen:
- Optie om een I2C LCD scherm aan te sluiten om status van het systeem weer te geven.
- Optie voor meerdere sensoren over verschillende I2C bussen met selectie van 3.3V of 5V
- Optie voor externe RTC, ook via I2C
- Afmetingen print hetzelfde als itho print zodat 1:1 vervanging mogelijk is
- Interne voedingen aanpassen, versie 1 was te groot en te duur. Ook zal er een optie zijn om de interne 3.3V voeding te gebruiken van de ESP32

Om je vraag te beantwoorden over de kleppen; de kleppen worden met stappen motoren bestuurd en daarmee kan je kleine stappen maken waardoor je heel nauwgezet de stand van de kleppen kan regelen. Ik heb het systeem zo opgezet dat er 24 posities mogelijk zijn. Als ik het principe van Itho aanhoudt dan staan de kleppen altijd een beetje open naar alle ruimtes en 100% open voor de badkamer.

Met versie 2 zou je in de centrale box meerdere sensoren kunnen aansluiten zodat je zelfs per ruimte zou kunnen meten. Let wel op dat CO2 sensoren duur zijn, zeker 45 euro per stuk voor b.v. de SCD40/41. Voor temperatuur en lucht vochtigheid kan je ook de goedkopere DHT22 sensoren gebruiken, de nieuwere gebruiken ook I2C. Let wel op dat van veel sensoren het I2C adres niet aan te passen is en dus niet op dezelfde bus kunnen

Mijn ervaring is dat lucht vochtigheid heel moeilijk op te regelen valt.Op absolute waarde voor de hele woning gaat niet, dan staat op sommige dagen de hele de fan te loeien maar de luchtvochtigheid neemt niet af. Wat wel goed werkt is automatische verhoogde afzuiging bij hoge luchtvochtigheid in de badkamer. Ik ben nog bezig om de regeling op verandering van luchtvochtigheid te laten reageren. CO2 is echter makkelijker te regelen. Temperatuur is niet zo relevant.

Ik hoop binnen een aantal weken in elk geval voor versie 1 de besturing gebaseerd op Micropython en het hardware ontwerp op Github te zetten. Ik zal hier een update plaatsen. Ik heb helaas niet zo heel veel tijd dus kan het nog wel even duren.

Als je nog ideeen en/of vragen hebt dan hoor ik dat graag.

gr Peter
wouterteepe schreef op zondag 20 oktober 2024 @ 21:43:
Hey Peter,

Werk je nog aan dit project?
Het lijkt mij echt fantastisch als dit zou lukken.
Zelf ben ik op zoek naar een WTW met de mogelijkheid om een flink aantal zones onafhankelijk op basis van sensoren aan te sturen, en dan is Itho QF/DF het enige systeem wat in de buurt komt. Behalve dan dat het overkomt als een systeem waar, zoals je zegt, erg weinig aan te tunen of in te stellen valt.

Zelf ben ik qua concept wel gecharmeerd van de DucoBox Focus, een ventilatiesysteem (dus geen WTW) waar elke zone los van elkaar op basis van sensoren werkt, en die sensoren gewoon in de centrale box zijn ingebouwd. d.w.z. in de kleppen. Bij een QF/DF plenum zou dat ook prima kunnen, door de sensoren in de "aanvoerbuizen" te monteren. Je moet toch altijd een beetje ventileren, dus helemaal dicht zouden de kleppen toch niet moeten.

Tenminste, is dat zo? Dat je de kleppen in meer standen dan "volledig open" en "volledig dicht" zou kunnen zetten?

Ik hoor graag van je, en denk graag mee.

groet,
Wouter

[ Voor 17% gewijzigd door __Peter__ op 24-10-2024 08:23 . Reden: Plaatje toegevoegd ]


  • __Peter__
  • Registratie: December 2009
  • Laatst online: 04-04 13:04
De ontwikkeling van het alternatief voor de Itho Demandflow controller is nog steeds actief. Als je al een Itho systeem hebt dan is dit simpel om te bouwen om volledige controle te krijgen. Het systeem dat ik op de fotos liet zien werkt nu al maanden goed maar is geprogrammeerd in micropython. Ik meet de CO2 waarde bij de intake van de fan en het is niet moeilijk om deze waarde onder de 800ppm te houden als de fan speed medium of hoog is, zie ook screenshot van Grafana (de licht blauwe lijn).

Afbeeldingslocatie: https://tweakers.net/i/ylUUu6xQPWuwluZZcVI2vp34Tik=/800x/filters:strip_exif()/f/image/y6r4w3YUInNxrsDCND91FE0A.png?f=fotoalbum_large

Het nadeel van micropython is dat de integratie met een webserver erg lastig wordt (tenminste met mijn implementatie) en daarom ben ik nu bezig met een C++ variant die gebruikt maakt van beide cores en functies van freeRTOS. Andere features zijn MQTT integratie en direct schrijven naar InfluxDB. Integratie met HomeAssistant heb ik nog niet over nagedacht maar met MQTT integratie zou dit ook niet heel moeilijk moeten zijn.

Ook vernieuw ik de print naar helemaal SMD en voeg een RTC toe, integreer ik de ESP32-S3 en is er de mogelijkheid om 16 sensoren aan te sluiten via twee i2C multiplexers zodat sensoren met dezelfde I2C adressen geen probleem zijn. Er is ook de mogelijkheid om een I2C LCD aan te sluiten en zijn er twee RGB LEDs en twee drukschakelaars

Ik wil nog iets verder zijn met de software en dan ga ik 5 printen bestellen en testen. De software komt op Github. Ik verwacht dit binnen ongeveer 6 maanden te doen.
wowly schreef op zondag 16 februari 2025 @ 13:33:
Ik volg het draadje met aandacht. Heb ook 2 demandflow systemen draaien maar ben niet zo tevreden emt de hogere Co2 waarden die ze aanhouden. 1200PPM is gewoon voor ze, ik zou liever onder de 800 blijven in de praktijk. En dan maar hopen dat de aanzuiggeluiden binnen de perken blijven!

Dus mocht er een enigzins behapbaar DIY controller komen zou dat echt super zijn!!!

  • __Peter__
  • Registratie: December 2009
  • Laatst online: 04-04 13:04

Versie 2 van de hardware en software in C++

Na best een lange tijd heb ik versie 2 van de print ontwikkeld welke all features heeft zoals in eerdere posts genoemd. Hieronder een plaatje van de print:

Afbeeldingslocatie: https://tweakers.net/i/0RpuqQcd7TLnCvWzFx8VRboPBqk=/800x/filters:strip_icc():strip_exif()/f/image/BeZigqeYf5ljmXUWZ4Leo1IK.jpg?f=fotoalbum_large

De software met uitgebreide beschrijving is te vinden op Github: https://github.com/PeterLourens/DemandControlVentilation

Als iemand belangstelling heeft voor een print dan hoor ik het graag. Ik ben er wel achter gekomen dat er twee foutjes in het print ontwerp zitten: De LED dat aangeeft dat er spanning op de print staat heeft geen GND verbinding (op te lossen door een heel kort draadje). De RGB LEDs hebben de verkeerde package en dus klopt de pin-out niet. Op te lossen door losse print mee te leveren voor RGB LEDs en 3 draadjes. Dit wordt opgelost in V3 mocht er voldoende belangstelling zijn.
Pagina: 1