Innholdsfortegnelse:

Bird Feeder Monitor: 7 trinn (med bilder)
Bird Feeder Monitor: 7 trinn (med bilder)

Video: Bird Feeder Monitor: 7 trinn (med bilder)

Video: Bird Feeder Monitor: 7 trinn (med bilder)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Juli
Anonim
Fuglematermonitor
Fuglematermonitor

Dette er et prosjekt for å overvåke antall fugler som besøker min fuglemater, samt registrere mengden tid som brukes på fôring. Jeg brukte en Arduino Yún og en kapasitiv berøringssensor, Adafruit CAP1188, for å oppdage og registrere fuglene som fôret. Vanligvis blir de akkumulerte dataene sendt til et Google Dokumenter -regneark for å registrere antall og tid som fuglene besøker materen.

Data overføres bare i en bestemt periode før soloppgang og etter solnedgang.

Trinn 1: Deler

Deler
Deler

Dette er en liste over delene jeg brukte til å sette sammen prosjektet mitt. Du kan bruke en rekke prosjektbokser til å lage prosjektet ditt, men dette er elementene jeg hadde på hånden den gangen.

1 6x3x2 "Project Enclosure1 3x2x1" Project Enclosure1 roll 1/4 "Copper Folie Tape1 CAP1188 8-Key Capacitive Touch Sensor1 Arduino Yun1 micro-SD card2 DB-9 male connectors Baklyskontakt fra bilbutikk

Trinn 2: Kabling

Kabling
Kabling

Arduino Yun og CAP1188 er kablet for å gi en hard tilbakestilling av sensoren ved oppstart. Det er andre kapasitive berøringssensorer tilgjengelig med enten en, fem eller åtte sensorer. Jeg valgte åtte fordi min fuglemater har seks sider.

Kabling:

CAP1188 SDA == Yún Digital 2 CAP1188 SCK == Yún Digital 3 CAP1188 RST == Yún Digital 9 CAP1188 VIN == Yún 3.3V eller 5V CAP1188 GND == Yún GND CAP1188 C1-C8 == Koble til ledninger på hver abbor

Strøm til Arduino ble levert eksternt, ved å føre en ledning under jorden fra garasjen min og opp gjennom røret som ble brukt som fuglematerstativ. Ledningen ble koblet til en 5-VDC strømforsyning i garasjen. Dette prosjektet burde fungere med batterier, men jeg ønsket ikke å måtte bytte batterier regelmessig.

Jeg konstruerte en 16 lang kabel med DB-9-kontakter i begge ender for å koble prosjektboksen med Arduino Yun og boksen som inneholder CAP1188. Den kapasitive sensoren må plasseres så nær sidene som mulig.

Trinn 3: Installere Python -pakker og skript

CAP1188 krever at du laster ned og installerer bibliotekene for denne sensoren. Biblioteket finner du på følgende nettsted:

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

Instruksjoner for installering av biblioteket og eksempler finnes i en README.txt -fil i zip -beholderen.

Dette programmet overvåker soloppgang og solnedgang for din spesifikke posisjon, og begynner å telle og ta tid på et bestemt tidspunkt før soloppgang og i like lang tid etter solnedgang. Før og etter den tid blir ingen data sendt til regnearket. Dette prosjektet bruker et python -skript for å lese informasjon om soloppgang og solnedgang fra Yahoo! vær hver kveld eller ved oppstart, få disse tider.

Følgende python -bibliotek må lastes ned og installeres på Arduino Yún.

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

Instruksjoner for installering av dette biblioteket finnes på nettstedet ovenfor.

Python -skript Steds -ID -en i python -skriptet 'getastonomy.py' må endres for å inkludere posisjonen din. Det er for tiden konfigurert for Sugar Land, Texas. En måte å finne ID -en din er å gå til følgende nettsted:

Værplasseringskoder

Skriv inn posisjonen din, og posisjons -ID -en din vises. Erstatt USTX1312 i linjen i skriptet med posisjons -ID -en din.

resultat = pywapi. get_weather_from_weather_com ('USTX1312')

Dette gjør at manuset kan hente soloppgang og solnedgang for posisjonen din. Instruksjoner for å endre 'sendgdocs.py' finnes i trinn 6.

Når begge skriptene er endret, må du flytte dem til mikro-SD-kortkatalogen '/mnt/sda1/' til Arduino Yun.

Trinn 4: Koble til fuglemateren

Kabling av fuglemater
Kabling av fuglemater
Kabling av fuglemater
Kabling av fuglemater

Hver av sidene på materen var dekket med 1/4 bredt selvklebende kobberfoliebånd. Et lite hull ble boret gjennom båndet og abboren, og en ledning ble loddet til foliebåndet og ført under materen.

Merk: Med fuglemateren vist ovenfor, anbefaler jeg et mellomrom mellom endene på hver foliestripe på 1 1/4 " - 1 1/2". Jeg oppdaget at de større fuglene, som grackles og duer, er i stand til å berøre to foliestrimler samtidig hvis de plasseres for å lukke hverandre.

En trebit ble formet og limt til bunnen av materen for å gi et jevnt område for montering av prosjektboksen som inneholder CAP1188. Borrelås -tape ble påført prosjektboksen så vel som treblokken for å gi et middel til å feste.

For å fylle på fuglemateren, kobler jeg fra strømmen inne i garasjen. Deretter kobler jeg DB-9-kontakten fra prosjektboksen som er festet til bunnen av materen, noe som gjør at jeg kan løfte materen av røret mens prosjektboksen fortsatt er koblet til bunnen. Når materen er fylt på nytt, legger jeg den tilbake på rørstativet; koble til DB-9-kabelen; og koble til strømmen.

Trinn 5: Opprette et Google Doc -skjema

Opprette et Google Doc -skjema
Opprette et Google Doc -skjema

For å sende data til et Google Dokumenter -regneark, må du først opprette et skjema med alle de obligatoriske feltene. I mitt eksempel har jeg seks 'cnt' felt og seks 'time' felt som er heltall. For eksempel heter feltene 'cnt1', 'time1', 'cnt2', 'time2', etc. Når du er ferdig med skjemaet, klikker du på "Vis liveform" for å se det ferdige skjemaet. Mens du ser på skjemaet, høyreklikker du på siden og velger "Vis sidekilde". Søk og finn alle HTML "input" -feltene i kildekoden. Noter navnet på hvert av feltene du skrev inn på skjemaet. Denne informasjonen er nødvendig for å lage ditt scenario i PushingBox.

Trinn 6: Konfigurering av PushingBox

Konfigurere PushingBox
Konfigurere PushingBox
Konfigurere PushingBox
Konfigurere PushingBox

Noter url -adressen til skjemaet du opprettet tidligere (mens du ser det utfylte skjemaet), og kopier den adressen. Det skal se ut som denne adressen:

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

Denne adressen brukes til å opprette PushingBox -tjenesten din, bortsett fra at den må ende med ' /formResponse' i stedet for ' /viewform'. Til slutt må du endre metoden som brukes av tjenesten til POST.

Opprettelse av et scenario i PushingBox krever dataene som er samlet tidligere fra skjemaet for hvert av inndatafeltene. Lag et CustomURL -type scenario som vist på bildet ovenfor. Det skal se ut som dette:

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

Hver oppføring skal matche feltene 'cnt' og 'tid' i skjemaet ditt. Avslutt strengen på feltene med '&& submit = Submit' som vist ovenfor.

Enhets -ID -en som er opprettet med scenariet ditt, vil være nødvendig i python -skriptet 'sendgdocs.py' for å overføre data til Google Dokumenter via PushingBox.

Trinn 7: Dataene

Dataen
Dataen
Dataen
Dataen

Dette programmet er for øyeblikket konfigurert til å samle inn og sende data til Google Dokumenter hvert 20. minutt. Dette intervallet kan enkelt endres i skissen

Dataene som sendes er "tellingen" av antall ganger en fugl (eller et annet objekt) berører kobberfolien på abboren. Den sender også den totale tiden (sekunder) en fugl berørte sensoren mens den matet.

Jeg har opplevd varierende resultater. Det hele avhenger av fôret jeg gir, og fuglene som er i området. Hvis grackles er i området, kan de tømme fuglemateren i sortert rekkefølge. De er i stand til å spre fôret med nebbet overalt veldig raskt.

Jeg har to fuglemater, men bare en har skjermen festet. Derfor indikerer dataene mine at jeg mottar mellom 1 000 til 1, 400 tellinger mellom påfyll, og materens kapasitet er 6 lbs. Noen av disse tellingene er imidlertid dobbelt tellinger som følge av at fugler strekker seg over mer enn en abbor. Uansett har det vært morsomt å se på materen, og undersøke dataene.

Anbefalt: