Autonoma solar driv tweeting fågelbordet (4 / 5 steg)
Steg 4: Utmaningar, förbättringar och lärdomar
Version 1.1:
Vår första bygga faktiskt används denna väderbeständig TTL JPEG kamera. Efter några dagars drift vi fast beslutna att interna rörelsedetektor på väderbeständig TTL JPEG kameran var alltför känsligt för förändringar i ljus. Förändringar i ljuset nivåer se vanligen under soluppgång, solnedgång, molntäcket, etc utlöst många falska positiva. Vi beslutade att inaktivera kamerans rörelsedetektor och ersätta det med passiv infraröd sensor (PIR). PIR-sensorer mäta "varma kropp" värme och ses ofta i hem trygghetssystemen.
Under denna period började vi även experimentera med luta solpaneler. Den första solar installationen faktiskt används den Nomad 13 istället för Boulder 15. Nomad 13 fungerade ok, men vad vi upptäckte var att Nomad 13 inte genererar en kostnad såvida inte båda panelerna var utsätts för ljus på samma gång. Mataren hade därför mer driftstopp som vi ville. Som du har förmodligen sett på hustaken hus över hela landet fast solpaneler är normalt vinklat och pekade i en viss riktning. Riktning och lutning att optimera mängden energi panelerna genererar. Panelerna och ordentlig vinkeln riktning beror på din specifika plats. Det finns ett antal online räknare som kan hjälpa dig att hitta en optimal konfiguration.
Version 1.2:
PIR-sensorn var en bra lösning för ljuskänslighet problem med kamerans interna rörelsedetektor hade sin egen svaghet. PIR-sensorn var alltför känslig för förändringar i värme. Plötsliga förändringar i värme är vanligtvis inte ett problem i en sluten installation som ett hus, men i naturen något går. Den samma soluppgången, täcker solnedgång och molnet villkor problematiskt för denna sensor. Vi hade ungefär samma antal falsklarm. Så med version 1.2 Vi tappade PIR-sensor och
med en ny PING ultradistance sensor. I ett nötskal använder denna sensor sonar för att mäta avståndet till ett specifikt mål. Sensorn ser ut som en uppsättning av ögon. En sensor skickar ut en Ultraljuds puls och andra sensorn mäter hur lång tid det tar för att studsa tillbaka. Tillämpa vissa beräkningar som involverar ljudets hastighet och du kan komma fram till en beräkning av färdavstånd.
Om du tittar noga på bilden av vår feeder kan du se en liten vägg mitt emot kameran. Att väggen blir viktigt eftersom vi studsar ultraljud puls av att väggen. Vi vet från att testa hur långt att väggen är. En behandling mindre än avståndet till väggen anger något är i vägen (dvs.) en fågel. Som ni ser på bilden ovan sensorn är innesluten i en plastbehållare. Sensorn är inte vattentät så vi formade en anpassad hållare som minimerar exponeringen för elementen. Vi är inte hävda denna inställning är 100% full-bevis, men det har överlevt otaliga Colorado åska utan problem hittills.
Version 1.3:
Kort efter lanseringen av version märkt 1.2 vi PING sensorn var alltför känslig för plötsliga förändringar i vinden. Byvind utlöste falska positiva eftersom de avbröt den sonar behandlingen. Vi hjälpte tämja detta genom att placera en vindskyddet (skum) över mottagaren. En annan fråga med sensorn var att ibland det skulle skicka tillbaka en kort behandling. Det var oförutsägbar och mer ofta än acceptabelt. Lös för detta var att ta en 2: a behandlingen efter en kort behandling var registrerat. Medan det slumpmässigt skickar en kort behandling skickar aldrig 2 i rad.
Som du kan berätta av nu är den mest problematiska inslaget i enheten rörelsedetektorn. Vid denna tidpunkt kom vi upp med en ny lösning som visade sig vara vinnare. Vi återaktiveras kamerans interna rörelsedetektor och kodade upp en programvarufunktion vi kallar "ringa en vän" (ja det är lånat från "Vem vill bli miljonär"). Idén är enkel. En sensor ständigt söker efter motion. När rörelse detekteras frågar den 2. sensor för verifiering. Om 2: a sensorn bekräftar motion tas en bild. I annat fall behandlas händelsen som ett falskt positivt.
Version 1.4:
Denna version revisited solpanel frågor nämnde tidigare. Vi kände Nomad 13, även med directionally placeras och korrekt vinklar paneler, låg under våra förväntningar för enheten upptid. Målet noll anges som Nomad 13 kan ladda Sherpa 50 i 8 till 16 timmar i solen. Version 1.4 av Feeder diskant krävs ca 450 till 500mA av makt och Sherpa 50 ger 50 watt. Vårt ursprungliga mål var att hålla enheten online 27/4. Ett fulladdat Sherpa 50 skulle vara tillräckligt för att hålla saker kör hela natten. Verkliga livet tester visade sig dock att vi inte kunde få en full laddning varje dag med tanke på det tillgängliga solljuset i vårt läge (Colorado).
Vi beslutade att uppgradera till Boulder 15 solpanelen. Denna panel samlar 15 watt snarare än de 13 wattna av Nomad 13. Det första hindret med denna panel var montering. Nomad 13 var en trapper keeper stil installation som viks fint över taket. Boulder 15 panel fästet är mer som en hängande bildramen som självklart inte är optimalt för vår installation. Vi skapade
på ungefär det du kan se på solar powered konstruktion tecken. Vi köpte en trä stolpe, borrade ett hål i toppen för några gängade stål, twisted på ett stativhuvud på toppen och körde den i marken med en Tiki ficklampa spel. På baksidan av Boulder 15 skapat vi en grundläggande "I" hållare som håller den övre delen av stativet. Stativ är förmåga att hålla ungefär 6 pounds vilket är mer än vikten på panelen. Stativ är en enkel kulled som ger oss möjlighet att vinkla panelen i alla lägen och låsa den på plats.
Med dessa release beslutat vi också att bygga en anpassad Debian-paket för vår programvara. Jag kommer inte detalj ut processen för att göra här. Du kan hitta gott om tutorials online. Fördelen med detta är att vi kan nu lägga våra egna anpassade Debian package repository till varje ny feeder vi bygger och har det kontrollera att det datalagret tillfälligt för nya versioner av programvaran. Vilket innebär att vi kan distribuera uppdateringar till matare i naturen likt få på din mobiltelefon. När en ny version av programvaran identifieras mataren auto-installerar det nya paketet och startas om.
Version 1.5:
Det största problemet kvar med version 1.4 var kvaliteten på bilderna. Bästa bilden vår ursprungliga kamera kunde var en 640 × 480 före komprimerade JPEG. I början trodde vi det skulle bli gott för en enkel fågel bild. Men i slutändan nöjda vi inte med denna utgång. För mycket arbete gick in i enheten för att lämna den med en crappy bild. Vi beslutade att byta ut den ursprungliga kameran för den officiella Raspberry Pi kameramodulen. Denna kamera kan fånga en 5 megapixel 2592 × 1944 bild och liknande du kan hitta i en mobiltelefon.
Den nya kameran kom med några nackdelar. Först och främst är det inte vattentät. Efter lite forskning hittade vi en plast kamerafäste som var ganska väl tillslutet. Vi avslutade jobbet med några av våra kisel lim. Den andra frågan var att flex kabeln som levereras med modulen är mycket kort. För kort för att nå från inuti vår inhägnad till området vi behövde för att montera kameran på utsidan av mataren. Det verkar inte heller vara så väderbeständig. Vi hittade till slut en trevlig kamera extension kit som tillät oss att utöka kamerans kabel. Nya flatkabeln var bättre lämpade för utomhus också som var en stor bonus. Det sista problemet med den nya kameran var i fokus. Raspberry Pi kameran är en fast fokus modul. Något utöver säga 50cm är i fokus. Något närmare är suddig och blir sämre ju närmare du får. I vår mataren setup vi bara har ungefär 7 inches (18cm) mellan området vi montera kameran och området fåglar tenderar att sitta. Vi justerat fokus kameran genom att köpa en uppsättning av läsglasögon och låna en lins. Vi experimenterade med olika styrkor, men bosatte sig på 3,25 +. Vi bort en lins från ramen och limmade direkt över kameralinsen på utsidan av kamerafästet. 3,25 + visade sig vara perfekt justering nivå för avståndet vi hade. Problemet löst, tydliga bilder gott. Kolla detta
för jämförelse.
Byta kameran kom också med några andra biverkningar. Vi var tvungna att skriva om alla kamera koden. Detta kan vara en nackdel eller en fördel beroende på hur man ser på den. Väderbeständig TTL seriell kameran krävs för oss att interagera via seriell kommunikation. Inte super komplex, men det tar en hel del kod. Lyckligtvis skapat Adafruit faktiskt ett bibliotek för att göra detta ganska lätt med en Arduino som någon portades senare över till Python för Raspberry Pi. Den enda saknade delen av hamnen var kod för att hantera rörelse upptäckten så vi kodade den del upp oss. Raspberry Pi kameramodul har en inre rörelse upptäckten mekanismen så en ny lösning krävdes för detta. Seriell kommunikation är inte heller något vi behöver oroa längre så den nya kameramodulen kommer med ett par program som du använder för att interagera med den. raspistill och raspivid. Raspivid är en kommandorad ansökan som tillåter dig att fånga video med den kameramodulen, medan ansökan raspistill låter dig ta bilder. Med denna nya inställning kastade vi ut en massa kod som faktiskt gjort saker mycket enklare i slutet.
Tillbaka till rörelsedetektorn, som jag nämnde den nya kameran inte har denna förmåga. Är att "telefonen en vän" featured fungerat så bra, och att vi fortfarande hade några andra sensorer som vi hade experimenterat med, vi beslutat att föra tillbaka PIR-sensorn. Så i den aktuella versionen arbetar av PING och PIR-sensorer tillsammans för att bekräfta rörelse. I bilden överst i det här avsnittet visas en
. Vi kallar detta "power tower". Längst ner är det PING sensorn, i mitten finns PIR-sensorn och en ny fotocell sensor och på toppen är den kameramodulen med extra objektiv. Ursprungliga kameran hade ett LED ring som skulle komma i mörkret och gör det kan fånga svartvita bilder i svagt ljus. Veckor gamla kameran var operativa fångade vi bara en natt bild så detta inte är en super viktigt funktion. Avlägsnande av det men presenterar en ny utmaning. Om vinkade upptäcktes på natten eller i en kraftigt mulet situation kameran skulle fånga en mycket mörk eller kanske till och med en kolsvart bild. Att lösa eller det vi lagt till en fotocell som hjälper till att mäta ljuset nivåer. Vi gjorde några test och kom med vad vi kände var acceptabelt ljusnivåer för bra bilder och lagt detta i mixen. Nu fångas en bild bara när vi har dubbel bekräftade rörelse och tillräckligt med ljus.