Hold familien varm – med kun let overdrevet brug af IoT – 1. del

Jeg nævnte i en tidligere post, at mit træpillefyr sender mig push-beskeder når det snart mangler piller.

Det system er et af mine projekter med flest år på bagen og med ret mange (fejlede) eksperimenter bag sig.

Først lidt forhistorie…

Jeg bor med min dejlige familie i et nedlagt landbrug langt ude på landet.

Huset bliver varmet op med et træpillefyr.

Sådan et fyr er en dejlig og rimelig nem løsning.

Ikke fjernvarme-nem, oliefyr-nem, naturgas-nem eller for den sag skyld jordvarme-nem, men driften er udholdelig og består af to regler:

  1. Hæld 6-8 poser træpiller á 16kg på en 2-3 gange om ugen.
  2. Tøm aske ud 1-2 gange om måneden.

Resten ordner skorstensfejeren.

Regel #2 har jeg ikke haft nogen problemer med, men regel #1 er en anden sag, og man skulle tro, kolde morgener med kun koldt vand i bruseren kunne lære mig noget, men nej.

Den nemme løsning kunne være at sætte en alarm på min telefon, der mindede mig om at hælde træpiller på hver anden dag. Den har jeg brugt i perioder, men den er ærligt talt lidt old skool og lidt kedelig.

Under lidt hygge-browsing på sparkfun.com faldt jeg over MaxSonar-EZ1. En lækker lille ultralydssonar.

Den kan måle afstande ved at skyde et ultralydssignal afsted og så måle, hvor mange millisekunder, der går, inden ekkoet kommer tilbage.

MaxSonar-EZ1 er endda så veludrustet, at man kan få afstandssignalet ud  på tre måder: via et digitalt serielt interface, et Pulse-Width-Modulation (PWM) signal eller et godt gammeldags analogt signal (større afstand = større spænding).

Jeg havde nogle gange rodet lidt med Arduino Uno boards til mini-projekter. Men da Arduino annoncerede deres nye top-model Arduino Yún med indbygget Linux-kerne og wifi, skød jeg straks nogle penge ud over internettet.

Min nye Yún skulle være arbejdshesten i min nye pillefyrs-pillestands-overvågnings-dims og kan umiddelbart læse et PWM signal fra sonaren.

Som sagt så gjort. Jeg fik lavet et test-setup og kunne måle afstanden fra sonaren til min hånd. Heldigvis virkede det også, da jeg slæbte fuglereden af ledninger ud til mit fyrrum og holdt sonaren over træpillesiloen. YAY!

Jeg fandt et stykke aflagt Ikea-indpakning og snittede huller til Arduino, breadboard og sonaren, og vupti så havde jeg min træpillemåler.

Jeg lavede en hurtig server med Django, der kunne modtage og gemme målingerne, og et API som Yún’en kunne aflevere sine data til. Serveren smed jeg op på en EC2-instans, jeg allerede havde kørende hos Amazon, og viola!

Nu manglede jeg bare at kunne se mine data, og til det greb jeg fat i det smukke og nemme Flot.js, som mine venner fra Iola har lavet.

Når det hele virkede, kunne jeg fra min browser se hvor mange piller, der var på fyret.

MEGET nemmere end at gå ud og kigge i tanken. 😜

Det var første generation af systemet, med flere uhensigtsmæssigheder og deciderede mangler, fx. kunne det ikke fortælle mig om fyret var gået ud.

Jeg skriver snart en post mere, om næste generation af systemet, hvor der bla. kommer push beskeder og visuel programmering i spil.