Inhaltsverzeichnis:

Vogelhäuschen Monitor - Gunook
Vogelhäuschen Monitor - Gunook

Video: Vogelhäuschen Monitor - Gunook

Video: Vogelhäuschen Monitor - Gunook
Video: BirdDock Smart Bird Feeder Assembly Tutorial 2024, Juli
Anonim
Vogelhäuschen Monitor
Vogelhäuschen Monitor

Dies ist ein Projekt, um die Anzahl der Vögel zu überwachen, die mein Futterhäuschen besuchen, sowie die Zeit, die mit dem Füttern verbracht wird, aufzuzeichnen. Ich habe einen Arduino Yún und einen kapazitiven Berührungssensor, Adafruit CAP1188, verwendet, um die Vogelfütterung zu erkennen und aufzuzeichnen. Die gesammelten Daten werden routinemäßig an eine Google Docs-Tabelle gesendet, um die Anzahl und die Zeit aufzuzeichnen, die die Vögel beim Besuch der Futterstelle verbracht haben.

Die Daten werden nur während eines festgelegten Zeitraums vor Sonnenaufgang und nach Sonnenuntergang übertragen.

Schritt 1: Teile

Teile
Teile

Dies ist eine Liste der Teile, die ich verwendet habe, um mein Projekt zusammenzubauen. Sie könnten eine Vielzahl von Projektboxen verwenden, um Ihr Projekt zu erstellen, aber dies waren die Elemente, die ich damals zur Hand hatte.

1 6x3x2" Projektgehäuse1 3x2x1" Projektgehäuse1 Rolle 1/4" Kupferfolienband1 CAP1188 Kapazitiver 8-Tasten-Touchsensor1 Arduino Yun1 Micro-SD-Karte2 DB-9-Stecker2 DB-9-Buchsen1 Vogelfutterspender (CedarWorks Plastic Hopper Bird Feeder)1 Rücklichtstecker aus dem Autozubehörhandel

Schritt 2: Verkabelung

Verdrahtung
Verdrahtung

Der Arduino Yun und der CAP1188 sind so verdrahtet, dass sie beim Start einen Hard-Reset des Sensors ermöglichen. Es gibt weitere kapazitive Berührungssensoren mit einem, fünf oder acht Sensoren. Ich habe acht gewählt, weil mein Vogelhäuschen sechs Seiten hat.

Verdrahtung:

CAP1188 SDA == Yún Digital 2 CAP1188 SCK == Yún Digital 3 CAP1188 RST == Yún Digital 9 CAP1188 VIN == Yún 3.3V oder 5V CAP1188 GND == Yún GND CAP1188 C1-C8 == An die Drähte an jeder Stange anschließen

Die Stromversorgung des Arduino wurde extern bereitgestellt, indem ein Draht unter der Erde von meiner Garage und durch das Rohr, das als Vogelfutterständer verwendet wurde, geführt wurde. Das Kabel wurde in der Garage an eine 5-VDC-Stromversorgung angeschlossen. Dieses Projekt sollte mit Batterien funktionieren, aber ich wollte nicht routinemäßig Batterien wechseln.

Ich habe ein 16 langes Kabel mit DB-9-Anschlüssen an beiden Enden konstruiert, um die Project Box mit dem Arduino Yun und der Box mit dem CAP1188 zu verbinden. Der kapazitive Sensor muss so nah wie möglich an den Sitzstangen platziert werden.

Schritt 3: Python-Pakete und -Skripte installieren

Der CAP1188 erfordert, dass Sie die Bibliotheken für diesen Sensor herunterladen und installieren. Die Bibliothek finden Sie auf folgender Seite:

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

Anweisungen zur Installation der Bibliothek und Beispiele befinden sich in einer README.txt-Datei im Zip-Container.

Dieses Programm überwacht den Sonnenaufgang und Sonnenuntergang für Ihren spezifischen Standort und beginnt mit der Zählung und Zeitmessung zu einer bestimmten Zeit vor Sonnenaufgang und für die gleiche Zeit nach Sonnenuntergang. Vor und nach dieser Zeit werden keine Daten an Ihre Tabelle gesendet. Dieses Projekt verwendet ein Python-Skript, um die Sonnenauf- und -untergangsinformationen von Yahoo! Wetter jeden Abend oder beim Start bekommen diese Zeiten.

Die folgende Python-Bibliothek muss heruntergeladen und auf dem Arduino Yún installiert werden.

python-weather-apipywapi -

Anweisungen zur Installation dieser Bibliothek finden Sie auf der oben genannten Website.

Python-SkripteDie Standort-ID im Python-Skript „getastonomy.py“muss geändert werden, um Ihren Standort einzuschließen. Es ist derzeit für Sugar Land, Texas, konfiguriert. Eine Möglichkeit, Ihren Ausweis zu finden, besteht darin, die folgende Website aufzurufen:

Standortcodes für Wetter

Geben Sie Ihren Standort ein und Ihre Standort-ID wird angezeigt. Ersetzen Sie USTX1312 in der Zeile des Skripts durch Ihre Standort-ID.

Ergebnis = pywapi. get_weather_from_weather_com (' USTX1312 ')

Dadurch kann das Skript den Sonnenaufgang und Sonnenuntergang für Ihren Standort abrufen. Anweisungen zum Ändern von 'sendgdocs.py' finden Sie in Schritt 6.

Nachdem beide Skripte geändert wurden, müssen Sie sie in das Micro-SD-Kartenverzeichnis '/mnt/sda1/' des Arduino Yun verschieben.

Schritt 4: Verkabelung des Vogelhäuschens

Verkabelung des Vogelhäuschens
Verkabelung des Vogelhäuschens
Verkabelung des Vogelhäuschens
Verkabelung des Vogelhäuschens

Jede der Sitzstangen an der Zuführung wurde mit 1/4 breitem selbstklebendem Kupferfolienband bedeckt. Ein kleines Loch wurde durch das Band und die Stange gebohrt, und ein Draht wurde an das Folienband gelötet und unter die Zuführung geführt.

Hinweis: Bei dem oben gezeigten Vogelhäuschen empfehle ich einen Abstand zwischen den Enden jedes Folienstreifens von 1 1/4" - 1 1/2". Ich entdeckte, dass die größeren Vögel wie Grackles und Tauben in der Lage sind, zwei Folienstreifen gleichzeitig zu berühren, wenn sie zu nahe beieinander platziert werden.

Ein Holzblock wurde geformt und auf den Boden des Feeders geklebt, um einen ebenen Bereich für die Montage der Projektbox mit dem CAP1188 bereitzustellen. An der Projektbox sowie am Holzklotz wurde Klettband angebracht, um eine Befestigungsmöglichkeit zu bieten.

Um das Vogelhäuschen wieder aufzufüllen, trenne ich den Strom in der Garage. Als nächstes trenne ich den DB-9-Stecker von der Project Box, die an der Unterseite des Feeders befestigt ist, wodurch ich den Feeder aus dem Rohr heben kann, während die Project Box noch am Boden angeschlossen ist. Sobald der Feeder wieder befüllt ist, stelle ich ihn wieder auf den Pfeifenständer; Schließen Sie das DB-9-Kabel an. und stecken Sie den Strom ein.

Schritt 5: Erstellen eines Google Doc-Formulars

Erstellen eines Google-Dokumentenformulars
Erstellen eines Google-Dokumentenformulars

Um Daten an eine Google Docs-Tabelle zu senden, müssen Sie zunächst ein Formular mit allen erforderlichen Feldern erstellen. In meinem Beispiel habe ich sechs 'cnt'-Felder und sechs 'time'-Felder, die ganzzahlige Eingaben sind. Die Felder heißen beispielsweise 'cnt1', 'time1', 'cnt2', 'time2' usw. Wenn Sie mit dem Formular fertig sind, klicken Sie auf "Live-Formular anzeigen", um das fertige Formular anzuzeigen. Klicken Sie beim Anzeigen des Formulars mit der rechten Maustaste auf die Seite und wählen Sie "Seitenquelle anzeigen". Suchen und finden Sie alle HTML-Eingabefelder im Quellcode. Notieren Sie sich den Namen für jedes der Felder, die Sie im Formular eingegeben haben. Diese Informationen werden benötigt, um Ihr Szenario in PushingBox zu erstellen.

Schritt 6: PushingBox konfigurieren

PushingBox konfigurieren
PushingBox konfigurieren
PushingBox konfigurieren
PushingBox konfigurieren

Notieren Sie sich die URL-Adresse des zuvor erstellten Formulars (während Sie das ausgefüllte Formular anzeigen) und kopieren Sie diese Adresse. Es sollte ähnlich aussehen wie diese Adresse:

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

Diese Adresse wird verwendet, um Ihren PushingBox-Dienst zu erstellen, außer dass sie mit ' /formResponse ' anstelle von '/viewform ' enden muss. Stellen Sie abschließend sicher, dass Sie die vom Dienst verwendete Methode in POST ändern.

Um ein Szenario in PushingBox zu erstellen, werden die zuvor aus dem Formular gesammelten Daten für jedes der Eingabefelder benötigt. Erstellen Sie ein Szenario vom Typ CustomURL, wie im obigen Foto zu sehen. Es sollte ähnlich aussehen:

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

Jeder Eintrag sollte mit den Feldern 'cnt' und 'time' Ihres Formulars übereinstimmen. Beenden Sie die Zeichenfolge in Feldern mit '&&submit=Submit', wie oben gezeigt.

Die mit Ihrem Szenario erstellte Geräte-ID wird im Python-Skript "sendgdocs.py" benötigt, um Daten über PushingBox an Google Docs zu übertragen.

Schritt 7: Die Daten

Die Daten
Die Daten
Die Daten
Die Daten

Dieses Programm ist derzeit so konfiguriert, dass alle 20 Minuten Daten gesammelt und an Google Docs gesendet werden. Dieses Intervall kann innerhalb der Skizze leicht geändert werden

Die gesendeten Daten sind die "Zählung", wie oft ein Vogel (oder ein anderes Objekt) die Kupferfolie auf der Sitzstange berührt. Es sendet auch die Gesamtzeit (Sekunden), die ein Vogel den Sensor während der Fütterung berührt hat.

Ich habe unterschiedliche Ergebnisse erlebt. Es hängt alles von dem Futter ab, das ich liefere, und den Vögeln, die in der Gegend sind. Wenn die Grackles in der Nähe sind, können sie das Vogelhäuschen der Reihe nach entleeren. Sie können das Futter mit ihren Schnäbeln sehr schnell überall verstreuen.

Ich habe zwei Vogelhäuschen, aber nur einer hat den Monitor angeschlossen. Daher zeigen meine Daten, dass ich zwischen den Nachfüllungen zwischen 1.000 und 1.400 Zählungen erhalte und die Kapazität des Feeders 6 lbs beträgt. Einige dieser Zählungen sind jedoch Doppelzählungen, da Vögel auf mehr als einem Barsch sitzen. Auf jeden Fall hat es Spaß gemacht, den Feeder zu beobachten und die Daten zu untersuchen.

Empfohlen: