Mundarija:

GPS modulli Arduino Mega interfeysi (Neo-6M): 8 qadam
GPS modulli Arduino Mega interfeysi (Neo-6M): 8 qadam

Video: GPS modulli Arduino Mega interfeysi (Neo-6M): 8 qadam

Video: GPS modulli Arduino Mega interfeysi (Neo-6M): 8 qadam
Video: GPS/GLONASS/BeiDou приемник VK2828U8G5LF совместимый с UBLOX NEOM8N 2024, Noyabr
Anonim
GPS moduli bilan Arduino Mega interfeysi (Neo-6M)
GPS moduli bilan Arduino Mega interfeysi (Neo-6M)

Ushbu loyihada men GPS modulini (Neo-6M) Arduino Mega bilan qanday bog'lashni ko'rsatdim. TinyGPS kutubxonasi uzunlik va kenglik ma'lumotlarini ko'rsatish uchun ishlatiladi va TinyGPS ++ ketma -ket monitorda kenglik, uzunlik, balandlik, tezlik va sun'iy yo'ldoshlar sonini ko'rsatish uchun ishlatiladi.

1 -qadam: kerakli komponentlar

Uskuna

  • Arduino Mega ==> 30 dollar
  • Neo-6M GPS moduli ==> 30 dollar

Dasturiy ta'minot

Arduino IDE

Loyihaning umumiy qiymati - 60 dollar

2 -qadam: GPS haqida ma'lumot

GPS nima

Global joylashishni aniqlash tizimi (GPS)-kamida 24 sun'iy yo'ldoshdan tashkil topgan sun'iy yo'ldoshli navigatsiya tizimi. GPS har qanday ob -havo sharoitida, dunyoning istalgan nuqtasida, 24 soat ishlaydi, hech qanday obuna to'lovisiz yoki sozlash uchun to'lovsiz.

GPS qanday ishlaydi

GPS yo'ldoshlari aniq orbitada Yerni kuniga ikki marta aylanib chiqadi. Har bir sun'iy yo'ldosh o'ziga xos signal va orbital parametrlarni uzatadi, bu GPS qurilmalariga sun'iy yo'ldoshning aniq manzilini dekodlash va hisoblash imkonini beradi. GPS qabul qiluvchilar ushbu ma'lumot va trilateratsiyadan foydalanuvchining aniq manzilini hisoblash uchun foydalanadilar. Aslida, GPS qabul qiluvchisi har bir sun'iy yo'ldoshgacha bo'lgan masofani uzatilgan signalni qabul qilish vaqtiga qarab o'lchaydi. Yana bir nechta sun'iy yo'ldoshlardan masofani o'lchash orqali qabul qiluvchining foydalanuvchining pozitsiyasini aniqlashi va uni ko'rsatish mumkin.

O'zingizning 2-D pozitsiyangizni (kenglik va uzunlik) hisoblash va harakatni kuzatish uchun GPS qabul qilgich kamida 3 yo'ldosh signaliga qulflangan bo'lishi kerak. 4 yoki undan ortiq sun'iy yo'ldosh ko'rinsa, qabul qiluvchi sizning 3 o'lchamli joylashuvingizni (kenglik, uzunlik va balandlik) aniqlay oladi. Umuman olganda, GPS qabul qiluvchisi 8 yoki undan ko'p yo'ldoshni kuzatib boradi, lekin bu kunning vaqtiga va er yuzida qaerda bo'lishingizga bog'liq. Sizning pozitsiyangizni aniqlagandan so'ng, GPS birligi boshqa ma'lumotlarni hisoblab chiqishi mumkin, masalan

  • Tezlik
  • Rulman
  • Trek
  • Safar masofasi
  • Belgilangan joyga masofa

Signal nima

GPS yo'ldoshlari kamida 2 ta kam quvvatli radio signal uzatadi. Signallar ko'rish chizig'i bo'ylab o'tadi, ya'ni ular bulutlar, shisha va plastmassadan o'tadi, lekin binolar va tog'lar singari qattiq jismlardan o'tmaydi. Biroq, zamonaviy qabul qiluvchilar sezgir va odatda uylarni kuzatib borishi mumkin. GPS signalida 3 xil ma'lumot mavjud

Soxta tasodifiy kod

Bu ID. qaysi sun'iy yo'ldosh ma'lumot uzatayotganini aniqlaydigan kod. Qaysi sun'iy yo'ldoshlardan signal olayotganingizni qurilmangizning sun'iy yo'ldosh sahifasida ko'rishingiz mumkin.

Ephemeris ma'lumotlari

Ephemeris ma'lumotlari sun'iy yo'ldoshning joylashishini aniqlash uchun kerak va sun'iy yo'ldoshning holati, joriy sana va vaqt haqida muhim ma'lumotlarni beradi.

Almanax ma'lumotlari

Almanax ma'lumotlari GPS qabul qiluvchisiga har bir GPS sun'iy yo'ldoshi kun davomida istalgan vaqtda bo'lishi kerakligini aytadi va shu sun'iy yo'ldosh va tizimdagi boshqa sun'iy yo'ldoshlarning orbital ma'lumotlarini ko'rsatadi.

3-qadam: Neo-6M GPS moduli

NEO-6M GPS moduli quyidagi rasmda ko'rsatilgan. U tashqi antennaga ega va bosh pinlari bilan ta'minlanmagan. Shunday qilib, siz uni lehimlashingiz kerak bo'ladi.

NEO-6M GPS moduli haqida umumiy ma'lumot

NEO-6M GPS chipi

Modulning yuragi u-bloxdan NEO-6M GPS chipidir. U 50 ta kanalda 22 ta sun'iy yo'ldoshni kuzatishi mumkin va sanoatning eng yuqori sezuvchanlik darajasiga erishadi, ya'ni -161 dB kuzatish, shu bilan birga faqat 45mA quvvat oqimini sarflaydi. U-blox 6 joylashishni aniqlash dvigateli, shuningdek, 1 soniyadan kamroq vaqtni tuzatishga (TTFF) ega. Chipning eng yaxshi xususiyatlaridan biri bu quvvatni tejash rejimi (PSM). Qabul qiluvchining qismlarini tanlab yoqish va o'chirish orqali tizim quvvat sarfini kamaytirish imkonini beradi. Bu modulning quvvat sarfini atigi 11mA ga qisqartiradi, bu esa GPS qo'l soati kabi kuchga sezgir ilovalarga mos keladi. NEO-6M GPS chipining kerakli ma'lumotlar pinlari 0,1 dyuymli sarlavhalarga bo'linadi. Bunga UART orqali mikrokontroller bilan aloqa qilish uchun zarur bo'lgan pinlar kiradi.

Eslatma:- Modul standart tezligi 9600 bo'lgan 4800bps dan 230400bps gacha bo'lgan tezlikni qo'llab-quvvatlaydi.

Pozitsiyani tuzatish LED indikatori

NEO-6M GPS-modulida Position Fix holatini ko'rsatuvchi LED mavjud. U qanday holatda ekanligiga qarab har xil tezlikda miltillaydi

  1. Miltillovchi yo'q ==> bu sun'iy yo'ldoshlarni qidirayotganini bildiradi
  2. Har 1 soniyada miltillash - bu pozitsiyani tuzatish topilganligini anglatadi

3.3V LDO regulyatori

NEO-6M chipining ishchi kuchlanishi 2,7 dan 3,6 V gacha. Ammo, modul MICREL MIC5205 ultra past 3V3 regulyatori bilan birga keladi. Mantiqiy pinlar ham 5 voltga bardoshli, shuning uchun biz uni mantiqiy darajadagi konvertorni ishlatmasdan Arduino yoki har qanday 5V mantiqiy mikrokontrollerga osongina ulashimiz mumkin.

Batareya va EEPROM

Modul HK24C32 ikkita simli ketma -ket EEPROM bilan jihozlangan. U 4KB hajmga ega va I2C orqali NEO-6M chipiga ulangan. Modulda zaryadlanuvchi tugmachali batareya ham bor, u superkondensator vazifasini bajaradi.

Batareya bilan birga EEPROM batareyani qo'llab -quvvatlaydigan RAMni (BBR) saqlashga yordam beradi. BBR soat ma'lumotlarini, oxirgi joylashuv ma'lumotlarini (GNSS orbit ma'lumotlari) va modul konfiguratsiyasini o'z ichiga oladi. Ammo bu ma'lumotlarni doimiy saqlash uchun mo'ljallanmagan.

Batareya soat va oxirgi holatini saqlab qolganligi sababli, birinchi tuzatish vaqti (TTFF) 1 sekundgacha kamayadi. Bu juda tez joylashishni qulflashga imkon beradi.

Batareyasiz GPS har doim sovuqdan ishga tushadi, shuning uchun GPSni qulflash uchun ko'proq vaqt kerak bo'ladi. Quvvat ishlatilganda batareya avtomatik ravishda zaryadlanadi va ma'lumotni ikki haftagacha quvvatsiz saqlaydi.

Pinout

GND - bu asosiy pin va uni Arduino -dagi GND piniga ulash lozim

TxD (uzatuvchi) pin ketma -ket aloqa uchun ishlatiladi

RxD (Qabul qilgich) pinli ketma -ket aloqa uchun ishlatiladi

VCC modul uchun quvvat beradi. Siz uni to'g'ridan -to'g'ri Arduino -dagi 5V piniga ulashingiz mumkin

4 -qadam: Arduino Mega

Arduino-bu ochiq manbali elektronika platformasi, uni ishlatish uchun qulay bo'lgan apparat va dasturiy ta'minotga asoslangan. Arduino taxtasi kirishni o'qishi mumkin - sensordagi yorug'lik, tugmachadagi barmoq yoki Twitter -dagi xabar - va uni chiqishga aylantirish - dvigatelni yoqish, LEDni yoqish, Internetda biror narsani chop etish. Siz doskadagi mikrokontrollerga ko'rsatmalar to'plamini yuborib, nima qilish kerakligini taxtangizga ayta olasiz. Buning uchun siz Arduino dasturlash tili (simli aloqa) va ishlov berish asosida Arduino dasturiy ta'minotidan (IDE) foydalanasiz.

Arduino Mega

Arduino Mega 2560 - bu Atmega2560 -ga asoslangan mikrokontroller paneli.

  • Bortga 54 ta raqamli kirish -chiqish pimi va 16 ta analog pin o'rnatilgan bo'lib, ular qurilmani o'ziga xos qiladi va boshqalardan ajralib turadi. 54 ta raqamli kirish/chiqishning 15 tasi PWM (puls kengligi modulyatsiyasi) uchun ishlatiladi.
  • Taxtaga 16 MGts chastotali kristalli osilator qo'shilgan.
  • Kengash kompyuterdan taxtaga kodni ulash va uzatish uchun ishlatiladigan USB kabel porti bilan birga keladi.
  • DC quvvat ulagichi platani quvvatlantirish uchun ishlatiladigan taxta bilan birlashtirilgan.
  • Kengash ikkita voltaj regulyatori bilan ta'minlangan, ya'ni 5V va 3.3V, bu esa talablarga muvofiq kuchlanishni sozlash uchun moslashuvchanlikni ta'minlaydi.
  • Qayta tiklash tugmasi va USART deb nomlangan 4 ta apparat ketma -ket port mavjud, u aloqa o'rnatish uchun maksimal tezlikni ishlab chiqaradi.
  • Kengashni quvvatlantirishning uchta usuli mavjud. Siz USB kabelidan foydalanib, taxtani quvvatlantirishingiz va kodni taxtaga o'tkazishingiz mumkin, yoki uni Vinning taxtasi yordamida yoki Quvvat jeti yoki xamir orqali yoqishingiz mumkin.

Xususiyatlar

Pinout

Pin tavsifi

  • 5V va 3.3V ==> Bu pin 5V atrofidagi chiqishni tartibga soluvchi kuchlanishni ta'minlash uchun ishlatiladi. Bu tartibga solingan quvvat manbai boshqaruv elementini va bortdagi boshqa komponentlarni kuchaytiradi. Uni taxtadan yoki USB kabelidan yoki boshqa 5V kuchlanishli regulyatsiya qilingan manbadan olish mumkin. Boshqa kuchlanish regulyatsiyasi 3.3V pin bilan ta'minlangan bo'lsa. Maksimal quvvat - 50 mA.
  • GND ==> Bortda 5 ta tuproqli pin mavjud, bu loyiha uchun bir nechta tuproqli pin zarur bo'lganda foydali bo'ladi.
  • Qayta tiklash ==> Bu pin taxtani qayta o'rnatish uchun ishlatiladi. Ushbu pinni LOW holatiga o'rnatish taxtani asl holatiga qaytaradi.
  • Vin ==> Bu 7V dan 20V gacha bo'lgan plataga berilgan kirish voltaji. Quvvat ulagichi tomonidan ta'minlangan kuchlanishga ushbu pin orqali kirish mumkin. Shu bilan birga, bu pin orqali kartaga chiqish voltaji avtomatik ravishda 5V ga o'rnatiladi.
  • Ketma -ket aloqa ==> RXD va TXD - ketma -ket ma'lumotlarni uzatish va qabul qilish uchun ishlatiladigan ketma -ket pinlar, ya'ni Rx ma'lumotlarni uzatish, Tx esa ma'lumotlarni qabul qilish uchun ishlatiladi. Bu ketma -ket pinlarning to'rtta kombinatsiyasi ishlatiladi, bu erda Serail 0da RX (0) va TX (1), 1 -seriyada TX (18) va RX (19), 2 -seriyada TX (16) va RX (17) mavjud, va Serial 3 TX (14) va RX (15) ni o'z ichiga oladi.
  • Tashqi uzilishlar ==> Oltita pin tashqi uzilishlarni yaratish uchun ishlatiladi: 0 (0), 1 (3), 2 (21), 3 (20), 4 (19), 5 (18). Bu pinlar turli yo'llar bilan uzilishlar hosil qiladi, ya'ni past qiymatni ta'minlash, ko'tarilish yoki pasayish yoki kesish pimlariga qiymatni o'zgartirish.
  • LED ==> Bu taxtali raqamli pin 13 ga ulangan LED o'rnatilgan. Bu pinning yuqori qiymati LEDni yoqadi va LOW qiymati o'chadi.
  • AREF ==> AREF analog kirish uchun mos yozuvlar kuchlanishi bo'lgan analog mos yozuvlar kuchlanishi degan ma'noni anglatadi.
  • Analog pinlar ==> A0 dan A15 gacha bo'lgan taxtada 16 ta analog pin o'rnatilgan. Shuni ta'kidlash kerakki, bu analog pinlarning hammasi raqamli kirish -chiqish pinlari sifatida ishlatilishi mumkin. Har bir analog pin 10 bitli piksellar soniga ega. Bu pimlarni erdan 5Vgacha o'lchash mumkin. Biroq, yuqori qiymatni AREF va analogReference () funksiyasi yordamida o'zgartirish mumkin.
  • I2C ==> Ikki pin 20 va 21 I2C aloqasini qo'llab -quvvatlaydi, bu erda 20 SDA (Serial Data Line asosan ma'lumotni saqlash uchun ishlatiladi) va 21 SCL (Serial Clock Line asosan qurilmalar o'rtasida ma'lumotlarni sinxronlashtirishni ta'minlash uchun) ni ifodalaydi.
  • SPI aloqasi ==> SPI - bu nazoratchi va boshqa tashqi qurilmalar o'rtasida ma'lumotlarni uzatish uchun ishlatiladigan ketma -ket periferik interfeys. SPI aloqasi uchun to'rtta pin ishlatiladi, ya'ni 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS).

5 -qadam: Arduino IDE

Menimcha, siz allaqachon Arduino IDE -ni o'rnatgansiz.

1. Quyida berilgan kerakli kutubxonani yuklab oling

TinyGPS lib

2. Yuklab olingandan so'ng. Uni ajratib oling va C: / Users \… / Documents / Arduino / kutubxonalariga ko'chiring (-) yo'qligiga ishonch hosil qiling.

3. Arduino IDE -ni oching va dastur bo'limidan kodni nusxa ko'chiring.

4. Keyin asboblar panelini tanlang ==> Kengashlar ==> bu erda biz Arduino Mega 2560 -dan foydalanamiz.

5. Kengashni tanlagandan so'ng, portni tanlang Asboblar ==> Portlar

6. Kengash va portni tanlagandan so'ng yuklashni bosing.

7. Kod yuklangandan so'ng chiqishni ko'rish uchun ketma -ket terminalni oching.

6 -qadam: ulanishlar

Arduino MEGA ==> NEO-6M GPS

  • 3.3V ==> VCC
  • GND ==> GND
  • Tx1 (18) ==> Rx
  • Rx (19) ==> Tx

Serial1 o'rniga Serial2 yoki Serial3 dan foydalanishingiz mumkin

Tavsiya: