Pagina's

maandag 16 maart 2020

Koelkast


28-9-2020
Even een kleine update.
De koelkast vormde nogal stevige ijsplaten op de achterwand in de koelkast.
Meestal hebben koelkasten automatische ontdooiing. Maar eens gegoogled.
Het blijkt dat ontdooiing wordt ingeprogrammeerd als even niet koelen, en daarmee de koelkasttemperatuur iets te laten oplopen.
Nou, dat heb ik nu dus ook gedaan. Twee keer per dag laat ik de temperatuur oplopen naar 7 graden.
Daarmee ontdooit de koelkast. Het lekwater wordt opgevangen in een gootje achterin de koelkast. Dit lekwater loopt naar een bakje dat op de pomt is geplaatst, en daarmee in de omgeving verdampt.
Afwachten hoe dit verloopt.
_______________________________________________
16-3-2020

jaja, wie had gedacht dat ik bijna klaar zou zijn? De waarheid achterhaalt haar wel.
Want de koelkast doet het al een poosje niet meer. Na wat onderzoek en een nieuw onderdeeltje weet ik nu waar ik het moet zoeken.

De koelkast heeft een microprocessor gestuurde regeling.
Eén of andere temperatuurvoeler en een motor die met een speciale thyristor wordt geschakeld. Die thyristor kan rechtstreeks vanuit een microprocessor geschakeld worden. En nou net hierin kan ik voorzien. Juist ja, met een arduino.

De koelkast zelf is nog prima in orde; als ik de elektronica overbrug en de motor rechtstreeks aansluit, koelt'ie als de beste, alleen zonder af te schakelen bij bepaalde temperatuur.

Dus ga ik hiermee aan de gang.
Eerst de elektronica eruit en onderzoek doen of ik de thermostaat kan hergebruiken. Hierin kan ik twee varianten tegen komen:

  1. het is een ptc of ntc voeler. Dit houd in dat een elektrische grootheid, de weerstand, verandert naar gelang de temperatuur. Nou, met een arduino kan ik dat prima aan. Dit is dan een zg. passieve voeler.
  2. het is een micro-ic met serieële uitsturing. Daarmee kan ik ook uit de voeten met arduino, maar dan moet ik wel weten wat het protocol is. En die hoop ik dan te achterhalen als er een type aanduiding is aangebracht. Anders lukt het niet. Dit heet een actieve voeler.
Als geen van tweëen is te vinden, zal ik zelf een andere thermovoeler moeten aanschaffen. En daar zijn diverse uitvoeringsvormen in, en daar kan ik dan weer wat mee.
___________________________________________________
16-3-2020 / 2

Er bevinden zich twee voelrs in de koelkast. Elk 2-draads, dus waarschijnlijk gewoon passieve voelers.
Met een ohmmeter heb ik de weerstand van beide voelers gemeten. De weerstand van elke voeler ligt in de orde van grootte van 400 á 500 ꭥ. Ook als ik de meter omdraai, meet ik dezelfde weerstand. Dit is belangrijk om te weten, omdat er dan vrijwel zeker geen halfgeleider (diode oid) in zit. Dus vrijwel zeker passieve voelers.

Nu heb ik met arduino een schakelingetje gebouwd om de aard van de voelers te meten. Die lees ik uit op een display.
Ik schakel de koelkast in en lees in de tijd de voelers uit.

Eén van de voelers zakt snel in waarde, de andere blijft behoorlijk achter. Ik denk dat ze op twee verschillende plaatsen zitten, misschien een aan het begin van het koude circuit, en de ander in de koelkast. Daar omheen is wel iets te bedenken met arduino.

Ik heb ook op de print mijn metingen gedaan. Ik tref daar twee spanningen aan, 9V en 4,8V.

Ik heb ook de thyristor onderzocht op datasheet. Deze triggert normaal op maximaal 5V, minimaal op 1,5V.
Nou zegt de datasheet dat ik moet triggeren tov. aansluiting T2. Dat vind ik heel vreemd, op de print doet hij dat tov. T1. Of ik intrepeteer de sheet verkeerd. Ik houd voor de zekerheid de printplaat maar aan.

Ik gebruik overigens de printplaat voor plaatsing van mijn arduino. Misschien gebruik ik ook wel de LEDjes en drukknoppen om de arduino te bedienen en uit te lezen. De originele printplaat wordt dan behoorlijk gesloopt.
___________________________________________________
17-3-2020

Goede resultaten vandaag geboekt.




Middels een opto coupler kan ik de thyristor open sturen, op de eigen 4,8 volt van de originele printplaat.
Het regelsircuit zat rechtstreekt aan het lichtnet. De benodigde voeding hadden ze simpel met een condensator en weerstand gemaakt, en hiermee werd alles van voedingsspanning voorzien. Maar kan ik niks mee, want ik wil de arduino later op de computer aan kunnen sluiten......
Daarvoor heb ik de printplaat onder handen genomen en alleen de noodzakelijke 5volt en de schakeling rondom de thyristor behouden. Er is nu een behoorlijke isolatie-buffer tussen dit deel en de rest van de printplaat, zodat ik veilig de LED's en de drukknoppen kan gebruiken op arduino.

Ik heb een adapter van nokia gesloopt voor de 5volt voor de arduino. (foto).
En een mini printplaatje voor de arduino. Als het goed is past straks alles in de balk van de bediening en elektronica.
___________________________________________________
20-3-2020

De vakantie is bijna voorbij, en de koelkast is nog niet operationeel. Niet dat het heeft tegengezeten, maar het is toch een puist werk!
Nu vind ik dat niet erg hoor, maar stiekem vind ik het wel jammer.

Maar dan héb ik ook wat. Want omdat ik de regeling zelf in handen heb, kan ik het maken hoe ik wil.

Zo heb ik 5 LEDjes, één voor 2ºC, voor 4, 5, 6 en 8ºC.
Nu kan ik die aan zetten, laten knipperen of uit zetten. Hiermee kan ik laten zien op welke temperatuur hij is ingesteld (was al origineel), maar ook in welk temperatuurgebied de koelkast zich bevindt. Dit alleen als informatie voor ons. Dit treedt op bijvoorbeeld bij erg veel nieuwe spullen plaatsen in de koelkast.

Schuifregister. 1.
Op de originele print is voor de aansturing van de LED's een schuifregister gebruikt. Het voordeel hiervan is dat je met 3 draden acht dingen aan kunt sturen. Zelfs de drukknoppen zou ik hiermee kunnen scannen, maar dat heb dan weer niet gedaan. Ik gebruik overigens toch maar één van de twee drukknoppen. De knop "super" voor het extra hard koelen bij bijvoorbeeld veel voedsel in één keer opbergen. Ik vroeg me al af wat het nut van die stand is. Ja, dan slaat de motor niet meer af. Heb ik zo mijn bedenkingen bij.
Dit schuifregister ga ik dus hergebruiken. Een kleine zelfstudie hiervoor was wel nodig, maar dan ken je internet nog niet.

Schuifregister. 2.
Voor als je geintreseerd bent over details.

Schuifregister / Werking.

Dit schuifregister heeft 8 uitgangen, waarmee de 6 leds worden aangestuurd. (ja, geen 5; één gebruik ik niet).

Als ingangen is er een reset. Spreekt voor zich, dit zet alles op nul.

Verder een data ingang. Hier zet ik het signaal op dat ik wil doorschuiven. (vandaar de naam).

Als laatste een clock-signaal. Hiermee zet ik het datasignaar in werking en schuif dit steeds een plaats op. En die plaatsen zijn de 8 uitgangen.
Dus als ik LED 3 wil laten branden, moet ik 1 keer data invoeren en 3 clockpulsen geven. En zo zijn er meerdere mogelijkheden.

Elke LED zit dus op een uitgang. De LED's komen aan de andere kant bij elkaar via een weerstand op de voeding.

Schuifregister / uitwerking knipperen.

Nu kan ik de gemeenschappelijke aansluiting van de LED's op de voeding zetten, maar dan zijn ze alleen maar aan.
Ik kan die gemeenschappelijke aansluiting ook op een uitgang van arduino zetten, en die laten knipperen, maar dan knippert ook álle led's die aan staan.
Een gecombineerd aan en knipperen van verschillende LED's heb ik toch voor elkaar gekregen.

Nu is het instellen van dit register een kwestie van microseconden, dus dat zie je niet gebeuren, je ziet alleen het resultaat.

Schuifregister / masker.

Nu heb ik 2 maskers gemaakt die elke 700 msec wisselt (de gekozen knipperfrequentie van de LED's).
Via dat masker kies ik welke LED ik wil laten branden. Als ik een LED aan wil hebben, staat die LED in beide maskers op aan. Wil ik een LED laten knipperen, dan staat die LED in één masker níet aan. Het maakt ook nog uit in welk masker, maar zo kan ik 2 LED's gelijktijdig laten knipperen, maar ook wisselknipperen.
zelf bedacht...😉

Temperatuurtabel.
Met het proefprintplaatje heb ik de koelkast uitgetest en langzaan de temperatuur laten verlopen. De uitgelezen waarden van de voelers heb ik in een tabelletje opgeschreven. Hieruit heb ik een temperatuurtabel samengesteld.
Nu heb ik met elke voeler, dat een NTC temperatuurbereik heeft, een spanningsdeler gevormd. Die lees ik uit met een analoog ingang op de arduino. Daar komt dan een digitale waarde uit van 0 to 1023.
Ik heb in de test gekozen voor een weerstand van 10kꭥ om de spanningsdeler met de voeler mee te vormen. Dit voor beide voelers, hoewel ze een verschillend verloop en waarde hebben.
Ik heb de originele print nog eens goed bekeken, toen ik met de aansluiting van de voelers op de printplaat bezig was. Op die print bevinden zich 2 weerstanden en 2 condensatoren om die spanningsdeling te vormen. Alleen zijn die weerstanden 12kꭥ en 23kꭥ, waar ik 2x 10kꭥ heb gebruikt. Nu is dat niet zo erg, maar ik moet dan wel de temperatuurtabel opnieuw samenstellen. Kost een dag extra. Ik heb anders toch niks te doen, en het is een mooie praktische uitvoering van mijn hobby.😁

En dan nu alles inbouwen......
___________________________________________________
22-3-2020

Nou, dat inbouwen viel niet tegen.
Als koelkastmotor gebruik ik tijdelijk een lamp, als voelers een paar potmeters. En het doet allemaal wat het moet doen.
De LEDjes reageren zoals bedacht. Als extra heb ik het 6e LED, dat van de super-stand, gebruikt om aan te geven dat de motor draad, want dat hoor je niet. Het heeft me wel een paar uur gekost om dat LEDje actief te krijgen, maar uiteindelijk lukte het me. Ik begreep maar niet dat het niet ging. en... ja hoor twee accolades () vergeten.... pfff..... En toen ging het ineens wél.

Volgende stap is het gebruik van de drukknop, want daar heb ik nog niets aan gedaan. Met de drukknop selecteer ik de temperatuurinstelling, dus 2, 4, 5, 6 of 8ºC. Maar dat zal niet veel tijd in beslag nemen.

Daarna wederom de koelkast inschakelen en op een lijst bijhouden wat de voelerwaarden zijn bij bepaalde temperaturen. Want dat vormt de basis voor de temperatuur.

Nu dacht ik even snel een programmaatje in elkaar te flanzen om een temperatuurtabel te creeeren. Maar.... ik heb de weerstanden nodig die op de printplaat zitten. Want dán is mijn tabel betrouwbaar.
Helaas, toch deze proef uitstellen, totdat alles klaar is (drukknop).
___________________________________________________
26-3-2020
Het programmeren van de drukknop had wederom wat stagnatie.... een programmeerfoutje, vergeten ergens een punt-komma ; vergeten. En daarna werkte het goed.

Met een thermometer in de koelkast en een lijst heb ik bijgehouden wat de uitleeswaarden van de voelers zijn ten opzichte van de kasttemperatuur. De lijst die hieruit komt vormt de basis van de temperatuurregeling van de koelkast.

De drukknop was heel erg gevoelig voor storingen; de temperatuurinstelling verzette zichzelf steeds.
Hier heb ik programmatisch iets aan veranderd, en nu werkt het goed.


Het arduino ontwikkerlprogramma IDE heeft ook een monitor. Dwz. je kunt de resultaten van het programma dat je hebt geschreven, op het beeldscherm tonen. In het programma zelf geef je aan wat je precies wilt laten zien.
Als ik deze resultaten in excel zet, kan ik er makkelijk grafieken uit halen.
Het programma heb ik afgelopen etmaal laten draaien, waarin ik elke 1/2 minuur een resultaat laat zien. Hier is een prachtige grafiek uit gekomen.
De pomp is 3 x op storing gevallen door te snel schakelen van de pomp. Een koelkastpomp kan daar nou eenmaal niet goed tegen in verband met de gassen en de vloeistoffen van het koelmiddel. Eerst moet de hoge druk van de pomp af zijn voordat weer wordt ingeschakeld.

Nu had ik al rekening gehouden met een hysterese van + en - 3 waarden(1) van de voelers, maar was deze vergeten mee te nemen in het programma. Nu ik dit wel heb gedaan zal het schakelgedrag veel rustiger zijn.
(1) per graad celcius heeft ongeveer 13 waarden.

Uitleg grafiek.
Dit deel is samengesteld uit 2 grafieken voor de duidelijkheid. Hierdoor komt het schakelgedrag van de pomp 2x voor. Dat zijn de groene en de rode hoekige lijnen. Hoog is pomp aan, laag is pomp uit.
De blauwe lijn bovenin is de ingestelde waarde, en komt overeen met 4ºC.
De rode kronkellijn daar doorheen is de werkelijke temperatuur in de koelkast.
De blauwe lijn onderin is een maat voor de temperatuur aan het begin van het koelsysteem. Hierin zie je duidelijk het resultaat van de pomp zelf.
De getalletjes halverwege zijn het aantal halve minuutjes vanaf het begin.
Ook zie je duidelijk dat de pomp snel achter elkaar schakelt.

Nieuwe grafiek.
Het resultaat van de iets gewijzigde opzet met een ietwat grotere differentie.
In een paar uur tijd is de pomp 2x aan geweest. Een iets te grote differentie? Ik wil hiermee wat experimenteren.

Want een te kleine differentie leidt weer tot onstabiel gedrag.

Maar ik zie ook nog heel iets anders in deze grafiek: de blauwe lijn onderin, het koelcircuit, dus dat wat de pomp presteert.
Je ziet dat het koelcircuit heel veel koeling heeft ingezet. Dit resulteert in het doorkoelen van de koelkast nadat de pomp is uitgezet. Dit zie je dus duidelijk terug in de rode lijn; die loopt erg ver door naar onderen.
Nu wil ik voor het schakelen van de pomp ook daarnaar kijken.
Het schakelen van de pomp zou er bijvoorbeeld zo uit kunnen zien:

  1. inschakelen pomp op de kasttemperatuur.
  2. uitschakelen pomp op de onderste curve, bijvoorbeeld op 250. En ook hierin een hysterese gebruiken om de pomp weer in te schakelen totdat de kast op temperatuur is.
Nu is dit gedrag duidelijk anders (is de verwachting) in de winter en in de zomer. Ook mogelijk met een volle of lege kast. Maar ook het plaatsen van "warme" spullen in de kast.
Dit zijn allemaal dingen die het schakelgedrag beinvloeden.
Het inschakelmoment zal altijd hetzelfde zijn.
Maar het uitschakelmoment zal veranderlijk zijn. Dit moment zal steeds aangepast moeten worden. Dus wordt de koelkast zelflerend, net zoals de meeste kamerthermostaten tegenwoordig.
___________________________________________________
27-3-2020
Het koelkastproject nadert zijn voltooiing.

In de grafiek zijn duidelijk diverse zaken te zien.

  1. de blauwe lijn met dicht daarboven en eronder geeft de temperatuur aan waartussen de temperatuur beweegt in de meest ideale situatie. Deze situatie probeer ik zo veel mogelijk te bewaken. Hier in de grafiek is de temperatuur 4ºC =/- 0,25ºC.
  2. De rode gerafelde lijn rond de blauwe lijk is de gemeten temperatuur. Deze kronkelt grotendeels netjes binnen de lijntjes.
  3. De paarse flink uitslaande curve is het koelmiddel. Hoe lager, hoe meer energie deze in staat is de temperatuur omlaag te brengen.
  4. Je ziet dan ook dat de curve flink omlaag gehaald wordt door de compressor (zie onderin de lichtblauwe curve).
  5. Je ziet diverse digen heel duidelijk:
    1. bij 41 schakelt de compressor in, omdat de temperatuur né iets boven de groene lijn uit komt.
    2. de compressor schakelt pas uit als de curve van het koelmiddel de oranje lijn raakt. De compressor schakelt dan uit (lichtblauwe curve).
    3. Het koelmiddel loopt toch nog iets door, om vervolgend weer op te lopen, dus minder actief wordt.
    4. de koelmiddel-curve komt bovenin de bleekblauwe lijn tegen, waardoor alles wordt gereset. (programma dingetje).
    5. Bij 131 zie je het hele proces weer opnieuw beginnen.
  6. Nu kan er ook nog een actie zijn die hier nog niet te zien is, namelijk het verschuiven van het uitschakelpunt, de oranje lijn. Ik hoop deze nog zichtbaar te kunnen maken.
___________________________________________________
28-3-2020












Hier zie je het resultaat van de prograamma-inspanningen.
Heel duidelijk is het effect te zien van de verschuivende uitschakellijn, de trapsgewijze vaalblauwe lijn in de grafiek. Elke keer dat het koelmiddel (groene lijn) de uitschakellijn snijdt, schakelt de compressor uit.
Het resultaat is een veel soepeler verloop van de temperatuur (rode rafelige lijn). Maar..... nu komt de uitschakellijn wel héél dicht bij de waarnemingslijn (oranje). Zodra de uitschakellijn boven de oranje lijn terechtkomt, gaat het programma op tilt; werkt gewoon niet meer. Dus ik moet ook de oranje lijn omhoog mee laten bewegen.

Waarom dan niet de uitschakellijn altijd wat hoger zetten, zal je je af kunnen vragen.
Deze situatie is rondom de nacht genomen, wat een grote stabiele situatie is.
Maar als de situatie verandert, warmere dagen, koelkastdeur open, nieuwe produkten in de koelkast plaatse, volle koelkast, ja, dán heb je alleen maar plezier van de meebewegende uitschakellijn. Want hoe lager de lijn, hoe lager de temperaturr van het koelmiddel.
___________________________________________________
31-3-2020
Ik heb de monitor nu een aantal dagen op de koelkast gehad.
De grafiek die hieruit ontstaat is zeer bevredigend; de koelkast blijft binnen de grenzen ongeveer 0,25 graden naast zijn instelling. Dit ondanks deur open, vers voedsel plaatsen, ed.

Hiermee sluit ik het project "koelkast" af.
___________________________________________________
___________________________________________________

2 opmerkingen: