Introduction: Erhvervsakademiet Lillebælt EAL - Sous Vide Ala Arduino

Jeg vil i denne Instructable gennemgå, hvordan jeg har konstrueret en "sous vide" ved hjælp af en Arduino micro controller og diverse tilbehør. Helt kort er sous vide en metode til madlavning, som direkte oversat fra fransk betyder "under vakuum". Man pakker altså sine råvarer med en vakuumpakker, og tilbereder dem i et vandbad med en nøjagtig temperatur. F.eks. kan man tilberede en oksefilet ved 55 grader i 7 timer. Dette giver et stykke perfekt tilberedt kød fra yderst til inderst. Ydermere giver det mulighed for at tilberede mindre møre udskæringer, og skrue op for tiden i vandbadet, for at mørne kødet. Til sidst skal kødet brunes af på en glohed pande, eller over en grill med fuld drøn på.

Step 1: Vandbadet Bygges (husk at Folde Alle Billeder Ud)

Sous viden konstrueres i to dele. Den ene del som "styreboks" med Arduino, relæer osv. og den anden del som "karet" med et fastmonteret varmelegeme. Varmelegemet skaffede jeg fra en gammel vaskemaskine hos den lokale leverandør af hårde hvidevarer. Det er på 2 kW og jeg havde nok foretrukket et med en lidt mindre effekt. Men indtil videre fungerer det fint, og med den rette programmering ligger temperaturen også stabilt (cirka indenfor 0,5 grader). Med en varm hobbykniv, en plastikplade og noget 2-komponent epoxy blev varmelegemet installeret 100% vandtæt. Senere hen har jeg skåret en bundplade med huller i 6 mm akryl til beskyttelse mod varmelegemet, samt en lille boks til at sætte over tilslutningen på varmelegemet, så det ikke får vand, eller kan give stød. Tegningerne kan findes herunder som pdf.

Effekt overslagsberegning:

Et 2 kW varmelegeme omsætter 2000 joule/sekund.
Vands varmefylde er 4180 J/ Kg*´C dvs. der skal tilføres 4180 Joule for at opvarme én liter vand én grad

Så hvor længe skal varmelegemet i teorien være tændt for at opvarme 10 liter vand en halv grad celcius?

Energimængde til opvarmning: (10 kg * 4180 J/Kg*´C) * 0,5 grader = 20900 Joule
Tid varmelegemet i teorien skal være tændt: 20900 J / 2000 J/s = 10,45 sekunder

De 10,45 sekunder holder ikke helt i virkeligheden da varmelegemet jo ikke yder 100% fra første sekund det er tændt. Men det er en god pointer ift. den kommende programmering!

Step 2: Tester Komponenter

Jeg testede mine komponenter individuelt og sikrede mig både hard- og software fungerede korrekt. Til sidst flettede jeg alle programstumperne sammen i det endelige program. Især displayet voldte nogle problemer og begyndte nogle gange at skrive en masse mystiske tegn. Efter jeg dedikerede en 0/neutralforbindelse udelukkende til displayet, og den dermed ikke delte 0 med nogle andre komponenter, har problemet ikke været der. Så jeg vil kraftigt anbefale at et display har sin egen 0-forbindelse

Komponenter brugt er som følger her:

1 Arduino Mega
1 16/2 display
3 trykknapper
2 Grønne LED dioder
1 Multifarvet RGB LED diode
1 Breadboard
1 12V strømforsyning
2 5V relæer (1 NO til at styre og 1 NC som sikkerhed)
1 vandtæt DS18B20 temperatur probe
1 flamingokasse
1 varmelegeme
4 meter 1 mm kvadrat 3 leder kabel
1 hun stikprop m. jord
2 han stikprop m. jord
1 laserskåret custom akrylkasse
Diverse ledninger, modstande, muffer mm.

Step 3: Diagram

Til at holde styr på alle forbindelserne har jeg lavet et diagram i gratisprogrammet Frtizing. Det ser lidt voldsomt ud, men det er muligt at se alle forbindelserne, hvilket er formålet.

Step 4: Bygger Hardware

Selve programmeringen/koden har jeg arbejdet på løbende. Det vil jeg gå i dybden med til sidst i denne Instructable.
Da jeg var sikker på tingene fungerede, begyndte jeg at samle det i "styrekassen". Den er delvist designet med http://boxdesigner.connectionlab.org/ Dernæst har jeg færdigpudset den i Adobe Illustrator (pdf-filer vedlagt) og skåret den i 3 mm akryl på en lasercutter, for til sidst at samle den med nogle dråber sekundlim

LED dioderne angiver om der er et program i gang, om varmelegemet er aktiveret samt vandets temperatur. Den længst til højre er driftslampen der lyser grønt når der er et opvarmningsprogram i gang. Den midterste lyser grønt samtidig med varmelegemet er tændt. LED'en yderst til venstre skifter farve med vandtemperaturen. Den lyser blåt når vandet er koldere end setpunktet. Grønt når vandet er mellem setpunkt og setpunkt + 0,8 grader. Og rødt hvis temperaturen kommer over setpunkt + 0,8 grader, hvilket helst ikke skulle ske.

Det er et relæ der styrer varmelegemet. Når temperaturen falder til lige under setpunktet tænder den varmelegemet i seks sekunder. Venter i 15 sekunder og læser den nye temperatur. Relæet er normally open og slutter altså når varmelegemet skal køre. Derudover har jeg monteret et normally closed relæ jeg bruger som sikkerhed, HVIS det primære billige relæ skulle svejse, eller på anden måde fejle. Hvis temperaturen i karet kommer under 5 grader eller over 86 er det tegn på en fejl, og sikkerhedsrelæet kobler ind og bryder forbindelsen. Hvis den først går i sikkerhedsmode, vil den forblive i dette, og ikke tænde igen!

______________________________

Tilføjelse

Det billige primære relæ fungerer stadig fint. Jeg stoler dog ikke helt på det, så jeg har bestilt et SSR relæ med en optokobler, som jeg går og venter på skal komme med posten
https://arduinotech.dk/shop/solid-state-relae-25a/

Step 5: Endelige Tests

Så kunne jeg endelig komme til det sjove og få smidt noget kød i baljen. Man kan sådan set tilberede alt, men jeg synes det er sjovest med KØD. Tests blev foretaget med computeren koblet på. Men det er selvfølgelig ikke nødvendigt med computer tilkoblet, på den færdige sous vide
Første test var med en lille bøf der blev vakuumpakket og fik 57 grader i 3 timer. Efter en tur i vandbadet ser den ikke så appetitlig ud, men en glohed pande gjorde den godt. Bøffen var mør og lækker og perfekt rød til min smag hele vejen igennem.

Dernæst prøvede jeg med en såkaldt US ball tip steg. Den blev vakuumeret med lidt krydderier og fik 55 grader i 7 timer og dernæst end hurtig tur på en MEGET varm grill. Og den var også virkelig god. En oksefilet fra slagteren fik 54 grader i 6 timer og var ligeledes en god middag. Jeg har også eksperimenteret med lidt mindre møre udskæringer, som så får noget længere tilberedningstid. For eksempel 1,5 kg. oksecuvette der fik 10 timer ved 57 grader. Tyk torskefilet ved 50 grader i en halv time har også været rigtig godt.

Forbedringer:

Jeg vil overveje at lave en enkelt udvidelse senere hen. Det viser sig at hvis varmelegemet ikke er tændt i et stykke tid og vandet står stille, kan der være et par graders forskel mellem top og bund i baljen. Så for at få en helt præcis temperatur vil jeg måske montere en lille DC motor med en propel, som så kan røre rundt i baljen i nogle intervaller, for at blande vandet. Men indtil videre er mine resultater dog alligevel gode. Med det flytbare termometer er det jo også muligt at lægge det meget tæt på emnet der tilberedes.

Step 6: Programkode!

Se video af hvordan sous viden virker her, eller på:

Link til Youtube med demonstration

FOR UDDYBENDE KOMMENTARER TIL PROGRAMMERINGEN KAN MAN ÅBNE KODEN MED PROGRAMMET "ARDUINO IDE" OG LÆSE KOMMENTARER UDE TIL HØJRE

Programmeringen er vedhæftet her, og for at åbne det kan man gratis downloade Arduino programmet på:
https://www.arduino.cc/en/Main/Software

Programmet er bygget op i tre hovedafsnit. Første afsnit hvor man kan indstille sin ønskede temperatur. Andet afsnit hvor man kan indtaste en forsinket start hvis det ønskes, og tredje afsnit hvor opvarmningen foregår. I opvarmningsafsnittet, er der også flere underafsnit, afhængig af hvor tæt den aktuelle temperatur er på setpunktet.

Man skifter mellem afsnittene med et tryk på driftknappen som så skifter mellem afsnit 1, 2 og 3

Arduinoen starter automatisk op i afsnit 1. Den skriver velkommen og indstil temperatur. Den indstillelige temperatur starter på 40 grader for at minimere tryk da man oftest vil arbejde med temperaturer over 40 grader. I denne fase bliver den aktuelle temperatur kun hentet hvert 10. sekund. Det sløver programmet lidt at hente temperatur, og derfor kan temperaturindstillingen hakke lidt, hvis man konstant henter temperaturen

Når man har trykket sig frem til sin ønskede temperatur trykker man drift, og programmet hopper i afsnit 2. Her kan man indstille mellem 0-24 timer og 0-60 minutter forsinket start. Det er ret smart hvis man skal tilberede en steg i 7 timer som skal være færdig kl 18. Så skal opvarmningen startes op kl 11.00 hvor de fleste er på arbejde. Hvis ikke man taster nogle værdier ind, starter opvarmningen med det samme.

Ved igen at trykke drift hopper programmet i fase 3 hvor opvarmningen sker. Driftslampen tænder. Varmelegemet med tilhørende LED tænder og den blå diode tænder for at angive at vandtemperaturen er under setpunktet.

  • Når temperatur er under setpunkt minus 2 grader kører varmelegemet non-stop (opvarmningstrin -3, blå vandLED)
  • Når temperatur er under setpunkt minus 0,4 grader men over setpunkt - 2 grader kører varmelegemet i 10 sekunder. Slukker i 5 sekunder og læser den nye temperatur (opvarmningstrin -2, blå vandLED)
  • Når temperatur er under setpunkt men over setpunkt minus 0,4 grader kører varmelegemet i 6 sekunder. Slukker i 15 sekunder og læser den nye temperatur (opvarmningstrin -1, blå vandLED)
  • Når temperatur er over setpunkt men under setpunkt + 0,8 grader er vi i det interval jeg synes er rimeligt og præcist nok og varmelegemet er selvfølgelig slukket (opvarmningstrin ok!, grøn vandLED)
  • Hvis temperatur er over setpunkt + 0,8 grader er vi ud over det tilladelige hvilket helst ikke skal ske. Varmelegemet er selvfølgelig slukket (opvarmningstrin +1, rød vandLED)

Slutteligt har jeg lavet et sikkerhedsrelæ. Relæet fjerner forsyning og sender programmet i et fejl "while" loop hvor det vil blive fastholdt! Sikkerheden styres af et normally closed relæ, som er indstillet til at afbryde forsyningen, hvis temperaturen kommer over 86 grader celcius eller under 5 grader celcius. Det er en god sikkerhedsfunktion HVIS man skulle være så uheldig at det primære relæ svejser fast, og sætter konstant spænding på varmelegemet.

Step 7: EL-forbrug

Jeg lavede en test af strømforbrug i forbindelse med en cuvettesteg der fik 10 timer ved 57 grader i 11 liter vand. Det koster selvfølgelig lidt energi at opvarme 11 liter vand, men når først setpunktet er nået, er det begrænset hvor meget yderligere strøm der bliver brugt. Over de 10 timer var der brugt 0,8 kWh så det synes jeg ikke er så galt for at tilberede 1,5 kg. steg. Man skal jo også huske at fratrække den times tid, den ville skulle have haft i en almindelig ovn

Det relativt lille EL-forbrug skyldes den ekstremt velisolerende flamingokasse. Jeg overvejer lidt at bygge endnu en kasse i mindre størrelse, da den jo er nem at koble sammen med kontrolboksen. Så kunne man bruge den lille kasse til små stykker fisk og bøffer og den store til større stykker kød, og på den måde være lidt energibesparende.

Det har været fantastisk sjovt, og til tider frustrerende, at lave dette projekt, men er meget tilfreds med det endelige resultat. Alt hvad der ligger i denne Instructable er selvfølgelig til fri afbenyttelse, og jeg svarer gerne på spørgsmål