ESP Brew Engine

Registreer je of meld je aan

Je moet aangemeld zijn om deel te nemen aan het forum

  • Bij deze wil ik graag mijn laatste project met jullie delen, ik heb namelijk een nieuwe sturing gemaakt voor mijn brouwketel, aangezien de ingebouwde sturing steeds veel te veel overshoot had, en niet zo handig was.


    Het is eigenlijk een volledige software/firmware voor een ESP32 controller, deze kan je verbinden met je wifi en dan via de webinterface het hele spel instellen en regelen.


    De reden dat ik dit zo gemaakt heb is omdat je voor 10-20€ een bordje met 4 relais op kan kopen, dat maakt het heel eenvoudig om een sturing te bouwen, het enige wat je nog moet doen is dit in een kastje steken en er één of meerdere OneWire temperatuursensoren aan koppelen.


    Ik heb het openbaar gezet op github -> https://github.com/jeroen79/esp-brew-engine


    Moest iemand er interesse in hebben probeer het gerust uit en geef feedback.




  • Hoeveel Amp kunnen die relais aan?

    Ze kunnen 10A elk aan, en aangezien mijn ketel 2 weerstanden heeft van 1500W, en ik ze apart aanstuur is dat dus voldoende.


    Mijn initieel idee was idd ook een SSR hoor, maar toen ik zag dat de originele sturing ook gewoon 2 van dit soort relais gebruikt en ik zo een all in one bordje vond op ali leek het me het eenvoudigste om het eerst zo te proberen.

  • Ze kunnen 10A elk aan, en aangezien mijn ketel 2 weerstanden heeft van 1500W, en ik ze apart aanstuur is dat dus voldoende.


    Mijn initieel idee was idd ook een SSR hoor, maar toen ik zag dat de originele sturing ook gewoon 2 van dit soort relais gebruikt en ik zo een all in one bordje vond op ali leek het me het eenvoudigste om het eerst zo te proberen.

    In dat geval moet het lukken.

    Moest het één zware weerstand geweest zijn van 3000W dan zou dit problemen geven ...

    Het grote voordeel van zo'n doe-het-zelf ontwikkeling is dat je de software zelf kunt verfijnen en er handige functionaliteiten kunt aan toevoegen zoveel je wil. Ik denk dat ik nu aan software versie 20 zit ... tja, het moet perfect zijn :)

  • Ja dat is hem, ik had deze (laatste optie) besteld, is nog iets goedkoper maar meer verzending.


    Wat je ook nog nodig hebt is één of meer "Stainless Steel Thermowell" en wat DS18B20 sensors, of je kan ze percies ook al voorgemonteerd kopen hier.

    Zo'n voorgemonteerde zit hier in mijn gistvat, prima ding. Verder veel losse maar wel met snoer en stainless steel tip in gebruik.

  • Ik heb een lange sensor gemaakt door die DS18B20 stift in een RVS buis te lijmen met 2 componenten metaallijm. Die RVS buis kun je ook simpel in China bestellen in 50 cm lengtes met een binnendiameter van 6 mm.


    Alleen opletten, die sensoren met snoeren en RVS stift, zoals goed Chinese fakers het doen, ze zijn niet allemaal van RVS gemaakt. Eerst een paar keer brouwen ermee, en blijft die mooi dan is het in orde. Verkleurt die, dan is het jammer.


    Nog een extra waarschuwing, die DS18B20 kan niet te dicht bij je inductie element gebruikt worden, bij mij gebeurde dat laatst toch weer per ongeluk, regelcomputer gecrasht en de sensor leek stuk. Maar een dag later deed die het weer. Waarschijnlijk door inwendige condensatoren die lang nodig hebben om te ontladen. Ik steek die dus maar niet dieper als halverwege de pan. Dus ook opletten als je een thermowell in je pan gaat plaatsen.

  • Ik hang er hier 2 in, 1 in het midden, en eentje onder, merk toch dat als je niet roert er best wel een verschil op zit.

    Het is gewoon lastig het juiste meetpunt te vinden. Dat was ook de reden dat ik die lange gemaakt heb. Uiteindelijk zet ik de tip voor de uitgang naar de pomp toe. Zolang de doorstroom snelheid redelijk blijft gaat dat goed en na een minuut of 5 tot 10 is de temperatuur overal in de ketel redelijk gelijk.


    Met roeren is het waarschijnlijk een heel ander verhaal.

  • Bij deze is de eerste grote update al de deur uit:


    v1.1.0


    Nieuwe dingen:

    • Add ability to scan for wifi networks.
    • Make it more clear that wifi is is AP mode or Station.
    • Add ability to Change max power.
    • Set default power to 15, some boards seem to have issues at 20.
    • Added both relative and absolute compensation options for sensors.
    • Added options to disable/hide sensors.
    • Show if sensor is connected in settings.
    • Show sensor last temp in settings.
    • Allow sensors to be disabled/hidden.
    • Show if sensors are connected in sensor settings.
    • Show Temperature in sensor settings.
    • Added relative and absolute compensation to sensors.
    • Round to 0.1.
    • Ability to delete unused sensors.
    • Button to rescan for onewire sensors.

    Met dank aan wimdm die al een heel aantal goede opmerkingen had!

  • Over de sensors, ik ben volledig gestopt met compensatie voor de DS18B20 sensoren. Als ze werken dan is de afwijking kleiner dan 1 graad, meestal enkele tienden.

    Ik heb er wel een routine in gefrutseld die de sensoren in de allehoogste resolutie forceren. Vooral de PID sturing heeft daar plezier van, voor ons mensen niet zo belangrijk of je de temperatuur meet tot 4 cijfers achter de komma.


    Als je de ruimte heb, ik heb het zelf wel gedaan, sluit iedere sensor functie op een eigen poort aan. Je hoeft je dan niet meer druk te maken om adressen en kunt zelfs tijdens het brouwen sensors wisselen als er tenminste een steker verbinding is. Maar wel een limiet van 1 sensor per poort dan.


    Zo, dat waren mijn 2 cent tips. Succes met je project.

  • Ja ik zet ze idd zelf ook al op de hoogste resolutie, dan is de conversietijd wel langer maar dat maakt niet veel uit aangezien het bij mij toch in een aparte thread draait.


    Ik heb eigenlijk nog geen issues gehad met adressen hoor, ik heb het ook gewoon zo gemaakt dat hij alle sensors automatische detecteert en toevoegt, en je kan ze nu ook gewoon uittrekken of nieuwe insteken terwijl je aan het runnen bent, voor nieuwe moet er dan gewoon effe op een detectie knop gedrukt worden.

  • Klopt helemaal, en aangezien water verwarmen een traag process is met best wat lag is het ook best dat de pid wat trager is, ik heb heel wat getest en heb het nu op 1min staan tussen de pid berekeningen, is wel iets wat ik nog instelbaar wil maken, want kan misschien van de ene tot de andere installatie wel wat tweaking nodig hebben.

  • Het is maar precies hoe je het maakt, het is allemaal niet zo heel ingewikkeld. Die conversie tijd is niet zo van belang, brouwen en pid regelen is toch een heel traag proces daarmee vergeleken.

    De conversietijd van deze sensor is (dacht ik) 750 msec op hoogste resolutie wat nog goed meevalt.

    Iedere +-15s stel ik m'n vermogen (desnoods) bij om mooi op de ingestelde temperatuur terecht te komen echter zonder gebruik te maken van een PID. Dit werkt vlot en hiermee blijf ik binnen +-0.5°C van de ingestelde temperatuur.

  • Bij mij werkt het zo, temperatuur meten op de achtergrond in een andere taak. De meest recente temperatuur is dan zonder vertraging te lezen.

    De PID loopt in een ik dacht 3 seconden loop. Iedere keer wordt het vermogen dan berekend. Dan worden de vemogen timers ingesteld, 33% power is dan 1 seconde aan en 2 secondes uit. Verdeeld in 1 procent stapjes.

    Als het element uit is, wordt de warmwater ketel eventueel bijgewarmd. Met SSR's gaat dat perfect omdat ze in de nul doorgangen van de 50 Hz schakelen.


    Ik zie dus redelijk snel het vermogen omhoog geregeld worden bij een nieuwe maischstap. Die 3 seconden loop is een beetje experimenteel tot stand gekomen en zou wat trager kunnen.

    Met jouw 15 seconden regelt het ook wel mooi lijkt mij.

  • Ik ben ook begonnen met kortere pid loops, maar ik had dan steeds te veel overshoot, langere tijd tussen pid geeft bij mij beter resultaat, en ik verdeel idd ook het vermogen op de tijd van mijn pid loop, maar dan over de 2 weerstanden, dus 75% is Weerstand 1 60s en Weerstand 2 30s.


    Er is nog wel een beter alternatief dan PID voor zo een traag procces, namelijk "Model Predictive Control" maar das wel iets complexer, daar moet ik op termijn nog eens in duiken.