Har haft en idé ett tag. Jag är inte sådär sjukt intresserat av att pilla med växter (nu var jag snäll) men ibland vill jag gärna ha att någon blomma överlever mer än en kvart utan allt för stora skador. Typisk är att jag glömmer vattna eller kommer ihåg det alldeles för mycket, erfarenheten har visat mig att båda delar är dåligt.
Och det finns ju en del av dessa projekt med minimala enheter som mäter och blinkar en LED när det är dags och varför skulle inte jag göra ett sådan också?
Flower pot sensor 100.png
Schemat är knappast revolutionerande men jag har försökt att tänka till lite.
CN1 är anslutningen av mätelektroder, jag tänker ett par bitar rostfritt ståltråd. Kontaktdonet är ett vanligt med 5,08mm spacing, passar perfekt till en del olika versioner med bra plats att skruva fast ståltråden.
CN2 är en utgång helt enkelt! Om man nu kan hitta på att göra ett automatiserat system kan man koppla på där, då får man ett signal om det är dags att pytsa på vatten. Signalen lär inte vara ett "vattna så lång tid som det är på" men istället ett "någon behöver vatten".
Hela enheten drivs med ett CR2032 batteri (sitter i sockel) och mönsterkortet är 42x33mm. Det kan göras som enkelsidigt utan byglingar men det finns GND-plan på båda sidor om man vill ha det dubbelsidigt.
Funktionen är inget epokgörande men det som jag har lagt lite möda på är stabiliteten på mätningen. De flesta sådana grejer fungerar ju vid att de ibland drar lite ström genom jorden i krukan och kollar om den är torr eller våt. Detta gör min version också men den går ett steg längre!
För att hålla beläggningar på elektroderna borta eller iaf. lika så att man inte får en DC-offset har jag lite extra motstånd inkopplat. Jag har inte definierat deras värde än då jag ska mäta lite på jorden i en kruka först men vad som är säkert är att R4 = R5 samt R3 = R6. R3 och R6 är eg. bara för att jag inte vill ha direkt kontakt in till processorpinnen så de kan ha ett värde på kanske 2,2k eller så.
Min tanke med denna koppling är då att man först kan dra RC4 (som utgång) till VDD och RC5 (som utgång) till GND. Varannan gång man mäter växlas nivåerna på dessa utgångar. Detta ska ge ett mittpunkt för RC3/AN7 (A/D ingång). Om man samtidig ställe RA5 till ingång kan man mäta en spänning på RA4/AN3 och på RC3/AN7. Skillnaden mellan dessa två värden ger den DC-offset som finns pga. beläggning på elektroderna och används för att justera polariteten vid den egentliga fuktighetsmätning.
Den egentliga fuktighetsmätningen sker vid att ställa RC4 till ingång och RA5 till utgång, därefter ställer man nivån på RA5 & RC5 till motsatsen av varandra, vilken som blir vad beror på det DC-offset som mättes vid beläggningsmätningen. Vill man vara petig kan man växla polaritet och mäta igen, man kan då låta förhållandet mellan de två mätningars tid bero på det mätte DC-offset men det tar ju lite extra ström på det vis.
Nåväl, med alla värden mätta är det bara att kolla om det är fuktigt eller torrt, sedan får den blinka LED om det är torrt och man kan ha olika nivåer för utgången och för blinkningen av LED'n om det är intressant.
Jag har planerat att använda en PIC16F1823I-SL med nW-funktionalitet, den borde klara biffen galant. Jag har inte pillat speciellt med den del än, jag vet inte ens om jag vill tillverka en sådan enhet men jag skulle i så fall köpa mig en PICKit3 då min tvåa inte är bundis med denna processor.
I den processor finns det även en FVR (Fixed Voltage Reference) så det är fullt möjligt att ställa in- och utgångar rätt och då mäta batterispänningen för att kunde varna för lågt batteri. För att spara ström ska man bara slå på den när man ska mäta, sedan ska den slås av.
Hela enheten skulle göra som vanligt: vakna ibland, göra mätningarna, blinka eller inte och innan den återgår till SLEEP ska utgångarna ställas till '0' så att ingen ström kan dras från batteriet genom sensorn.
Den ska såklart dra så lite ström som möjligt, använda intern oscillator och batteriet skulle då hålla ~1+ år med en PIC16F1823, tar man istället en PIC16LF1823 skulle det hålla runt .... hmm, svårt att räkna ut men många år! 3+ skulle jag tro.