INHOUDSOPGAWE:

Voëlvoedermonitor: 7 stappe (met foto's)
Voëlvoedermonitor: 7 stappe (met foto's)

Video: Voëlvoedermonitor: 7 stappe (met foto's)

Video: Voëlvoedermonitor: 7 stappe (met foto's)
Video: Как спрятать данные в ячейках Excel? 2024, Julie
Anonim
Voëlvoedermonitor
Voëlvoedermonitor

Dit is 'n projek om die aantal voëls wat my voëlvoerder besoek, te monitor, asook om die hoeveelheid tyd wat daaraan bestee word, aan te teken. Ek het 'n Arduino Yún en 'n kapasitiewe aanraaksensor, Adafruit CAP1188, gebruik om die voëls op te spoor en op te teken. Die opgehoopte data word gereeld na 'n Google Docs -sigblad gestuur om die aantal en tyd wat die voëls besoek, aan te spreek.

Data word slegs gedurende 'n vasgestelde tydperk voor sonsopkoms en na sonsondergang oorgedra.

Stap 1: Onderdele

Dele
Dele

Dit is 'n lys van die dele waarmee ek my projek saamgestel het. U kan 'n verskeidenheid projekbokse gebruik om u projek te skep, maar dit is die items wat ek destyds byderhand gehad het.

1 6x3x2 "Projekomhulsel1 3x2x1" Projekomhulsel1 rol 1/4 "koperfolieband1 CAP1188 Kapasitiewe aanraaksensor met 8 sleutels1 Arduino Yun1 mikro-SD-kaart2 DB-9 manlike verbindings2 DB-9 vroulike verbindings1 Voëlvoeder (CedarWorks Plastic Hopper Bird Feeder) 1 Stertligkonnektor uit die motorvoorraadwinkel

Stap 2: Bedrading

Bedrading
Bedrading

Die Arduino Yun en die CAP1188 is bedraad om 'n harde reset van die sensor by die aanvang te bied. Daar is ander kapasitiewe aanraaksensors beskikbaar met een, vyf of agt sensors. Ek het agt gekies omdat my voëlvoerder ses kante het.

Bedrading:

CAP1188 SDA == Yún Digital 2 CAP1188 SCK == Yún Digital 3 CAP1188 RST == Yún Digital 9 CAP1188 VIN == Yún 3.3V of 5V CAP1188 GND == Yún GND CAP1188 C1-C8 == Koppel aan drade op elke sitplek

Krag vir die Arduino is ekstern verskaf deur 'n draad onder die grond van my motorhuis af te lei, en op deur die pyp wat as voëlvoederstaander gebruik is. Die draad is gekoppel aan 'n 5-VDC kragbron in die motorhuis. Hierdie projek behoort met batterye te werk, maar ek wou nie gereeld moeite hê om batterye te vervang nie.

Ek het 'n 16 lange kabel met DB-9-verbindings aan beide kante gebou om die Project Box met die Arduino Yun en die boks met die CAP1188 te verbind. Die kapasitiewe sensor moet so na as moontlik aan die sitplekke geleë wees.

Stap 3: Installeer Python -pakkette en -skripte

Die CAP1188 vereis dat u die biblioteke vir hierdie sensor aflaai en installeer. Die biblioteek kan op die volgende webwerf gevind word:

github.com/adafruit/Adafruit_CAP1188_Library/archive/master.zip

Instruksies vir die installering van die biblioteek en voorbeelde is geleë in 'n README.txt -lêer in die zip -houer.

Hierdie program monitor die sonsopkoms en sonsondergang vir u spesifieke ligging en begin tel en tydsberekening op 'n bepaalde tyd voor sonsopkoms en dieselfde tyd na sonsondergang. Voor en na die tyd word geen data na u sigblad gestuur nie. Hierdie projek gebruik 'n luislang -skrif om die inligting oor sonsopkoms en sonsondergang van Yahoo! weer elke aand of by die aanvang, kry hierdie tye.

Die volgende python -biblioteek moet afgelaai en geïnstalleer word op die Arduino Yún.

python-weather-apipywapi-https://code.google.com/p/python-weather-api/

Instruksies vir die installering van hierdie biblioteek is op die bogenoemde webwerf.

Python -skripte Die ligging -ID in die 'getastonomy.py' python -script moet aangepas word om u ligging in te sluit. Dit is tans opgestel vir Sugar Land, Texas. Een manier om u ID te vind, is om na die volgende webwerf te gaan:

Weer Plek Kodes

Voer u ligging in, en u ligging -ID sal verskyn. Vervang die USTX1312 in die reël van die script met u ligging -ID.

resultaat = pywapi. get_weather_from_weather_com ('USTX1312')

Dit sal die script toelaat om die sonsopkoms en sonsondergang vir u ligging te gaan haal. Instruksies vir die wysiging van 'sendgdocs.py' is in stap 6.

Nadat albei skrifte gewysig is, moet u dit na die mikro-SD-kaartgids '/mnt/sda1/' van die Arduino Yun skuif.

Stap 4: Bedrading van die voëlvoerder

Bedrading van die voëlvoerder
Bedrading van die voëlvoerder
Bedrading van die voëlvoerder
Bedrading van die voëlvoerder

Elke sitplek op die voerder was bedek met 'n 1/4 breë selfklevende koperfolieband. 'N Klein gaatjie is deur die band en sitplek geboor, en 'n draad is aan die foelie gesoldeer en onder die toevoer gelei.

Let wel: Met die voëlvoerder hierbo getoon, beveel ek 'n gaping aan tussen die punte van elke foeliestreep van 1 1/4 " - 1 1/2". Ek het ontdek dat die groter voëls, soos grakels en duiwe, aan twee foeliestroke gelyktydig kan raak as hulle langs mekaar geplaas word.

'N Houtblok is aan die onderkant van die voerder gevorm en vasgeplak om 'n gelyke oppervlakte te bied om die Project Box met die CAP1188 te monteer. Klittenband is op die Project Box sowel as die houtblok aangebring om 'n manier om vas te maak.

Om die voëlvoerder weer vol te maak, ontkoppel ek die krag in die motorhuis. Vervolgens ontkoppel ek die DB-9-aansluiting van die Project Box aan die onderkant van die toevoer, waarmee ek die toevoer uit die pyp kan lig terwyl die Project Box nog aan die onderkant gekoppel is. As die toevoer weer gevul is, plaas ek dit terug op die pyphouer; verbind die DB-9-kabel; en koppel die krag aan.

Stap 5: Skep 'n Google Doc -vorm

Skep 'n Google Doc -vorm
Skep 'n Google Doc -vorm

Om data na 'n Google Docs -sigblad te stuur, moet u eers 'n vorm met al die vereiste velde skep. In my voorbeeld het ek ses 'cnt' velde en ses 'tyd' velde wat 'n heelgetal invoer is. Die velde het byvoorbeeld die naam 'cnt1', 'time1', 'cnt2', 'time2', ens. Sodra u klaar is met die vorm, klik u op 'Kyk lewendige vorm' om die voltooide vorm te sien. Terwyl u die vorm sien, klik met die rechtermuisknop op die bladsy en kies 'Bekyk bladsybron'. Soek en vind al die HTML -invoervelde in die bronkode. Teken die naam aan vir elk van die velde wat u op die vorm ingevoer het. Hierdie inligting is nodig om u scenario in PushingBox te skep.

Stap 6: Stel PushingBox op

Stel PushingBox op
Stel PushingBox op
Stel PushingBox op
Stel PushingBox op

Maak 'n aantekening van die url -adres van die vorm wat u voorheen geskep het (terwyl u die voltooide vorm bekyk) en kopieer die adres. Dit moet soortgelyk aan hierdie adres lyk:

"https://docs.google.com/forms/d/42QRHPzZzI4fdMZdC4…EbF8juE/viewform"

Hierdie adres word gebruik om u PushingBox -diens te skep, behalwe dat dit moet eindig met ' /formResponse' in plaas van ' /viewform'. Uiteindelik moet u die metode wat deur die diens gebruik word na POST verander.

Die opstel van 'n scenario in PushingBox vereis dat die data wat voorheen ingesamel is uit die vorm vir elk van die invoervelde. Skep 'n CustomURL -tipe scenario soos gesien op die foto hierbo. Dit moet so lyk:

entry.184762354 = $ cnt1 $ & entry.1970438117 = $ ti … 6352124 = $ cnt6 $ & entry.54370319 = $ time6 $ && submit = Submit

Elke inskrywing moet ooreenstem met die 'cnt' en 'time' velde van u vorm. Beëindig die string op velde met '&& submit = Submit' soos hierbo gesien.

Die toestel -ID wat met u scenario geskep is, sal nodig wees in die 'sendgdocs.py' python -script om data via PushingBox na Google Docs te stuur.

Stap 7: Die data

Die data
Die data
Die data
Die data

Hierdie program is tans opgestel om elke 20 minute data te versamel en na Google Docs te stuur. Die interval kan maklik binne die skets gewysig word

Die data wat gestuur word, is die "telling" van die aantal kere wat 'n voël (of 'n ander voorwerp) die koperfoelie op die sitplek raak. Dit stuur ook die totale tyd (sekondes) wat 'n voël aan die sensor geraak het terwyl hy gevoer het.

Ek het verskillende resultate beleef. Dit hang alles af van die voer wat ek verskaf, en die voëls wat in die omgewing is. As die gekreukels in die omgewing is, kan hulle die voëlvoerder in volgorde leegmaak. Hulle kan die voer met hul snawels baie vinnig oral versprei.

Ek het twee voëlvoerders, maar slegs een het die monitor aangeheg. Daarom dui my data aan dat ek tussen 1 000 tot 1 400 tellings tussen hervullings ontvang, en die toevoer se kapasiteit is 6 lbs. Sommige van die tellings is egter dubbele tellings as gevolg van voëls wat oor meer as een sitplek lê. Dit was in elk geval lekker om na die toevoer te kyk en die data te ondersoek.

Aanbeveel: