İçindekiler:
- Adım 1: Gerekli Bileşenler
- Adım 2: Verici
- 3. Adım: Baz İstasyonu
- 4. Adım: Uygulama
- Adım 5: Kod
- 6. Adım: Muhafazalar
- 7. Adım: Test Etme ve Sonuç.
Video: Tinyduino LoRa Tabanlı Pet Tracker: 7 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:16
Kim evcil hayvan sahibi olmak istemez ki?? O tüylü dostlar içini sevgi ve mutlulukla doldurabilir. Ama onları özlemenin acısı yıkıcıdır. Ailemizin Thor(yukarıdaki resim) adında bir kedisi vardı ve macerayı seven bir gezgindi. Haftalık gezilerden sonra çoğu kez sakatlıklarla geri döndü ve biz de onu bırakmamaya çalıştık. Ama ne olmadı, yine çıktı ama geri dönmedi:(Haftalarca aramamıza rağmen en ufak bir iz bulamadık. Onu kaybetmek çok travmatik olduğu için ailem artık kedi beslemek konusunda isteksiz davrandı. Ben de bakmaya karar verdim. evcil hayvan izleyicileri üzerine. Ancak ticari izleyicilerin çoğu abonelik gerektiriyor veya bir kedi için ağır. Bazı iyi radyo yönü tabanlı izleyiciler var ama günün büyük bölümünde evde olmayacağım için doğru bir yer bilmek istedim. Bu yüzden Tinyduino ve evimdeki baz istasyonuna konum gönderen ve konumu bir uygulamaya güncelleyen bir LoRa modülü ile bir izleyici yapmaya karar verdim.
not düşük kaliteli görüntüler için lütfen beni affet.
Adım 1: Gerekli Bileşenler
- TinyDuino İşlemci Kartı
- Minik Kalkan GPS
- ESP8266 WiFi geliştirme kartı
- Umut RF RFM98(W) (433 MHz) x 2
- Tinyshield Proto Kurulu
- USB Minik Kalkan
- Lityum polimer pil - 3,7 V (ağırlığı azaltmak için 500mAh kullandım)
- Havya
- Atlama telleri (Dişi - Dişi)
Adım 2: Verici
LoRa alıcı-vericiyi tinyduino'ya bağlamamız gerekiyor. Bunun için RFM98 modülünden Tinyshield protoboarduna tel lehimlememiz gerekiyor. İletişim için RadioHead kitaplığını kullanıyor olurdum ve bağlantı belgelere göre yapılır.
Protokol RFM98
GND -------------- GND
D2 -------------- DIO0
D10 -------------- NSS (CS çip seçimi)
D13 -------------- SCK (SPI saati girişi)
D11 -------------- MOSI (SPI Veri girişi)
D12 -------------- MISO (SPI Veri çıkışı)
RFM98'in 3.3V pini +ve aküye bağlanır.
NOT: Veri sayfasına göre, RFM98'e uygulanabilecek maksimum voltaj 3,9V'dir. Bağlamadan önce akü voltajını kontrol edin
İzleyicinin boyutunu küçülteceği için RFM98 için sarmal bir anten kullandım.
Yığının en altındaki tinyduino işlemci ile başlayın, ardından tinyshield GPS ve ardından en üstteki protoboard ile başlayın. Protokolün altındaki lehim kafaları biraz can sıkıcı olabilir; benim durumumda altındaki gps kalkanına dokundu, bu yüzden protokolün altını elektrik bandıyla yalıttım. İşte bu, vericinin yapımını tamamladık!!!
Verici ünitesi daha sonra pile bağlanabilir ve evcil hayvanın tasmasına takılabilir.
3. Adım: Baz İstasyonu
Projenizi internete bağlamak istiyorsanız, ESP8266 WiFi geliştirme kartı mükemmel bir seçimdir. RFM98 alıcı-verici ESP8266'ya bağlıdır ve izleyiciden konum güncellemelerini alır.
ESP8266 RFM98
3.3V ---------- 3.3V
GND ---------- GND
D2 ---------- DIO0
D8 ---------- NSS (CS çip seçimi)
D5 ---------- SCK (SPI saati girişi)
D7 ---------- MOSI (SPI Veri girişi)
D6 ---------- MISO (SPI Veri çıkışı)
Baz istasyonuna güç kaynağı 5V DC duvar adaptörü kullanılarak yapılmıştır. Etrafta bazı eski duvar adaptörleri vardı, bu yüzden konektörü söküp ESP8266'nın VIN ve GND pinlerine bağladım. Ayrıca anten ~17,3 cm uzunluğunda bir bakır telden yapılmıştır (çeyrek dalga anteni).
4. Adım: Uygulama
Uygulama olarak Blynk'i (buradan) kullandım. Bu, çok iyi belgelendiğinden ve widget'lar yalnızca sürükleyip bırakılabildiğinden en kolay seçeneklerden biridir.
1. Bir Blynk hesabı oluşturun ve cihaz olarak ESP8266 ile yeni bir proje yapın.
2. Widget'ları Widget menüsünden Sürükle ve Bırak.
3. Şimdi, bu widget'ların her biri için sanal pinler ayarlamanız gerekiyor.
4. Baz istasyonu kaynak kodunda yukarıdaki ile aynı pinleri kullanın.
Arduino kodunda proje yetkilendirme anahtarınızı kullanmayı unutmayın.
Adım 5: Kod
Bu proje Arduino IDE kullanıyor.
Kod oldukça basit. Verici her 10 saniyede bir sinyal gönderecek ve daha sonra bir onay bekleyecekti. Eğer "aktif" bir alındı alındıysa, GPS'i açacak ve GPS'den konum güncellemesini bekleyecekti. Bu süre boyunca, baz istasyonuyla olan bağlantıyı kontrol etmeye devam edecek ve GPS güncellemeleri arasında bağlantı kesilirse, birkaç kez yeniden deneyecek ve hala bağlı değilse, GPS kapatılacak ve izleyici geri dönecektir. normal rutine (yani her 10 saniyede bir sinyal gönderme). Aksi takdirde, GPS verileri baz istasyonuna gönderilir. Bunun yerine, bir "dur" bildirimi alınırsa (başlangıçta olduğu kadar arada da), verici GPS'i durdurur ve ardından normal rutine geri döner.
Baz istasyonu herhangi bir sinyali dinler ve bir sinyal alınırsa uygulama içindeki "bul" düğmesinin açık olup olmadığını kontrol eder. "Açık" ise konum değerleri alınır. "Kapalı" ise, baz istasyonu vericiye "dur" onayı gönderir. Yalnızca "bul" düğmesi açıksa sinyali dinlemeyi seçebilirsiniz, ancak arada bağlantının kaybolup kaybolmadığını bilmek ve kullanıcıyı uyarmak için bir güvenlik özelliği olarak ekledim (geofence gibi bir şey).
6. Adım: Muhafazalar
İzleyici:
3D baskı gitmenin yolu ama ben bunu yakaya bantlamayı tercih ettim. Bu bir karışıklık ve kedilerin boyunlarına böyle bir karışıklık yapmak isteyip istemediklerini cidden bilmiyorum.
Baz istasyonu:
Baz istasyonu için plastik bir kap fazlasıyla yeterliydi. Dışarıya monte etmek istiyorsanız, su geçirmez kapları düşünmeniz gerekebilir.
GÜNCELLEME:
Tracker için kasa yapmayı düşündüm ama 3D yazıcım olmadığı için küçük konteynerler kasaya dönüştü:) Elektronik aksamı bir kutuda, pili diğerinde kaldı.
Elektronik için bir muhafaza olarak blokları kullandım. Neyse ki, ona güzel uyan bir kapak vardı. Batarya için bir Tic-Tac kabı kullanıldı. Pili sabitlemek için, pilin mükemmel şekilde oturması için kutu kısaltılmıştır. Kapları yakaya tutturmak için ataşlar kullanıldı.
7. Adım: Test Etme ve Sonuç.
Kimin üzerinde test edeceğiz? Hayır, şu anda kedim olmadığı için değil. Valla bende iki tane var;)
Ama tasmayı takmak için çok küçükler ve kendim denemeye karar verdim. Bu yüzden izci ile evimde dolaştım. Baz istasyonu 1m yükseklikte tutuldu ve çoğu zaman izleyici ile baz istasyonu arasında yoğun bitki örtüsü ve binalar vardı. O kadar üzüldüm ki aniden yerim bitti (ancak bazı yerlerde sinyal zayıf). Ancak böyle bir arazide, fazla veri kaybı olmadan ~100m menzil elde etmek çok kayda değerdir.
Yaptığım menzil testi burada.
GPS, yoğun bitki örtüsü altında biraz normal çalışıyor gibi görünüyor, ancak bazen konum kayıyor gibi görünüyor. Bu nedenle, daha hızlı bir kaba konum elde etmek için (birçok yönlendiriciden gelen sinyal gücünü ölçerek ve üçgenleme yaparak) bir WiFi modülü eklemeyi dört gözle bekliyorum (yakındaki evlerde çok fazla yönlendirici olduğundan).
Gerçek menzilin çok daha fazla olması gerektiğini biliyorum, ancak şu anki kilitlenme senaryosu nedeniyle evden pek dışarı çıkamıyorum. Gelecekte, kesinlikle aşırı uçlarda test eder ve sonuçları güncellerdim:)
O zamana kadar, mutlu mırıldanmalar…..
Önerilen:
Tarım Iot için LoRa Tabanlı Görsel İzleme Sistemi - Firebase ve Angular Kullanarak Ön Yüzlü Bir Uygulama Tasarlama: 10 Adım
Tarım IoT için LoRa Tabanlı Görsel İzleme Sistemi | Firebase & Angular Kullanarak Öne Çıkan Bir Uygulama Tasarlamak: Önceki bölümde, sensörlerin firebase Realtime veritabanını doldurmak için loRa modülüyle nasıl çalıştığından bahsettik ve tüm projemizin nasıl çalıştığını çok yüksek seviyeli bir diyagramı gördük. Bu bölümde nasıl yapabileceğimizden bahsedeceğiz
LoRa Tabanlı Uzaktan Kumanda - Cihazları Uzak Mesafelerden Kontrol Edin: 8 Adım
LoRa Tabanlı Uzaktan Kumanda | Uzak Mesafelerden Kontrol Aletleri: Hey, naber, çocuklar! Akarsh burada CETech'ten. Bu projede, LED'ler, motorlar gibi çeşitli enstrümanları kontrol etmek için kullanılabilecek bir uzaktan kumanda oluşturacağız veya günlük hayatımızdan bahsedersek ev uygulamamızı kontrol edebiliriz.
MicroPython ESP32 Tabanlı Lora Ağ Geçidi: 10 Adım (Resimlerle)
MicroPython ESP32 Tabanlı Lora Ağ Geçidi: Lora son yıllarda çok popüler oldu. Bu teknolojiyi kullanan kablosuz iletişim modülü genellikle ucuzdur (serbest spektrum kullanarak), küçük boyutludur, enerji verimlidir ve uzun bir iletişim mesafesine sahiptir ve esas olarak karşılıklı iletişim için kullanılır
Arduino Tabanlı Temassız Kızılötesi Termometre - Arduino Kullanan IR Tabanlı Termometre: 4 Adım
Arduino Tabanlı Temassız Kızılötesi Termometre | Arduino Kullanan IR Tabanlı Termometre: Merhaba arkadaşlar, bu talimatta arduino kullanarak temassız bir Termometre yapacağız. Bazen sıvının/katının sıcaklığı çok yüksek veya çok düşük olduğundan, onunla temas kurmak ve okumak zordur. o sahnede sıcaklık
Ev Aletlerini LoRa Üzerinden Kontrol Edin - Ev Otomasyonunda LoRa - LoRa Uzaktan Kumanda: 8 Adım
Ev Aletlerini LoRa Üzerinden Kontrol Edin | Ev Otomasyonunda LoRa | LoRa Uzaktan Kumanda: Elektrikli cihazlarınızı internet olmadan uzun mesafelerden (Kilometre) kontrol edin ve otomatikleştirin. Bu LoRa ile mümkün! Naber beyler? Akarsh burada CETech'ten.Bu PCB ayrıca bir OLED ekrana ve 3 röleye sahiptir