İçindekiler:

Kuş Besleyici Monitörü: 7 Adım (Resimlerle)
Kuş Besleyici Monitörü: 7 Adım (Resimlerle)

Video: Kuş Besleyici Monitörü: 7 Adım (Resimlerle)

Video: Kuş Besleyici Monitörü: 7 Adım (Resimlerle)
Video: Muhabbet Kuşu Sizi Sevip Sevmediği Nasıl Anlaşılır 2024, Temmuz
Anonim
Kuş Besleyici Monitörü
Kuş Besleyici Monitörü

Bu, kuş besleyicimi ziyaret eden kuş sayısını izlemenin yanı sıra beslenme için harcanan süreyi kaydetmeye yönelik bir projedir. Beslenen kuşları tespit etmek ve kaydetmek için bir Arduino Yún ve kapasitif dokunmatik sensör Adafruit CAP1188 kullandım. Rutin olarak, biriken veriler, yemliği ziyaret eden kuşların sayısını ve harcadığı zamanı kaydetmek için bir Google Dokümanlar elektronik tablosuna gönderilir.

Veriler yalnızca gün doğumundan önce ve gün batımından sonra belirli bir süre boyunca iletilir.

Adım 1: Parçalar

Parçalar
Parçalar

Bunlar, projemi bir araya getirmek için kullandığım parçaların bir listesi. Projenizi oluşturmak için çeşitli proje kutuları kullanabilirsiniz, ancak bunlar o zamanlar elimde olan şeylerdi.

1 6x3x2" Proje Kutusu1 3x2x1" Proje Kutusu1 rulo 1/4" Bakır Folyo Bant1 CAP1188 8 Tuşlu Kapasitif Dokunmatik Sensör1 Arduino Yun1 micro-SD kart2 DB-9 erkek konnektör2 DB-9 dişi konnektör1 Kuş Besleyici (CedarWorks Plastik Hazne Kuş Besleyici)1 Otomotiv tedarik mağazasından Kuyruk Lambası konektörü

Adım 2: Kablolama

kablolama
kablolama

Arduino Yun ve CAP1188, başlangıçta sensörün donanımdan sıfırlanmasını sağlamak için kablolanmıştır. Bir, beş veya sekiz sensörlü başka kapasitif dokunmatik sensörler de mevcuttur. Kuş besleyicimin altı tarafı olduğu için sekizi seçtim.

kablolama:

CAP1188 SDA == Yún Digital 2 CAP1188 SCK == Yún Digital 3 CAP1188 RST == Yún Digital 9 CAP1188 VIN == Yún 3.3V veya 5V CAP1188 GND == Yún GND CAP1188 C1-C8 == Her kanaldaki kablolara bağlanın

Arduino için güç, garajımdan yeraltına bir kablo geçirilerek ve kuş besleme standı olarak kullanılan borudan yukarıya doğru çalıştırılarak harici olarak sağlandı. Tel, garajdaki bir 5-VDC güç kaynağına bağlandı. Bu proje pillerle çalışmalı, ancak pilleri rutin olarak değiştirme güçlüğünü istemedim.

Proje Kutusunu Arduino Yun ve CAP1188 içeren kutuya bağlamak için her iki ucunda DB-9 konektörlü 16 uzunluğunda bir kablo oluşturdum. Kapasitif sensörün mümkün olduğunca tünellere yakın yerleştirilmesi gerekiyor.

Adım 3: Python Paketlerini ve Komut Dosyalarını Yükleme

CAP1188, bu sensör için kitaplıkları indirip kurmanızı gerektirir. Kütüphane aşağıdaki sitede bulunabilir:

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

Kitaplığı yükleme yönergeleri ve örnekler, zip kabı içindeki bir README.txt dosyasında bulunur.

Bu program, belirli konumunuz için gün doğumu ve gün batımını izler ve gün doğumundan önce belirli bir zamanda ve gün batımından sonra eşit bir süre için saymaya ve zamanlamaya başlar. Bu süreden önce ve sonra, e-tablonuza hiçbir veri gönderilmez. Bu proje, Yahoo!'dan gün doğumu ve gün batımı bilgilerini okumak için bir python betiği kullanır! hava durumu her akşam veya başlangıçta bu saatleri alın.

Aşağıdaki python kütüphanesinin Arduino Yún'e indirilmesi ve kurulması gerekmektedir.

python-weather-apipywapi -

Bu kitaplığı kurmak için talimatlar yukarıdaki web sitesinde bulunmaktadır.

Python Komut Dosyaları'getastonomy.py' python komut dosyasındaki konum kimliğinin, konumunuzu içerecek şekilde değiştirilmesi gerekiyor. Şu anda Sugar Land, Texas için yapılandırılmıştır. Kimliğinizi bulmanın bir yolu aşağıdaki web sitesine gitmektir:

Hava Konum Kodları

Konumunuzu girin, konum kimliğiniz görünecektir. Komut satırındaki USTX1312'yi konum kimliğinizle değiştirin.

sonuç = pywapi. get_weather_from_weather_com (' USTX1312 ')

Bu, komut dosyasının konumunuz için gün doğumu ve gün batımını almasına olanak tanır. 'sendgdocs.py' dosyasını değiştirme talimatları 6. Adımda yer almaktadır.

Her iki komut dosyası da değiştirildikten sonra, bunları Arduino Yun'un '/mnt/sda1/' mikro-SD kart dizinine taşımalısınız.

Adım 4: Kuş Besleyicinin Kablolanması

Kuş Besleyicinin Kablolanması
Kuş Besleyicinin Kablolanması
Kuş Besleyicinin Kablolanması
Kuş Besleyicinin Kablolanması

Besleyici üzerindeki tüneklerin her biri 1/4 genişliğinde kendinden yapışkanlı bakır folyo bantla kaplandı. Bant ve levrek içinden küçük bir delik açıldı ve folyo şeride bir tel lehimlendi ve besleyicinin altına yönlendirildi.

Not: Yukarıda gösterilen kuş yemliği ile her bir folyo şeridin uçları arasında 1 1/4" - 1 1/2" boşluk bırakılmasını tavsiye ederim. Çakıllar ve güvercinler gibi daha büyük kuşların, birbirine yakın yerleştirildikleri takdirde aynı anda iki folyo şeride dokunabildiklerini keşfettim.

CAP1188'i içeren Proje Kutusunu monte etmek için düz bir alan sağlamak için bir tahta blok şekillendirildi ve besleyicinin altına yapıştırıldı. Proje Kutusuna ve ayrıca ahşap bloğa tutturma aracı sağlamak için cırt bant uygulandı.

Kuş besleyiciyi yeniden doldurmak için garajın içindeki elektriği çıkarıyorum. Ardından, DB-9 konektörünü besleyicinin altına takılı Proje Kutusundan ayırıyorum, bu da Proje Kutusu hala altta bağlıyken besleyiciyi borudan kaldırmama izin veriyor. Besleyici yeniden doldurulduktan sonra tekrar boru sehpasına yerleştiriyorum; DB-9 kablosunu bağlayın; ve gücü takın.

Adım 5: Bir Google Doküman Formu Oluşturma

Google Doküman Formu Oluşturma
Google Doküman Formu Oluşturma

Bir Google Dokümanlar e-tablosu veri göndermek için önce gerekli tüm alanları içeren bir Form oluşturmanız gerekir. Örneğimde, tamsayı girişi olan altı 'cnt' alanım ve altı 'zaman' alanım var. Örneğin, alanlar 'cnt1', 'time1', 'cnt2', 'time2' vb. olarak adlandırılır. Formu tamamladığınızda, bitmiş formu görmek için "Canlı formu görüntüle"yi tıklayın. Formu görüntülerken, sayfaya sağ tıklayın ve "Sayfa kaynağını görüntüle" seçeneğini seçin. Kaynak kodundaki tüm HTML "giriş" alanlarını arayın ve bulun. Formda girdiğiniz alanların her birinin adını not edin. Bu bilgi, Senaryonuzu PushingBox'ta oluşturmak için gereklidir.

Adım 6: PushingBox'ı Yapılandırma

PushingBox'ı Yapılandırma
PushingBox'ı Yapılandırma
PushingBox'ı Yapılandırma
PushingBox'ı Yapılandırma

Daha önce oluşturduğunuz Formun url adresini not edin (doldurulmuş formu görüntülerken) ve bu adresi kopyalayın. Bu adrese benzer görünmelidir:

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

Bu adres, PushingBox Hizmetinizi oluşturmak için kullanılır, ancak '/viewform' yerine ' /formResponse ' ile bitmesi gerekir. Son olarak, Hizmet tarafından kullanılan Yöntemi POST olarak değiştirdiğinizden emin olun.

PushingBox'ta bir Senaryo oluşturmak, giriş alanlarının her biri için daha önce formdan toplanan verileri gerektirecektir. Yukarıdaki fotoğrafta görüldüğü gibi CustomURL tipi bir Senaryo oluşturun. Şuna benzer görünmelidir:

entry.184762354=$cnt1$&entry.1970438117=$ti…6352124=$cnt6$&entry.54370319=$time6$&&gönder=Gönder

Her giriş, formunuzun 'cnt' ve 'time' alanlarıyla eşleşmelidir. Yukarıda görüldüğü gibi '&&submit=Submit' ile alanlardaki dizeyi sonlandırın.

Verileri PushingBox aracılığıyla Google Dokümanlar'a iletmek için, 'sendgdocs.py' python komut dosyasında Senaryonuzla oluşturulan Cihaz Kimliğine ihtiyaç duyulacaktır.

7. Adım: Veriler

Veri
Veri
Veri
Veri

Bu program şu anda her 20 dakikada bir veri toplayacak ve Google Dokümanlar'a gönderecek şekilde yapılandırılmıştır. Bu aralık çizim içinde kolayca değiştirilebilir

Gönderilen veri, bir kuşun (veya başka bir nesnenin) levrek üzerindeki bakır folyoya kaç kez temas ettiğinin "sayısıdır". Ayrıca kuşun beslenirken sensöre temas ettiği toplam süreyi (saniye) de gönderir.

Farklı sonuçlar yaşadım. Her şey sağladığım yemlere ve bölgedeki kuşlara bağlı. Çeneler bölgedeyse, kuş yemliğini sıralama sırasına göre boşaltabilirler. Gagalarıyla yemi çok hızlı bir şekilde her yere dağıtabilirler.

İki kuş besleyicim var, ancak yalnızca bir tanesine monitör bağlı. Bu nedenle, verilerim yeniden doldurmalar arasında 1.000 ila 1.400 sayım aldığımı ve besleyicinin kapasitesinin 6 libre olduğunu gösteriyor. Bununla birlikte, bu sayıların bazıları, birden fazla levrek üzerinde duran kuşların bir sonucu olarak çift sayımlardır. Her durumda, besleyiciyi izlemek ve verileri incelemek eğlenceliydi.

Önerilen: