Het MBSE-ArdRims Arduino software topic

Gestart door mbroek, 29-04-2016 21:51 u

Vorige topic - Volgende topic

0 leden en 1 gast bekijken dit topic.

Pimmels

Hallo Chiel,
Is het een idee om twee versies te maken één met en één aparte zonder ESP8266 mogelijkheid?

Er zijn vast meer gebruikers die net als ik geen gebruik van wifi gaan maken...

Ik gebruik de recepten database trouwens ook niet... ;)

En bedankt voor je bemoeienis tot nu toe, het werkt super!


mbroek

Citaat van: Pimmels op 06-06-2016  10:50 uHallo Chiel,
Is het een idee om twee versies te maken één met en één aparte zonder ESP8266 mogelijkheid?

Er zijn vast meer gebruikers die net als ik geen gebruik van wifi gaan maken...

Ik gebruik de recepten database trouwens ook niet... ;)

En bedankt voor je bemoeienis tot nu toe, het werkt super!
Om fouten door verschillen met twee versies te voorkomen houd ik het op 1 versie waarbij je de ESP8266 moet aanzetten als je die wilt gebruiken. Als je een nieuwe versie installeert moet je toch ook je hardware eerst goed instellen. In ieder geval als je de ESP8266 niet inschakelt blijft de software werken zoals nu.

En je hoeft natuurlijk niet het recepten beheer te gebruiken ook al doe ik het zelf wel  :)



terragady

Yes I agree, ESP is excellent chip. More memory etc. I never went so far to have any rpoblems with it but people say that its unstable and quite problematic, maybe not the newest one though.

In my case when I wanted to take readings from Arduino by ESP and send it with WiFi, Arduino was getting slow with PID calculations and there was a bit of lag with temperature stabilization. Maybe I did something wrong or maybe Arduino was interrupted by those readings especially if you want big refresh rate. Probably it is managable by some more advanced programmer as you ;)
I have seen your changes in the code, nice. I am waiting for updates :)

Please also, as you mentioned, leave option for those who do not want to use ESP (just make sure that it will work by itself). I am pushing your project further to Norwegian and Polish forums and people seems to be interested :)

Pimmels

Citaat van: mbroek op 06-06-2016  12:55 uOm fouten door verschillen met twee versies te voorkomen houd ik het op 1 versie waarbij je de ESP8266 moet aanzetten als je die wilt gebruiken. Als je een nieuwe versie installeert moet je toch ook je hardware eerst goed instellen. In ieder geval als je de ESP8266 niet inschakelt blijft de software werken zoals nu.

En je hoeft natuurlijk niet het recepten beheer te gebruiken ook al doe ik het zelf wel  :)

Prima hoor, als het verder  toch geen invloed heeft op het proces maakt het niet uit ! :groots:

mbroek

Citaat van: Pimmels op 06-06-2016  13:23 uPrima hoor, als het verder  toch geen invloed heeft op het proces maakt het niet uit ! :groots:

Dat is de bedoeling, de ESP is alleen voor gebruikersgemak en mag de Arduino niet hinderen.

Biertje1985

Ik heb even stil gezeten, maar zo te zien gaat het goed met de ontwikkeling, is de PID nu ook helemaal perfect?

Zoals ik begrijp moet je het ESP boardje via USB met de arduino koppelen? dit is nog wat nieuw voor mij.

mbroek

Citaat van: Biertje1985 op 08-06-2016  21:17 uIk heb even stil gezeten, maar zo te zien gaat het goed met de ontwikkeling, is de PID nu ook helemaal perfect?

Zoals ik begrijp moet je het ESP boardje via USB met de arduino koppelen? dit is nog wat nieuw voor mij.

Perfect is de vraag, in ieder geval beter. Stapje voor stapje komen we er wel. Het tunen van de PID parameters heeft ook veel invloed zoals te verwachten is.

Het ESP bordje wordt aangesloten via IO poortjes aangesloten op 2 Arduino IO poortjes. Op de Arduino en ESP wordt een softserial library gebruikt. De USB poorten blijven vrij om firmware te laden. De ESP wordt ook met de Arduino IDE geprogrammeerd.

Zelf heb ik er de laatste tijd weinig aan gedaan, er zijn wat zaken die er tussendoor komen.

McMelloW

Citaat van: mbroek op 04-06-2016  19:49 uVersie 0.1.0
  • Voorbereiding voor WIFI interface met een ESP8266-12E board.
  • Gedurende 20 seconden wordt getest of de bereikte temperatuur stabiel blijft.
  • Enige kleine aanpassingen gedaan die geen invloed op de werking hebben.

Dit werkt prima op mijn ArdBir bordje. Gebruikt met het brouwen van een princessebiertje en verliep zonder problemen.  :brouwen:  :biersmile:

mbroek

Citaat van: McMelloW op 09-06-2016  23:19 uDit werkt prima op mijn ArdBir bordje. Gebruikt met het brouwen van een princessebiertje en verliep zonder problemen.  :brouwen:  :biersmile:

Top, een mooie basis om verder te gaan. Morgen even wat starterswort maken, en rond woensdag een Westvleteren 6 kloon, de Sixtus-6 zoals die hier heet.


Biertje1985

Ik heb ook maar eens een paar extra ESP bordjes besteld, ik word nu wel erg nieuwsgierig. Wat kan je allemaal doen via de WIFI?

Ow en dat van je spoelwaterketel, Brilliant dan kan je tijden het brouwen ook je spoelwater elektrisch verwarmen, echt geniaal.

Bovendien vraagt dit naar een aangepaste printplaat voor jouw softwareversie, met wat meer aansluitingen en een onboard ESP8266. Aangezien ik naar SMD wil gaan en wellicht
naar 4 layer bordjes is er weer wat ruimte voor handen. Moet wel even de tijd vinden om weer te beginnen met het ontwikkelen van die bordjes. Wat denk jij?

mbroek

Citaat van: Biertje1985 op 27-06-2016  22:32 uIk heb ook maar eens een paar extra ESP bordjes besteld, ik word nu wel erg nieuwsgierig. Wat kan je allemaal doen via de WIFI?

Ow en dat van je spoelwaterketel, Brilliant dan kan je tijden het brouwen ook je spoelwater elektrisch verwarmen, echt geniaal.

Bovendien vraagt dit naar een aangepaste printplaat voor jouw softwareversie, met wat meer aansluitingen en een onboard ESP8266. Aangezien ik naar SMD wil gaan en wellicht
naar 4 layer bordjes is er weer wat ruimte voor handen. Moet wel even de tijd vinden om weer te beginnen met het ontwikkelen van die bordjes. Wat denk jij?
Wel de goede ESP bordjes besteld, de 12E?
Via WiFi ben ik van plan de recepten te beheren, maar ook het brouwproces. Eigenlijk wat je nu via de knoppen al doet. Uiteindelijk zou het mogelijk zijn beerxml bestanden te gebruiken om een recept (maischchema) te laden.

Ik weet nog niet of de huidige print aangepast hoeft te worden. Ik volg ook een beetje de ervaringen van Vito (brewmaniac uit Taiwan), die is al tot de conclusie gekomen dat het beste de seriele poort van de USB gebruikt moet worden.

Het 12E bordje kan met 5 volt gevoed worden, wel oppassen dat alles eigenlijk 3,3 volt is. In ieder geval weet ik nog niet hoe de hardware het beste kan zo dat je heel simpel de bestaande bordjes kunt aansluiten.

Dat van die spoelwater ketel, dat kan toch met je bestaande printjes via de reserve poorten? 1 relais uitgang en 1 voor de sensor heb je nodig.

Chiel.

Biertje1985

Ik heb eens wat zitten bedenken een avondje, geheel vanaf scratch.

Hier zou je 3 sensoren onafhankelijk kunnen aansluiten, 2 pompen en 2 verwarmingsuitgangen.
Ook zit de ESP8266-12E erin verwerkt inclusief een 3.3v voltage regulator.
De ESP8266 zit serieel aangesloten.

Wellicht kan ik een bord ontwerpen naar jou wensen, het is ook mogelijk om dadelijk all-in bordjes te maken
daar ik wellicht binnenkort een goede reflow oven heb.

(Let niet op de schermaansluitingen, deze kloppen wel maar zijn voor een schermpje met onder en boven een connectie zoals die nu ook te krijgen zijn,
dit maakt het allemaal wat steviger)



mbroek

Citaat van: Biertje1985 op 04-07-2016  20:41 uIk heb eens wat zitten bedenken een avondje, geheel vanaf scratch.

Hier zou je 3 sensoren onafhankelijk kunnen aansluiten, 2 pompen en 2 verwarmingsuitgangen.
Ook zit de ESP8266-12E erin verwerkt inclusief een 3.3v voltage regulator.
De ESP8266 zit serieel aangesloten.

Wellicht kan ik een bord ontwerpen naar jou wensen, het is ook mogelijk om dadelijk all-in bordjes te maken
daar ik wellicht binnenkort een goede reflow oven heb.

(Let niet op de schermaansluitingen, deze kloppen wel maar zijn voor een schermpje met onder en boven een connectie zoals die nu ook te krijgen zijn,
dit maakt het allemaal wat steviger)


Dat ziet er fraai uit. Zo te zien is jouw 12E bordje anders dan die ik hier heb, die ik heb heet twee rijen aansluitingen (2 x 15) zoals de nano.


Er is voor de seriele koppeling een level converter nodig van 3,3 naar 5 volt. Het zou eventueel met weerstandjes kunnen. Op de site van Vito staat ook nuttige informatie. Het devkit bordje wat ik gebruik kan wel op 5 volt aangesloten worden omdat het een eigen regulator heeft. Ook USB zit er op. Maar verder is alles 3,3 volt. Voeden vanaf 5 volt maakt de zaak wel stabieler.

http://vito.tw/ voor meer ideeën.


Biertje1985

Oke, dat is gewoon een Node MCU 12-E ik dacht dat alleen die ESP8266-12E zelf erop moest, dan heb je geen USB ect.
Heb je dat nodig eigenlijk? en die output poortjes? want dan kan je met alleen de module af. Programmeren kan ook via de Arduino.
Verder zit ik nog niet echt in de materie van die ESP bordjes, dus ga ik uit van jou ervaringen.

Als je de Arduino over RX / TX serieel aansluit op de ESP heb je volgens sommigen geen logic/logic converter nodig, zolang je de voedingsspanning van de ESP maar op 3.3 volt houd.  met een regulator (net als die op het Node MCU bordje), maar hoe dat precies zit dat moet ik nog uitzoeken. Zie verschillen bordje en losse ESP:





Ook wil ik eigenlijk van die nano af, naar een chip op het bordje, het irritante hieraan is dat een nano veel goedkoper is dan losse componenten. Anders wou ik die 1280 erop etsen.
of de Atmega 328p die ook op de nano zit, als dat verder geen voordelen voor jou oplevert. Het bordje wil ik wel betaalbaar houden (lees goedkoop).

Maar goed, hardware is een beetje offtopic aangezien we hier eigenlijk alleen over de software praten, ik zal wel een draadje starten binnenkort voor de ontwikkeling van BREWBOARD MBSE (OF V3). (Excuses)

mbroek

Citaat van: Biertje1985 op 05-07-2016  23:20 uOke, dat is gewoon een Node MCU 12-E ik dacht dat alleen die ESP8266-12E zelf erop moest, dan heb je geen USB ect.
Heb je dat nodig eigenlijk? en die output poortjes? want dan kan je met alleen de module af. Programmeren kan ook via de Arduino.
Verder zit ik nog niet echt in de materie van die ESP bordjes, dus ga ik uit van jou ervaringen.

Als je de Arduino over RX / TX serieel aansluit op de ESP heb je volgens sommigen geen logic/logic converter nodig, zolang je de voedingsspanning van de ESP maar op 3.3 volt houd.  met een regulator (net als die op het Node MCU bordje), maar hoe dat precies zit dat moet ik nog uitzoeken. Zie verschillen bordje en losse ESP:





Ook wil ik eigenlijk van die nano af, naar een chip op het bordje, het irritante hieraan is dat een nano veel goedkoper is dan losse componenten. Anders wou ik die 1280 erop etsen.
of de Atmega 328p die ook op de nano zit, als dat verder geen voordelen voor jou oplevert. Het bordje wil ik wel betaalbaar houden (lees goedkoop).

Maar goed, hardware is een beetje offtopic aangezien we hier eigenlijk alleen over de software praten, ik zal wel een draadje starten binnenkort voor de ontwikkeling van BREWBOARD MBSE (OF V3). (Excuses)

Ik had die Node versie besteld omdat het ontwikkelen handiger is dan met de losse ESP. Had ook met geheugen te maken, de Node versie heeft 1 Meg programma geheugen en 3 Meg als filesysteem. Daar komen dan de web pagina's en javascript bestandjes. Heeft dat andere bordje ook zoveel geheugen? Resultaat van het compileren van Vito's WiFi code:

De schets gebruikt 407.356 bytes (39%)  programma-opslagruimte. Maximum is 1.044.464 bytes.
Globale variabelen gebruiken 48.100 bytes (58%) van het dynamisch geheugen. Resteren 33.820 bytes voor lokale variabelen. Maximum is 81.920 bytes.

Ik heb van Vito begrepen dat het level van de NANO naar de ESP in ieder geval gecorrigeerd moet worden, anders krijgt de ESP teveel spanning op de ingang. Andersom werkt het wel goed.


Doe maar een nieuw hardware topic, het maakt eigenlijk niet uit wat het is, als het maar goedkoop is, WiFi heeft en genoeg I/O. 1 enkele controller is het mooiste. Ik zie de huidige spullen toch meer als een speeltuin. En dan zul je zien als we bijna iets moois hebben er weer een mooier bordje op de markt komt. We zitten niet vast aan deze hardware en de huidige NANO borden werken goed.

mbroek

Vandaag getest met het aansturen van de Maisch en spoelwater ketel tegelijk. In het filmpje is de 1e LED het spoelwater, de 2e de pomp, en de 3e de maisch verwarming. Je ziet dat het spoelwater verwarmd wordt in de tijd dat de maisch ketel niet verwarmd wordt tot het spoelwater warm genoeg is. Voor spoelwater wordt geen PID gebruikt, gewoon vol aan/uit in de beschikbare tijd.

Tijdens het starten van de brouwsessie wordt eerst de maisch temperatuur voorverwarmd tot 10 ºC onder de eerste maischstap, zo werkt het al zonder spoelwater ketel. Als die temperatuur bereikt is wordt het spoelwater op temperatuur gebracht. Daarna gaan alles normaal verder naar inmaischen. Tijdens het maischen wordt af en toe het spoelwater verwarmd, dat heeft verder geen invloed op het brouwen. Na het maischen wordt het spoelwater uitgezet.

Een kort filmpje:

Biertje1985

Gaaf filmpje!

Tuurlijk zijn er mooiere oplossingen, maar soms hoeft het niet mooier, als het maar goed betrouwbaar is. Die WIFI feature is net even wat extra maar wat mij betreft hoeft het niet gekker.
Als je prijstechnisch kijkt naar dit systeem dan ben je natuurlijk goedkoop uit, en dat is ook lekker.

Het zou perfect zijn als dat bord zowel voor een 1 PAN/BIAB zou werken, en ook voor een HERMS, wifi als extra feature is ook leuk als optie.

Het moet ook voor iedereen simpel aan te sluiten zijn.

Ik bewaar de rest even voor een het brewboard draadje, want ik begin weer te opperen  :proost:

 (Ow en die losse ESP heeft net zoveel memory, alleen zit er geen bordje omheen)  :biersmile:

mbroek

Citaat van: Biertje1985 op 06-07-2016  22:15 uGaaf filmpje!

Tuurlijk zijn er mooiere oplossingen, maar soms hoeft het niet mooier, als het maar goed betrouwbaar is. Die WIFI feature is net even wat extra maar wat mij betreft hoeft het niet gekker.
Als je prijstechnisch kijkt naar dit systeem dan ben je natuurlijk goedkoop uit, en dat is ook lekker.

Het zou perfect zijn als dat bord zowel voor een 1 PAN/BIAB zou werken, en ook voor een HERMS, wifi als extra feature is ook leuk als optie.

Het moet ook voor iedereen simpel aan te sluiten zijn.

Ik bewaar de rest even voor een het brewboard draadje, want ik begin weer te opperen  :proost:

 (Ow en die losse ESP heeft net zoveel memory, alleen zit er geen bordje omheen)  :biersmile:

Toevallig net het stukje gefilmd dat het spoelwater op temperatuur kwam, dat kwam mooi uit zo.

HERMS is denk ik een stap te ver, in ieder geval wil je het goed doen is er meer besturing en sensoren nodig. Maar ik heb geen interesse in HERMS. Een beetje universeel 1/2 pans RIMS is mooi. Met minimale aanpassingen ook te gebruiken met 3 pannen en een roerwerk.

ESP zie ik nu ook als extra toeters en bellen, de Arduino doet tenslotte het vuile werk al. Mooi dat die losse ESP genoeg geheugen heeft, dat is mooi voor de "productie" versie. Zal ook wel een stuk goedkoper zijn. Die ik heb was iets meer dan 5 Euro, die losse ESP de helft ongeveer?


Biertje1985

Citaat van: mbroek op 06-07-2016  23:32 uToevallig net het stukje gefilmd dat het spoelwater op temperatuur kwam, dat kwam mooi uit zo.

HERMS is denk ik een stap te ver, in ieder geval wil je het goed doen is er meer besturing en sensoren nodig. Maar ik heb geen interesse in HERMS. Een beetje universeel 1/2 pans RIMS is mooi. Met minimale aanpassingen ook te gebruiken met 3 pannen en een roerwerk.

ESP zie ik nu ook als extra toeters en bellen, de Arduino doet tenslotte het vuile werk al. Mooi dat die losse ESP genoeg geheugen heeft, dat is mooi voor de "productie" versie. Zal ook wel een stuk goedkoper zijn. Die ik heb was iets meer dan 5 Euro, die losse ESP de helft ongeveer?

Ja precies het hoeft niet gekker te worden.

Ik ben nu  (een DIPA van 110IBU) aan het brouwen met de huidige versie, PID nog niet optimaal en nu P 35 I 0.001 D 50 bij factor 18.
Laatste 2 graden veel te traag maar overshoot van 0.1 is prima. ofwel nog ff wat meer pit in de regeling maken. Ik dacht dat het goed was maar
die laatste 2 graden duren echt bizar lang. Regeling is compleet anders dan ArdBir inderdaad, maar het bevalt echt perfect verder. Misshien kan je nog een
functie programmeren dat je de temp / tijd tijdens het AUTO programma nog bij kan stellen? zodat je aan de hand van de jodium test nog wijzigingen kan doen?
(of ben ik nu erg lastig).

Die PID debug, als je die via de wifi zou kunnen benaderen met de ESP, een CSV of een grafiek of zo. dan ben je echt in control van je parameters en kan je precisie tuning doen.

mbroek

Citaat van: Biertje1985 op 08-07-2016  23:04 uJa precies het hoeft niet gekker te worden.

Ik ben nu  (een DIPA van 110IBU) aan het brouwen met de huidige versie, PID nog niet optimaal en nu P 35 I 0.001 D 50 bij factor 18.
Laatste 2 graden veel te traag maar overshoot van 0.1 is prima. ofwel nog ff wat meer pit in de regeling maken. Ik dacht dat het goed was maar
die laatste 2 graden duren echt bizar lang. Regeling is compleet anders dan ArdBir inderdaad, maar het bevalt echt perfect verder. Misshien kan je nog een
functie programmeren dat je de temp / tijd tijdens het AUTO programma nog bij kan stellen? zodat je aan de hand van de jodium test nog wijzigingen kan doen?
(of ben ik nu erg lastig).

Die PID debug, als je die via de wifi zou kunnen benaderen met de ESP, een CSV of een grafiek of zo. dan ben je echt in control van je parameters en kan je precisie tuning doen.

Wat ik met de jodium test doe als het maischen nog niet ver genoeg is gewoon wachten. Het is niet ideaal, maar dat vind ik ook van de jodium proef. Wat mij opvalt is dat ik tijdens de jodium proef nog niet op het gewenste Brix zit voor het maischen. (Ik doe en heb nog nooit een zetmeel test gedaan). Na de allerlaatste maischstap zit ik wel op de gewenste Brix waarde. Ik denk voor mezelf die test uit te zetten, voordat ik met een controller brouwde deed ik ook pas een meting na afloop van het maischen.
Aan de andere kant, ik RIMS nog niet, er zijn nog onderdelen onderweg en er ligt nog wat te wachten op het postagentschap. Daarna nog de tijd vinden om te bouwen.

Over PID tunen, eigenlijk werkt een bepaalde PID instelling alleen goed met een vaste brouw hoeveelheid en bij 1 temperatuur. De temperatuur van je overige maischstappen gaan dan minder ideaal zijn. Je merkt het ook wel, hoe hoger de temperatuur, hoe langer het duurt voor je er bent. Hoe lager de temperatuur, des te meer overshoot. De logfactor helpt bij hoge temperaturen zoals 78 graden.

Ik ga denk ik wat verzinnen om de PID agressiever te maken als de temperatuur hoger wordt, misschien door de logfactor afhankelijk te maken van de temperatuur.

Uitvoer van alle data via een ESP vind ik ook handig. Voorheen heb ik ook wel eens een hele brouwsessie gelogd met mijn vergisting controller. Het is best wel handig dat het kan.

Er missen inderdaad nog wat dingen om tijdens het brouwen tijden en andere settings te veranderen. Zoveel wensen en zoveel tijd tekort... In ieder geval is het porten van software tussen verschillende controllers zolang je de Arduino IDE kunt gebruiken geen probleem.

We zijn er nog lang niet, al kunnen we er al wel mee brouwen.


Biertje1985

Er kan zelfs supergoed mee gebrouwen worden! En ik kan niet zo best programmeren dus ik kan er zelf niet veel mee doen, vandaar mijn feedback. :groots:

mbroek

Zojuist zijn de bijgewerkte vertalingen van rajd verwerkt en zien een aantal menus er nu beter uit. Bedankt daarvoor.

Het versienummer is nu 0.1.1 geworden.


rajd

Citaat van: mbroek op 25-07-2016  21:49 uZojuist zijn de bijgewerkte vertalingen van rajd verwerkt en zien een aantal menus er nu beter uit. Bedankt daarvoor.

Het versienummer is nu 0.1.1 geworden.

Geen dank, ik doe graag wat terug (hoe klein dat dan ook mogen wezen) ;-). Ik ben, op mijn beurt, ontzettend blij met iedereen die tijd steekt in dit soort projecten...

mbroek

Versie 0.1.2 staat nu op github.

De waarschuwing voor USE_HLT is weggehaald. Dit werkt nu goed, je kunt met een 2e SSR en sensor spoelwater verwarmen op dezelfde lichtnetgroep.

Nieuw USE_PumpPWM. Dit is voor als je de pomp aansluit zonder relais, dus gestuurd met een vermogens transistor. Het schema hoe ik het zelf gebruik zit in de download.
Tijdens het maischen wordt gedurende de pomp rust periodes de pomp niet uitgezet, maar langzaam gezet. Tijdens het koelen kun je de pomp uit/langzaam/vol zetten. In alle andere gevallen als de pomp nodig is staat die op volle snelheid.

Ik ben er nog niet uit hoe dit bij het begin van het maischen het best werkt, meteen voluit pompen is niet altijd gewenst, dus zorg evengoed voor een manier om de flow te knijpen.

Ik weet niet of er mensen zijn die dit gaan gebruiken, maar als dat zo is hoor ik graag de ervaringen.

Dit werkt echt niet met relais! De PWM regeling van de Arduino schakelt 1000 keer per seconde.

Biertje1985

Klinkt goed allemaal, ik neem het ook mee voor het volgende bordje. Ik heb No overigens al aardig wat biertjes gebrouwen met jou software en het gaat prima. Ik mis alleen nog een functie om een stap over te slaan / te beëindigen in het auto proces. Ook zou het mooi zijn als je nog na de iodine rust verder zou kunnen maischen als je toch nog zetmeel hebt.
Dat van die hlt is brilliant. Evenals pomp pwm.


Zoeken met Google op deze site.
Brouwspullen zijn ook te koop via Bol.com.
Als je iets bestelt bij Bol.com (ook andere zaken dan brouwspullen) via deze link steun je het forum.


Het boek van de beheerder van deze site.