blogs kategori-billede

Water-over-IP (2)

Af Christian Panton,  fredag 03. sep 2010 kl. 15:54

I sidste blogpost fortalte jeg om min altankasse som skulle kobles på internettet, så jeg kunne vande den i min ferie. Ferien er nu slut og derfor vil jeg gerne berette om hvad som der virkede og hvilke vanskeligheder der var undervejs.

Konstruktionen

Selve vandingsanlæget er som tidligere antydet lavet af akvarieslanger og en slangepumpe. Jeg forsøgte til at starte med at fordele trykket jævnt ved at have lige lange slanger og have dem i samme højde. Det virkede for de første 2 slanger jeg havde sat på, men da jeg begyndte at udskifte T-kryds med 4-vejs kryds, ja så betød det at vandet løb lige igennem krydset og løb med trykket.

Det ledte mig tilbage til min barndom, da jeg byggede et vandingsanlæg af en colaflaske og en slange med min morfar. Problemet med trykket blev dengang reguleret ved hjælp af en rustfri skrue som var skruet op i slangen. Dette skulle naturligvis prøves og det virkede som en drøm. Altankassen har nu 8 steder med drypvanding som individuelt kan justeres i vandmængde.

Jeg ville også gerne måle fugtigheden i jorden. Jeg stak to lange rustfrie skruer med en fast afstand ned i altankassen ca. 5 cm ved siden af drypvandingen til den Schweiziske mynte. Ved hjælp af en simpel spændings-deler (er det det korrekte ord på dansk?) bestående af de to skruer som den ene modstand og et potentiometer som den anden, forbandt jeg midterpunktet til ADC indgangen på en arduino. Derefter tunede jeg potentiometeret så jeg udnyttede den fulde 1024 bit opløsning på arduinoen. For at undgå at opbygge en masse ioner på mine elektroder, bruger jeg en anden digital I/O-pin til at levere probe-spændingen med, således at der kun er et spænding på i mindre end et par hundrede milisekunder.

En af de digitale I/O-pins på Arduinoen forbandt jeg med en Darlington transistor. Men da jeg ikke havde nogle transistor, brugte jeg et helt Darlington-array. Nu havde Arduinoen en udgang som kunne trække op til 2A ved hjælp af transistorene, så nu kunne jeg trygt forbinde min pumpe motor, og så kunne jeg styre motoren ved hjælp af Arduinoen og i sidste ende den Netbook som jeg havde dedikeret til projektet.

Selv om den ovenstående øvelse virker simpel, så tog det mig alligvel en god 2-3 timer at indse at jeg havde forbundet Darlington-arrayet forkert. Jeg havde glemt at det var en NPN-version og jeg gik og tænkte i mit hoved det var en PNP. Da den lille misforståelse blev løst, ja så har det virket lige siden.

Interfacing med internettet

Da jeg skulle være væk et stykke tid ville jeg gerne lave et interface med video, så jeg kunne holde øje med planterne når de blev vandet.
Efter at have indset at plug-and-play videochat biblioteker ikke rigtigt findes i åbne løsninger endnu, valgte jeg Skypes API til at facilitere chat og video fra min altankasse.



Netop det valg viste sig at være den største svaghed ved projektet, da Skypes API'er til Linux er ganske ustabile, især Python versionen, som ville få Skype til at crashe, hvis man ikke kælede computeren blidt mens scriptet kørte. Det holdt sig dog lige akkurat oppe til jeg sad i toget på vej hjem fra ferie, hvor pludseligt Skype besluttede sig for at bruge en hver ressource på systemet og jeg blev nød til at hive batteriet ud af den bærbare, for at få den til at holde på med det.

Hjemme igen

Mine planter overlevede, hvilket må være den bedste måde at sige på at projektet var en succes. Men derudover havde jeg logget fugtigheden i min altankassen og den har jeg plottet nedenfor. Dagene er angivet på x-aksen og den reciprokke værdi af ADC'en er min approksimation af fugtigheden i jorden på y-aksen.



Kode



03. sep 2010 kl 19:01

dan poulsen

fugtighedsmåling

Jeg har rodet lidt med fugtighedsmåling til golfbaner, og som du rigtigtnok bemærker, er der problemer med elektrolyse, ved en dc modstandsmåling. Derudover er der også problemer hvis du vil gødske jorden, så falder den ohmske værdi uforudsigligt. Har du overvejet at måle kapasiteten i stedet for? Så kan du også anvende isolerede elektroder, og derved undgå tæringsproblemer...


04. sep 2010 kl 10:33

avatar

Troels Halken

Interessant

Jeg har selv haft samme problem med urterne på altanen i sommers. Nu har jeg desværre ikke helt de samme forudsætninger inden for elektronik eller programmering, men projektet er ganske interessant, hvis det kunne laves i en for-dummies/kogebogs udgave. Ellers må jeg finde en gammel pic frem og se om jeg ikke kan få fusket noget sammen de lange vinteraftner i assembler.

Vh Troels


03. aug 2011 kl 02:07

Lars Tørnes Hansen

Streaming

Jeg er klar over at tråden her er lidt gammel, men softwaren her er måske nyttig alligevel, men desværre kun for styresystemer baseret på Linux.

Jeg bruger Ubuntu 10.10, og der er der et par interessante pakker i arkiverne:
ffmpeg pakken indeholder:


This package contains the ffplay multimedia player, the ffserver streaming
server and the ffmpeg audio and video encoder. They support most existing
file formats (AVI, MPEG, OGG, Matroska, ASF...) and encoding formats (MPEG,
DivX, MPEG4, AC3, DV...).

Der også flumotion pakken:

Flumotion is a modern streaming media server built with a modular
distributed design. This gives you unprecedented stability and
scalability in offering high-quality streaming media.

Flumotion includes support for both emerging media format standards,
such as Ogg/Theora, and traditional formats such as MPEG-4. It
features intuitive graphical administration tools, making the task of
setting up and manipulating audio and video streams easy for even
novice system administrators.

Flumotion ships with a HAL policy granting the flumotion user access to
devices you might want to use for streaming; install the hal package to
use this feature.

der sammen med libcortado-java pakken kan streame video fra en webserver, der snakker med din Fluendo video streaming serve

om libcortado-java:

By embedding the cortado applet in your website, you can give viewers access
to streams from either the Flumotion streaming server or any HTTP server
providing multimedia files without the need for a locally installed media
player supporting the correct formats on the visitor's computer. Cortado
currently include Java decoders for Ogg Theora, Ogg Vorbis (the JOrbis
library), Mulaw audio, MJPEG and Flumotion's Smoke codec.

The package cotains the actual jar files that can be used by other programs to
provide Theora playback capability.

Du skulle ikke være så svært at lave en kode beskyttet streaming side på en webserver.
Er du lidt paranoid, generer du en bunke engangsnøgler, som du hasher og smider op på webserveren sammen med login softwaren.
Engangsnøgler kan du så udskrive på en seddel til ferien.


Ny i debatten? Opret en brugerkonto

  • Seneste nyt
  • Mest læste
  • Debatterede
 

Nyhedsbrev

Tilmeld dig vores nyhedsbrev.