Turinys:

„Tinyduino LoRa Based Pet Tracker“: 7 žingsniai
„Tinyduino LoRa Based Pet Tracker“: 7 žingsniai

Video: „Tinyduino LoRa Based Pet Tracker“: 7 žingsniai

Video: „Tinyduino LoRa Based Pet Tracker“: 7 žingsniai
Video: First GPS Arduino Project by ChatGPT 2024, Lapkritis
Anonim
„Tinyduino LoRa“įsikūręs naminių gyvūnėlių stebėtojas
„Tinyduino LoRa“įsikūręs naminių gyvūnėlių stebėtojas

Kas nenori turėti augintinių ?? Tie pūkuoti draugai gali jus pripildyti meilės ir laimės. Tačiau skausmas dėl jų trūkumo yra pražūtingas. Mūsų šeima turėjo katę, vardu Thor (paveikslėlis aukščiau) ir jis buvo nuotykių mylėtojas. Daug kartų jis grįžo po savaitės kelionių dažnai su sužalojimais, todėl mes stengėmės jo neišleisti. Bet kas ne, jis vėl išėjo, bet negrįžo: (Net po kelių savaičių neradome nedidelio pėdsako. Mano šeima nenorėjo turėti daugiau kačių, nes jo netektis buvo labai traumuojanti. Taigi nusprendžiau pasižiūrėti naminių gyvūnėlių stebėjimo priemonėms. Tačiau daugumai komercinių sekėjų reikėjo prenumeratos arba jie yra sunkūs katėms. Yra keletas gerų radijo ryšio sekėjų, tačiau norėjau sužinoti tikslią vietą, nes didžiąją dienos dalį nebūsiu namuose. Taigi nusprendžiau sukurti sekiklį su „Tinyduino“ir „LoRa“moduliu, siunčiantį vietą į bazinę stotį mano namuose, kuri atnaujina vietą į programą.

P. S. Prašau atleisti už prastos kokybės vaizdus.

1 žingsnis: reikalingi komponentai

  1. „TinyDuino“procesoriaus plokštė
  2. „Tinyshield“GPS
  3. ESP8266 „WiFi“kūrimo lenta
  4. Tikiuosi RF RFM98 (W) (433 MHz) x 2
  5. „Tinyshield Proto Board“
  6. USB „Tinyshield“
  7. Ličio polimerų baterija - 3,7 V (svoriui sumažinti naudojau 500 mAh)
  8. Lituoklis
  9. Perjungimo laidai (nuo moterų iki moterų)

2 žingsnis: siųstuvas

Siųstuvas
Siųstuvas
Siųstuvas
Siųstuvas

Turime prijungti „LoRa“siųstuvą -imtuvą prie „tinyduino“. Norėdami tai padaryti, turime lituoti laidus iš RFM98 modulio į „tinyshield“prototipą. Bendravimui naudoju „RadioHead“biblioteką, o ryšys atliekamas pagal dokumentus.

Protoboard RFM98

GND -------------- GND

D2 -------------- DIO0

D10 -------------- NSS (CS lusto pasirinkimas)

D13 -------------- SCK (SPI laikrodis)

D11 -------------- MOSI (SPI duomenys įeina)

D12 -------------- MISO (SPI duomenys išvesti)

3.3V RFM98 kaištis prijungtas prie akumuliatoriaus +ve.

PASTABA: Pagal duomenų lapą didžiausia įtampa, kurią galima naudoti RFM98, yra 3,9 V. Prieš prijungdami patikrinkite akumuliatoriaus įtampą

RFM98 naudoju spiralinę anteną, nes tai sumažintų sekimo priemonės dydį.

Pradėkite nuo „tinyduino“procesoriaus kamino apačioje, po to - „tinyshield GPS“, o po to - protoboardą viršuje. Lituoklio galvutės po protoboardu gali šiek tiek erzinti; mano atveju jis palietė GPS skydą po juo, todėl aš izoliavau protobooto apačią elektros juosta. Štai ir baigėme siųstuvo statybą !!!

Tada siųstuvas gali būti prijungtas prie akumuliatoriaus ir pritvirtintas prie antkaklio.

3 žingsnis: bazinė stotis

Bazinė stotis
Bazinė stotis
Bazinė stotis
Bazinė stotis

ESP8266 „WiFi“kūrimo lenta yra puikus pasirinkimas, jei norite prijungti savo projektą prie interneto. RFM98 siųstuvas -imtuvas yra prijungtas prie ESP8266 ir gauna vietos atnaujinimus iš sekimo priemonės.

ESP8266 RFM98

3.3V ---------- 3.3V

GND ---------- GND

D2 ---------- DIO0

D8 ---------- NSS (CS lusto pasirinkimas)

D5 ---------- SCK (SPI laikrodis)

D7 ---------- MOSI (SPI duomenys įeina)

D6 ---------- MISO (SPI duomenys išvesti)

Maitinimas į bazinę stotį buvo pagamintas naudojant 5 V nuolatinės srovės adapterį. Turėjau keletą senų sieninių adapterių, todėl nuplėšiau jungtį ir prijungiau ją prie ESP8266 VIN ir GND kaiščių. Antena taip pat buvo pagaminta iš varinės vielos, kurios ilgis ~ 17,3 cm (ketvirtinės bangos antena).

4 žingsnis: programa

Programėlė
Programėlė
Programėlė
Programėlė
Programėlė
Programėlė
Programėlė
Programėlė

Aš naudoju „Blynk“(iš čia) kaip programą. Tai yra vienas iš paprasčiausių variantų, nes jis yra labai gerai dokumentuotas, o valdiklius galima tiesiog nuvilkti.

1. Sukurkite „Blynk“paskyrą ir sukurkite naują projektą naudodami ESP8266 kaip įrenginį.

2. Vilkite ir numeskite valdiklius iš valdiklio meniu.

3. Dabar kiekvienam iš šių valdiklių turite nustatyti virtualius kaiščius.

4. Naudokite tuos pačius kaiščius, kaip nurodyta aukščiau esančiame bazinės stoties šaltinio kode.

Nepamirškite naudoti savo projekto autorizacijos rakto „arduino“kode.

5 žingsnis: Kodas

Šis projektas naudoja „Arduino IDE“.

Kodas yra gana paprastas. Siųstuvas kas 10 sekundžių siunčia signalą ir tada laukia patvirtinimo. Jei gaunamas „aktyvus“patvirtinimas, jis įjungia GPS ir laukia, kol GPS atnaujins vietą. Per tą laiką jis vis tiek tikrins ryšį su bazine stotimi ir, jei ryšys nutrūks tarp GPS atnaujinimų, jis porą kartų bandys dar kartą, o jei vis tiek nebus prijungtas, GPS bus išjungtas ir sekimo priemonė atsijungs į įprastą rutiną (ty siunčiant signalą kas 10 sekundžių). Priešingu atveju GPS duomenys siunčiami į bazinę stotį. Vietoj to, jei gaunamas „sustabdymo“patvirtinimas (tarp jų ir pradžioje), siųstuvas sustabdo GPS ir grįžta prie įprastos rutinos.

Bazinė stotis klauso bet kokio signalo ir, jei signalas gaunamas, patikrina, ar programoje yra įjungtas mygtukas „rasti“. Jei jis įjungtas, vietovės vertės yra nuskaitytos. Jei jis yra „išjungtas“, bazinė stotis siunčia siųstuvui „sustabdymo“patvirtinimą. Galite pasirinkti klausytis signalo tik tuo atveju, jei įjungtas mygtukas „rasti“, bet pridėjau jį kaip saugos funkciją, kad žinotumėte, ar nutrūko ryšys, ir įspėti naudotoją (kažkas panašaus į geofenciją).

6 žingsnis: gaubtai

Korpusai
Korpusai
Korpusai
Korpusai
Korpusai
Korpusai

Sekiklis:

3D spausdinimas yra būdas, bet aš norėjau jį užklijuoti ant apykaklės. Tai netvarka, ir aš rimtai nežinau, ar katės norėtų tokios netvarkos ant kaklo.

Bazinė stotis:

Plastikinės talpyklos bazinei stočiai užteko. Jei norite jį montuoti lauke, gali tekti apsvarstyti neperšlampamus konteinerius.

ATNAUJINTI:

Aš galvojau padaryti sekimo įrenginio korpusą, bet kadangi neturėjau 3D spausdintuvo, maži konteineriai buvo paversti gaubtais:) Elektronikos mazgas buvo laikomas viename inde, o akumuliatorius - kitame.

Aš naudoju blokus kaip elektronikos gaubtą. Laimei, buvo dangtelis, kuris jį gražiai pritvirtino. Baterijai buvo naudojamas „Tic-Tac“konteineris. Siekiant apsaugoti akumuliatorių, talpykla buvo sutrumpinta taip, kad baterija būtų nepriekaištingai pritvirtinta. Talpykloms pritvirtinti prie apykaklės buvo naudojami sąvaržėlės.

7 žingsnis: bandymai ir išvados

Su kuo mes tai išbandytume ?? Ne, taip nėra, kad dabar neturiu kačių. Na turiu du;)

Bet jie yra per maži, kad galėtų dėvėti apykaklę, ir aš nusprendžiau tai išbandyti pats. Taigi aš su pėdsekiu pasivaikščiojau po savo namus. Bazinė stotis buvo laikoma 1 m aukštyje ir dažniausiai tarp sekimo ir bazinės stoties buvo sunki augmenija ir pastatai. Man buvo taip liūdna, kad netikėtai pritrūkau vietos (nors kai kuriose vietose signalas silpnas). Tačiau tokioje vietovėje pastebimas ~ 100 m atstumas be didelių duomenų praradimų.

Mano atliktas diapazono bandymas yra čia.

Atrodo, kad GPS veikia šiek tiek normaliai esant sunkiai augmenijai, tačiau kartais atrodo, kad vieta nukrypsta. Taigi aš taip pat nekantrauju pridėti „WiFi“modulį (nes netoliese esančiuose namuose yra tiek daug maršrutizatorių), kad greičiau gautumėte šiurkščią vietą (matuojant daugelio maršrutizatorių signalo stiprumą ir trikampius).

Žinau, kad tikrasis atstumas turėtų būti daug didesnis, tačiau dėl dabartinio uždarymo scenarijaus negaliu daug išsikraustyti iš namų. Ateityje tikrai išbandysiu iki kraštutinumų ir atnaujinsiu rezultatus:)

Iki tol laimingas murkimas ….

Rekomenduojamas: