ID.nl logo
Hoe weet je dat je kerstboom dorst heeft? Laat 'm een appje sturen!
© ER - ID.nl
Huis

Hoe weet je dat je kerstboom dorst heeft? Laat 'm een appje sturen!

Sommigen zetten hun kerstboom al in november neer, en als het dan eenmaal kerst is, begint hij te verdrogen. Een standaard die ook als waterbak dient, kan dat voorkomen. Desondanks blijkt al snel dat kerstbomen binnenshuis opvallend dorstig zijn. En wie checkt het water nog als de boel onder een knus sneeuwkleedje ligt? Vandaar dit doe-het-zelf-idee voor knutselaars die een frisse groene kerstboom willen!

🎄 In dit artikel leggen we je uit hoe je zelf een kerstboomalarm kunt knutselen. Een heerlijke kerstvakantie-uitdaging voor de gevorderde knutselaar. Het resultaat? Je krijgt een appje wanneer je boom water nodig heeft!

🎄 Boodschappenlijstje (bijvoorbeeld bij Conrad.nl)🎄 Overige benodigdheden
NodeMCU-module (€ 9,-)Soldeerbout
2x Trekontlasting M10, 2 stuks (€ 2,-)Soldeertin
Printplaatje 80 × 50 mm (€ 3,30)Zijkniptang
Kunststof behuizing 85 × 56 × 39 mm (€ 4,25)Schroevendraaier
Schroefterminal 4-polig (€ 0,40)Boormachine
Netadapter 5 V, 1 A (€ 6,-)Vijl
Rode led (€ 0,10)Secondelijm
Groene led (€ 0,10)Eén-aderig snoer (30 cm)
Weerstand 100 ohm, 2 stuks (€ 0,10)Twee-aderig snoer (1 meter)
Weerstand 10 kilo-ohm (€ 0,05)multimeter (optioneel)
Optioneel, bijvoorbeeld bij AliExpress of eBay:
Watersensor (‘soil moisture sensor’) zonder elektronica (€ 0,50). Als alternatief kun je ook de gestripte uiteinden van het twee-aderige snoer gebruiken, die je een beetje uit elkaar buigt.
Totale kosten: ca. € 25,–

Hardware en software

Dit project kenmerkt zich door zijn eenvoud in hardware en behuizing. Je hebt een netadapter, een compacte behuizing met trekontlasting, een NodeMCU-module, twee leds, drie weerstanden en een printplaatje nodig om alles aan elkaar te solderen. Ideaal voor beginnende soldeerliefhebbers.

De groene led signaleert voldoende water, terwijl de rode oplicht bij een te laag niveau, zoals ingesteld in de code. De schakeling werkt op een simpele 5 volt-netadapter met minimaal 1 ampère. Een usb-adapter is ook mogelijk; vergeet dan niet een geschikte usb-kabel. Alles past in een compacte kunststof behuizing, die je natuurlijk ook zelf kunt maken of hergebruiken. Trekontlastingen beschermen de voedings- en sondekabels tegen losraken bij onbedoelde kracht.

In de rest van deze handleiding worden 'NodeMCU' en 'ESP-module' afwisselend gebruikt. NodeMCU is een populair ontwikkelbordje met een ESP-chip erop, en tegenwoordig zijn er diverse NodeMCU/ESP-modules beschikbaar.

Een compacte en eenvoudige behuizing van kunststof volstaat voor dit project. De eerste trekontlasting is al gemonteerd en de gaten voor beide leds zijn al geboord.

Ontwikkelomgeving installeren

De ESP-module is het gemakkelijkst te programmeren met de Arduino-ontwikkelomgeving (Arduino IDE). Deze kun je downloaden via www.tiny.cc/arduinosoft. Kies bij voorkeur de traditionele installer en niet de Windows-app. Dat maakt het beheren van bibliotheken en ontwikkelbordjes een stuk eenvoudiger.

Omdat Arduino IDE niet primair voor deze module is bedoeld, zul je nog wat extra onderdelen moeten installeren. Klik daarvoor op Bestand / Voorkeuren en voer op het tabblad Instellingen bij Additionele Board Beheer URLs deze url in:

https://arduino.esp8266.com/stable/package_esp8266com_index.json

Kies nu Hulpmiddelen / Board: / Board Beheer… en typ esp8266. Klik op Installeren en selecteer vervolgens de module via Hulpmiddelen / Board / NodeMCU 1.0 (ESP-12E Module). Sluit de ESP-module aan via een usb-kabel en selecteer in Arduino IDE de juiste poort (Hulpmiddelen / Poort, kies de com-poort met het hoogste nummer). Als alles goed is gegaan, is je opstelling nu klaar om met programmeren te beginnen.

Herkent je systeem het ontwikkelbordje niet, dan download je via www.tiny.cc/espdriver een stuurprogramma voor de seriële interface (let op: deze link gaat gelijk het bestand CP210x_Universal_Windows_Driver.zip downloaden).

Installeer de nieuwste versie van de ESP-module.

Aanpassen code

Het kant-en-klare programma hebben wij al voor je klaargezet; je kunt het hier downloaden. Sla het bestand Kerstboom_app.zip en pak het uit naar een willekeurige map. Open het bestand Kerstboom_app.ino (door op het bestand te dubbelklikken, opent het automatisch in Arduino IDE, zie ook kader ‘Ontwikkelomgeving installeren’).

Vul bij ssid en password respectievelijk de naam en het wachtwoord van je draadloze netwerk in.

Het versturen van appjes wordt verzorgd door de dienst CallMeBot. CallMeBot biedt overigens ook de mogelijkheid om berichten te versturen via Signal en Telegram, dit artikel gaat uit van WhatsApp. De benodigde API-sleutel vraag je aan door het nummer +34 644 975 414 aan je contacten toe te voegen en in WhatsApp het bericht I allow callmebot to send me messages te sturen naar je nieuwe contact. Binnen enkele minuten ontvang je de benodigde API-sleutel, die je samen met je telefoonnummer (let op de internationale notatie) invult als constanten in de code bij respectievelijk apikey en telefoon.

Voer je gegevens in bovenaan de code.

Toelichting code

De code begint met het insluiten van de bibliotheek ESP8266WiFi.h. Deze handelt de verbinding met het draadloze netwerk af: dankzij dit programma is de module met enkele regels code met het netwerk te verbinden. Daaronder declareer je enkele constanten en variabelen, waarvan de belangrijkste in bovenstaande alinea’s al zijn besproken. In setup() worden de pinnen gedefinieerd, de leds uitgezet en de seriële monitor geactiveerd.

Verwerken van de gegevens

De functie loop() draait continu en vormt het hart van het programma. Om te beginnen wordt de wifi-module uitgeschakeld, omdat die erg stoort op de analoge ingang. Dan wordt pin D1 op HIGH gezet, en de waarde op de analoge pin bepaald en bewaard in de variabele meting. Zodra dat klaar is, gaat D1 weer op LOW. Door dit te doen, loopt er slechts zeer kortstondig stroom door het water. Dat is belangrijk om de watersensor te ontzien: bij een constante stroom zou de anode (de kant waarop de +5 volt staat) snel corroderen.

De code werkt met twee waarden, vastgelegd in de constanten ondergrens en veilige_waarde. De waarden van deze twee liggen iets uit elkaar, zodat kleine schommelingen in de meting geen invloed hebben bij het bepalen of het nat of droog is.

Is het resultaat van de meting kleiner dan of gelijk aan ondergrens, dan gaat of blijft de rode led aan en de groene uit. Als de booleaanse variabele alarmverzonden de waarde onwaar heeft, wordt ook de functie alarm() uitgevoerd.

Droogtealarm

De functie alarm() begint met het opzetten van de wifi-verbinding. Als dat is gelukt, wordt via de API-call een appje verstuurd met de melding, waarna de variabele alarmverzonden op waar wordt gezet. Dit voorkomt dat er bij elke volgende meetronde een app uitgaat. Pas wanneer de meetwaarde boven de veilige waarde uitkomt, wordt alarmverzonden weer op onwaar gezet en staat alles weer klaar voor een nieuw alarmronde. De rode led gaat of blijft dan uit en de groene aan. De variabele pulsdelay (de wachttijd tussen twee metingen) wordt nu vijf minuten in plaats van een seconde.

De kerstboom heeft uren nodig om het water te verbruiken en niet te vaak meten beperkt de eerdergenoemde corrosie. Bij geconstateerde droogte wordt de wachttijd weer een seconde. Doordat er in die situatie geen water tussen de elektroden aanwezig is, speelt corrosie dan nauwelijks een rol. Als je de kerstboom water geeft, weet je ook zonder het waterniveau te zien wanneer je kunt stoppen.

De watersensor corrodeert niet, door slechts af en toe kort te meten.

Software uploaden en testen

Als het bestand kerstboom_app.ino naar wens is aangepast in de Arduino-ontwikkelomgeving en de NodeMCU-module is aangesloten op zowel je pc als op de watersensor, kan het uploaden beginnen. Open de seriële monitor met Ctrl+Shift+M en upload het programma met Ctrl+U.

Nadat het uploaden is voltooid, volgt de meetwaarde en de melding Droogtealarm!. De module maakt nu verbinding met het draadloze netwerk en voert de API-call uit. Het antwoord van de server verschijnt en als het goed is, ontvang je binnen enkele seconden een appje met de tekst Kerstboom heeft dorst!. De rode led brandt en de melding Droogtealarm! herhaalt zich vervolgens elke seconde.

Door de sensor (of de gestripte uiteinden van het twee-aderige snoer) tegen een natte doek te houden of gedeeltelijk onder te dompelen in een kopje water, zie je de meetwaarde oplopen, de rode led doven en de groene aan gaan. De melding Voldoende water staat nu in de seriële monitor en het programma wacht nu vijf minuten tot de volgende meting. Eventueel kun je de hoogte van ondergrens en veilige_waarde nog aanpassen in de code. Tot nu toe alles in orde? Mooi.

Voorbereiding

Boor om te beginnen drie gaten in de behuizing: twee van 5 millimeter voor de leds en twee van 10 millimeter voor de trekontlasting. Als je kleinere gaten boort, kun je die later met een vijl op maat maken. Bevestig vervolgens de trekontlastingen en check of de leds erin passen. Gebruik secondelijm om de leds stevig in de behuizing te lijmen. Soldeer nu ook de snoertjes aan de leds en de watersensor, zodat je deze later eenvoudig aan de printplaat kunt koppelen.

De behuizing met trekontlasting en met de leds erin vastgelijmd.

Bouwen van de schakeling

Zoals al opgemerkt, is de hardware van dit project beperkt. De NodeMCU-module, de drie weerstanden en de schroefterminal komen op het printplaatje. Boor om te beginnen gaten van 5 millimeter op de hoeken van de printplaat, zodat deze over de schroefgaten van de behuizing vallen.

Door de componenten slim te plaatsen, zijn ze onderling te verbinden met soldeer. Houd er rekening mee dat (afhankelijk van de baantjes op de printplaat) de module dwars in de behuizing kan komen te zitten en er is dan maar weinig marge! Plaats daarom eerst de module op de printplaat en kijk of het in de behuizing past voor je verdergaat. Fixeer dan de module door aan de onderkant de pinnen op elke hoek een stukje naar buiten te buigen, bijvoorbeeld met het platte uiteinde van een schroevendraaier. Plaats daarna de weerstanden van 100 ohm in de buurt van de pinnen D5 en D6 en de weerstand van 10 kilo-ohm bij pin A0.

De bestukte printplaat en de gedeeltelijk gesoldeerde printplaat in de behuizing.

Zet tot slot de schroefterminal aan de andere kant van de module. Ook de weerstanden en de schroefterminal blijven het best op hun plek zitten als je de pootjes een stukje ombuigt. Knip nu met een kniptang alle pootjes (ook die van de module) af op een lengte van ongeveer twee millimeter en soldeer de te verbinden onderdelen en pinnen aan elkaar. Soldeer ook de vier hoekpinnen van de module, waarvan er overigens slechts één wordt verbonden met de schroefterminal. Zie voor tips over solderen onze uitgebreide handleiding.

De schakeling is door zijn eenvoud heel geschikt voor wie met solderen begint. Tip: klik op de afbeelding; hij opent dan in een groter scherm.

Aansluiten

De afwerking is nu eenvoudiger dan ooit, want dankzij de kant-en-klare behuizing zit alles al op z’n plek. Wat rest is het aansluiten van de netadapter, de watersensor en de leds. Knip om te beginnen de ronde stekker van de kabel af. Gebruik je een usb-netadapter, dan knip je van de usb-kabel de micro-usb-connector af. Strip de afzonderlijke draadjes over een lengte van ongeveer een halve centimeter en vertin de uiteinden.

Als je een multimeter hebt, kun je de polariteit (plus en min) van de aansluitingen controleren. Heb je die niet, dan kun je kijken of er een opdruk op (een van) de draden staat. Een andere mogelijkheid is het aansluiten van een led met aan één van de pootjes een weerstand van 220 ohm. Sluit een van de adapterdraadjes aan op de weerstand en het andere draadje op het vrije pootje van de led. Het draadje dat is verbonden met het lange pootje van de led, is de plus. Markeer deze draad. Steek de vertinde uiteinden van buitenaf door de trekontlasting en zet ze vast in de schroefterminal op de printplaat, waarbij de plusdraad op VIN komt en de mindraad op GND.

Soldeer van het twee-aderige snoer elke draad aan één van de pinnen van de watersensor. Verbind de watersensor met de twee overgebleven aansluitingen van de schroefterminal, die je op de printplaat hebt verbonden met de pinnen A0 en D1 van de NodeMCU-module.

Sluit als laatste de leds aan met stukjes draad, waarvan je de uiteinden vertint. Verbind de kathodes (korte pootjes) van beide leds met GND, de anode (lange pootje) van de groene led sluit je aan op de weerstand bij pin D5 en de anode van de rode led op de weerstand bij D6.

De gestripte en vertinde uiteinden van het adaptersnoer.

Ingebruikname

Bevestig de watersensor in de voet met de kerstboom, zodat de twee pennen straks half in het water zullen hangen. Het bevestigen kan even een klusje zijn: duct-tape werkt voor bijna elke klus, maar een constructie met boutjes is wellicht iets robuuster. Let daarbij wel op dat je niet per ongeluk elektrisch verbinding maakt tussen de elektroden van de sensor!

De schakeling en het programma zijn al getest, dus kan de adapter in het stopcontact. Er is nu geen seriële monitor, dus je ziet aanvankelijk niets gebeuren. Binnen enkele seconden moet de rode led gaan branden. En binnen enkele seconden moet je een appje krijgen. Als dat niet gebeurt, is er waarschijnlijk een probleem met de wifi en zul je de schakeling wat dichterbij een accesspoint moeten zetten.

Geef de kerstboom water en zodra dat boven de sensor uitkomt, moet de rode led uitgaan en de groene gaan branden. Alvast een groene Kerst gewenst!

Het kerstboomalarm in bedrijf.

🌼 Ook handig ná de feestdagen

Als de kerstboom weer de deur uit is, kun je de schakeling natuurlijk ook prima gebruiken voor bloemen en planten. Daarvoor zul je eventueel de constanten ondergrens en veilige waarde moeten veranderen, een kwestie van experimenteren. Behalve deze voor de hand liggend toepassing, is de schakeling met het gedeeltelijk omdraaien van de code ook inzetbaar als lekkage-alarm. De functie alarm() voer je dan juist uit als de waarde te hoog is in plaats van te laag. Afgezien van wat tekstuele aanpassingen hoef je daarvoor niet heel veel te wijzigen. Een logische plek is dan bijvoorbeeld onder de wasmachine.

▼ Volgende artikel
Waar voor je geld: 5 compacte televisies geschikt voor camper of caravan
© ID.nl
Huis

Waar voor je geld: 5 compacte televisies geschikt voor camper of caravan

Haal je binnenkort je camper of caravan weer van stal? Misschien is dit dan ook het moment om te kijken naar een upgrade. Op een regenachtige dag of tijdens een belangrijke sportwedstrijd is het fijn als je een televisie tot je beschikking hebt. Wij hebben vijf compacte modellen gevonden die geschikt zijn om in een camper of caravan te plaatsen.

LG 24TQ510S-PZ

De LG 24TQ510S-PZ combineert de eigenschappen van een computermonitor met die van een televisie. Het schermtype is Wide Viewing Angle, wat zorgt voor bredere kijkhoeken, zowel horizontaal als verticaal, in vergelijking met standaard panelen. Dit model draait op het webOS-platform, waarmee je toegang hebt tot een interface met diverse apps. Een onderscheidende specificatie is de ondersteuning voor AirPlay 2, waarmee je het scherm van Apple-apparaten kunt spiegelen. Ook Screen Share voor Android-apparaten via Miracast is geïntegreerd.

Het geluid wordt verzorgd door twee 5 watt speakers. Voor externe apparatuur zijn er twee HDMI-ingangen beschikbaar en een optische audio-uitgang. De resolutie bedraagt 1366 x 768 pixels en de helderheid van het paneel is gespecificeerd op 250 cd/m². Er is geen aparte 12-volt adapter meegeleverd, dus dit model werkt standaard op netstroom. Je caravan of camper moet deze optie dus bieden.

Salora 32MBA300

Salora 32MBA300 biedt jou een beeldscherm met een formaat van 32 inch met een LED-scherm. Het heeft een Full HD-resolutie en een standaard beeldfrequentie van 50 Hz. Voor de stroomvoorziening is er een specifieke 12-volt aansluiting aanwezig op de achterzijde van het toestel. Je maakt met deze televisie gebruik van het Android TV-platform, waarmee je via de ingebouwde wifimodule verbinding kunt maken met het internet voor het gebruiken van applicaties. Het delen van media vanaf je eigen mobiele apparaten doe je via de geïntegreerde Google Cast-functie.

De hardware is tevens voorzien van een DVB-T2/C/S2-tuner voor het ontvangen van verschillende soorten televisiesignalen. Daarbij kun je zenderlijsten direct inladen via het Canal Digitaal Fast Scan-systeem en is er ondersteuning voor de smartcards van Ziggo. Je kunt externe randapparatuur verbinden via de twee aanwezige HDMI-poorten, terwijl de Bluetooth-functionaliteit je de optie geeft om audiosignalen draadloos naar luidsprekers of een koptelefoon te sturen.

Samsung 24F6000F

Als je kiest voor de Samsung 24F6000F, krijg je een scherm met een Full HD-resolutie van 1920 bij 1080 pixels. Dit 2025-model is uitgerust met de Hyper Real Picture Engine en ondersteunt HDR voor het weergeven van content met een hoog dynamisch bereik. Het besturingssysteem is Tizen, dat fungeert als hub voor alle smart-functies en apps. Qua geluid ondersteunt de televisie Object Tracking Sound Lite (OTS Lite), een techniek die het geluid virtueel de actie op het scherm laat volgen.

Voor connectiviteit zijn er twee HDMI-poorten en een USB-poort aanwezig. Daarnaast beschikt het toestel over Bluetooth 5.2 en WiFi 5 voor draadloze verbindingen. Het scherm kan worden opgehangen met een VESA-beugel van 100 bij 100 millimeter. Dit model heeft geen specifieke 12-volt aansluiting en is ontworpen voor gebruik op het reguliere stroomnet.

Lenco LED-3263BK

Deze Lenco LED-3263BK werkt op basis van het Android Smart TV-besturingssysteem. Je navigeert bij dit toestel door een interface die via een wifi-module verbinding maakt met het netwerk voor de verwerking van digitale streams en gedownloade applicaties. De weergave van deze visuele informatie gebeurt op een LED-paneel met een beeldschermdiagonaal van 32 inch.

Dit apparaat heeft een ingebouwde voeding die geschikt is voor laagspanning, en je ontvangt bij het product de benodigde 12-volt autoadapter. Hiermee sluit je de televisie direct aan op de gelijkstroomcircuits van het vrijetijdsvoertuig. Wat betreft de fysieke aansluitmogelijkheden heb je bij dit model de beschikking over drie afzonderlijke HDMI-poorten aan de zijkant of achterzijde. Dit geeft je de ruimte om meerdere externe bronnen, zoals een satellietontvanger en een losse mediaspeler, gelijktijdig verbonden te houden zonder dat je steeds de kabels hoeft te verwisselen. De televisie verwerkt je opdrachten en instellingen volgens de netwerkprotocollen van het ingebouwde platform.

MEDION MD824000

Deze betaalbare MEDION MD824000 levert beeld via een LED-LCD paneel dat een diagonaal heeft van 24 inch, wat in centimeters neerkomt op 59,9. Je ziet de grafische beelden op dit scherm geprojecteerd in een Full HD-resolutie. De interne hardware omvat een triple tuner, waarmee je zelfstandig de televisiesignalen uit de ether, via de kabel of via een satellietschotel binnenhaalt.

Het stroomverbruik van de televisie valt tijdens werking in de categorie energieklasse E. Voor het gebruik in de camper of caravan tijdens je reis gebruik je de speciale 12-volt adapter die bij de televisie in de verpakking zit. Je sluit eventuele randapparatuur aan op dit model via de ene aanwezige HDMI-poort, terwijl er ook een USB-aansluiting in het toestel verwerkt zit.

▼ Volgende artikel
ByteDance gaat AI-videomodel aanpassen na Hollywood-waarschuwingen
© Thitichaya - stock.adobe.com
Huis

ByteDance gaat AI-videomodel aanpassen na Hollywood-waarschuwingen

ByteDance, het bedrijf dat ook eigenaar is van TikTok, heeft beloofd zijn AI-videotool Seedance 2.0 aan te passen nadat verschillende filmstudio's kritiek hebben geuit en zelfs hebben gedreigd met juridische stappen.

Met Seedance 2.0 kunnen gebruikers realistisch ogende video's met bekende acteurs maken. Afgelopen week ging een filmpje viral waarin acteurs Tom Cruise en Brad Pitt bovenop een gebouw vechten. Die video is geheel met AI gemaakt en heeft dus niets van doen met de echte acteurs.

Verschillende filmstudio's hebben hier kritiek op geuit, en The Walt Disney Company eist zelfs (via Axios) dat ByteDance het onmogelijk maakt om auteursrechtelijke personages in Seedance 2.0 te gebruiken. Mensen kunnen immers ook personages uit Disney-, Marvel- en Star Wars-films gebruiken voor de AI-tool. Ook Paramount heeft een brief gestuurd naar Variety.

ByteDance heeft op zijn beurt een statement naar buiten gebracht (via o.a. Reuters en BBC) waarin het claimt dat het de huidige beveiligingsmaatregelen gaat aanscherpen om zo te voorkomen dat gebruikers bestaande personages en acteurs in kunnen zetten. Op welke manier het bedrijf dat precies gaat doen is niet duidelijk.

Watch on YouTube