Բովանդակություն:
- Քայլ 1: Անհրաժեշտ բաղադրիչներ
- Քայլ 2: Տեղեկատվություն GPS- ի մասին
- Քայլ 3. Neo-6M GPS մոդուլ
- Քայլ 4: Arduino Mega
- Քայլ 5: Arduino IDE
- Քայլ 6: Միացումներ
Video: Ինտերֆեյս Arduino Mega GPS մոդուլով (Neo-6M) ՝ 8 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Այս նախագծում ես ցույց տվեցի, թե ինչպես կարելի է միացնել GPS մոդուլը (Neo-6M) Arduino Mega- ի հետ: TinyGPS գրադարանը օգտագործվում է Երկայնության և լայնության տվյալները ցուցադրելու համար, իսկ TinyGPS ++ - ը ՝ սերիական մոնիտորի վրա լայնության, երկայնության, բարձրության, արագության և արբանյակների քանակի ցուցադրման համար:
Քայլ 1: Անհրաժեշտ բաղադրիչներ
Սարքավորումներ
- Arduino Mega ==> 30 դոլար
- Neo-6M GPS մոդուլ ==> 30 դոլար
Ծրագրային ապահովում
Arduino IDE
Projectրագրի ընդհանուր արժեքը 60 դոլար է
Քայլ 2: Տեղեկատվություն GPS- ի մասին
Ինչ է GPS- ը
Գլոբալ դիրքավորման համակարգը (GPS) արբանյակային նավարկության համակարգ է, որը բաղկացած է առնվազն 24 արբանյակից: GPS- ն աշխատում է ցանկացած եղանակային պայմաններում, աշխարհի ցանկացած վայրում, օրական 24 ժամ, առանց բաժանորդագրության և կարգաբերման վճարների:
Ինչպես է աշխատում GPS- ը
GPS արբանյակները օրական երկու անգամ պտտվում են Երկրի վրա ճշգրիտ ուղեծրով: Յուրաքանչյուր արբանյակ փոխանցում է յուրահատուկ ազդանշան և ուղեծրի պարամետրեր, որոնք թույլ են տալիս GPS սարքերին վերծանել և հաշվարկել արբանյակի ճշգրիտ վայրը: GPS ընդունիչներն օգտագործում են այս տեղեկատվությունը և եռապատկումը `օգտագործողի ճշգրիտ վայրը հաշվարկելու համար: Ըստ էության, GPS ընդունիչը չափում է յուրաքանչյուր արբանյակից հեռավորությունը փոխանցված ազդանշանի ստացման ժամանակի չափով: Եվս մի քանի արբանյակից հեռավորության չափման դեպքում ստացողը կարող է որոշել օգտվողի դիրքը և ցուցադրել այն:
Ձեր երկկողմանի դիրքը (լայնություն և երկայնություն) և շարժումը հետևելու համար GPS ընդունիչը պետք է կողպված լինի առնվազն 3 արբանյակների ազդանշանի վրա: 4 կամ ավելի արբանյակների տեսարան ունենալով ՝ ստացողը կարող է որոշել ձեր եռաչափ դիրքը (լայնություն, երկայնություն և բարձրություն): Ընդհանրապես, GPS ընդունիչը կհետեւի 8 կամ ավելի արբանյակների, բայց դա կախված է օրվա ժամից և երկրի վրա գտնվելու վայրից: Երբ ձեր դիրքը որոշվի, GPS միավորը կարող է հաշվարկել այլ տեղեկություններ, օրինակ
- Արագություն
- Կրող
- Հետք
- Ուղևորություն հեռ
- Հեռավորությունը նպատակակետից
Ինչ է ազդանշանը
GPS արբանյակները փոխանցում են առնվազն 2 ցածր էներգիայի ռադիոազդանշաններ: Ազդանշանները շարժվում են տեսողության գծով, ինչը նշանակում է, որ դրանք կանցնեն ամպերի, ապակու և պլաստիկի միջով, բայց չեն անցնի շատ ամուր առարկաների, օրինակ ՝ շենքերի և լեռների միջով: Այնուամենայնիվ, ժամանակակից ընդունիչներն ավելի զգայուն են և սովորաբար կարող են հետևել տների միջով: GPS ազդանշանը պարունակում է 3 տարբեր տեսակի տեղեկատվություն
Կեղծ պատահական ծածկագիր
Դա I. D. կոդը, որը որոշում է, թե որ արբանյակն է տեղեկատվություն փոխանցում: Ձեր սարքի արբանյակային էջում կարող եք տեսնել, թե որ արբանյակներից եք ազդանշաններ ստանում:
Ephemeris տվյալները
Էֆեմերիայի տվյալները անհրաժեշտ են արբանյակի դիրքը որոշելու համար և տալիս են կարևոր տեղեկություններ արբանյակի առողջության, ընթացիկ ամսաթվի և ժամի մասին:
Օրացույցի տվյալներ
Almanac- ի տվյալները GPS ընդունիչին ասում են, թե որտեղ պետք է լինի GPS- ի յուրաքանչյուր արբանյակ օրվա ցանկացած պահի և ցույց է տալիս այդ արբանյակի և համակարգի յուրաքանչյուր այլ արբանյակի ուղեծրի տվյալները:
Քայլ 3. Neo-6M GPS մոդուլ
NEO-6M GPS մոդուլը ներկայացված է ստորև ներկայացված նկարում: Այն գալիս է արտաքին ալեհավաքով և չի գալիս վերնագրի կապում: Այսպիսով, ձեզ հարկավոր է այն կպցնել:
NEO-6M GPS մոդուլի ակնարկ
NEO-6M GPS չիպ
Մոդուլի սիրտը U-blox- ից NEO-6M GPS չիպ է: Այն կարող է հետևել մինչև 22 արբանյակ 50 ալիքների վրա և հասնում է արդյունաբերության զգայունության ամենաբարձր մակարդակին, այսինքն ՝ -161 դԲ հետևելուն, մինչդեռ սպառում է ընդամենը 45 մԱ մատակարարման հոսանք: U-blox 6 տեղադրման շարժիչը կարող է պարծենալ նաև Time-To-First-Fix (TTFF) 1 վայրկյանից պակաս ժամանակով: Չիպի տրամադրած լավագույն հատկություններից մեկը էներգախնայողության ռեժիմն է (PSM): Այն թույլ է տալիս նվազեցնել համակարգի էներգիայի սպառումը `ստացողի մասերը ընտրովի միացնելով և անջատելով: Սա կտրուկ նվազեցնում է մոդուլի էներգիայի սպառումը մինչև 11 մԱ ՝ դարձնելով այն հարմար էներգիայի նկատմամբ զգայուն ծրագրերի համար, ինչպիսիք են GPS ձեռքի ժամացույցները: NEO-6M GPS չիպի անհրաժեշտ տվյալների կապերն անջատված են 0.1 ″ սկիպիդար վերնագրերով: Սա ներառում է UART- ի միջոցով միկրոկառավարիչի հետ հաղորդակցության համար անհրաժեշտ քորոցներ:
Նշում.- Մոդուլն ապահովում է բաուդ արագություն 4800 բիթ / վ-ից մինչև 230400 բիթ / վրկ, կանխադրված բաուդ `9600:
Պաշտոնի ամրագրման LED ցուցիչ
NEO-6M GPS մոդուլի վրա կա LED, որը ցույց է տալիս Position Fix- ի կարգավիճակը: Այն կթարթվի տարբեր տեմպերով ՝ կախված նրանից, թե ինչ վիճակում է գտնվում
- Ոչ թարթելը ==> նշանակում է, որ որոնում է արբանյակներ
- Թարթել յուրաքանչյուր 1 վայրկյան - նշանակում է, որ դիրքի ամրագրումը գտնված է
3.3V LDO կարգավորիչ
NEO-6M չիպի աշխատանքային լարումը 2.7-ից 3.6V է: Բայց, մոդուլը գալիս է MICREL- ից MIC5205 ծայրահեղ ցածր 3V3 կարգավորիչով: Տրամաբանական կապերը նույնպես հանդուրժում են 5 վոլտ, այնպես որ մենք կարող ենք այն հեշտությամբ միացնել Arduino- ին կամ ցանկացած 5V տրամաբանական միկրոկառավարիչին ՝ առանց որևէ տրամաբանական մակարդակի փոխարկիչ օգտագործելու:
Մարտկոց և EEPROM
Մոդուլը հագեցած է HK24C32 երկալար սերիական EEPROM- ով: Այն 4KB չափ ունի և միացված է NEO-6M չիպին I2C- ի միջոցով: Մոդուլը պարունակում է նաև վերալիցքավորվող կոճակով մարտկոց, որը հանդես է գալիս որպես գերկոնդենսատոր:
EEPROM- ը մարտկոցի հետ միասին օգնում է պահպանել մարտկոցով ապահովված RAM- ը (BBR): BBR- ն պարունակում է ժամացույցի տվյալներ, դիրքի վերջին տվյալներ (GNSS ուղեծրի տվյալներ) և մոդուլի կազմաձևում: Բայց դա նախատեսված չէ տվյալների մշտական պահպանման համար:
Քանի որ մարտկոցը պահպանում է ժամացույցը և վերջին դիրքը, առաջին ամրացման ժամանակը (TTFF) զգալիորեն կրճատվում է մինչև 1 վ: Սա թույլ է տալիս շատ ավելի արագ կողպել դիրքերը:
Առանց մարտկոցի GPS- ը միշտ սառը գործարկում է, այնպես որ GPS- ի սկզբնական կողպումն ավելի շատ ժամանակ է պահանջում: Մարտկոցը ինքնաբերաբար լիցքավորվում է էներգիայի միացման դեպքում և պահպանում է տվյալները մինչև երկու շաբաթ առանց հոսանքի:
Pinout
GND- ը Ground Pin- ն է և պետք է միացված լինի Arduino- ի GND կապին:
TxD (հաղորդիչ) քորոցը օգտագործվում է սերիական հաղորդակցության համար:
RxD (Ստացող) քորոցը օգտագործվում է սերիական հաղորդակցության համար:
VCC- ն էներգիա է մատակարարում մոդուլի համար: Դուք կարող եք այն ուղղակիորեն միացնել Arduino- ի 5V քորոցին:
Քայլ 4: Arduino Mega
Arduino- ն բաց կոդով էլեկտրոնիկայի հարթակ է, որը հիմնված է հեշտ օգտագործման ապարատային և ծրագրային ապահովման վրա: Arduino- ի տախտակները կարող են կարդալ մուտքերը `լույս սենսորի վրա, մատը կոճակի վրա կամ Twitter հաղորդագրություն, և այն վերածել ելքի` ակտիվացնելով շարժիչը, միացնելով LED- ը, ինչ -որ բան հրապարակելով առցանց: Դուք կարող եք ասել ձեր տախտակին, թե ինչ պետք է անի ՝ մի շարք հրահանգներ ուղարկելով տախտակի վրա գտնվող միկրոկառավարիչին: Դա անելու համար դուք օգտագործում եք Arduino ծրագրավորման լեզուն (հիմնված է լարերի վրա) և Arduino ծրագրային ապահովման վրա (IDE) ՝ հիմնված մշակման վրա:
Արդուինո Մեգա
Arduino Mega 2560- ը միկրոկառավարիչների տախտակ է, որը հիմնված է Atmega2560- ի վրա:
- Տախտակի վրա ներառված են 54 թվային I/O կապեր և 16 անալոգային կապեր, որոնք այս սարքը դարձնում են եզակի և առանձնանում են մյուսներից: 54 թվային I/O- ից 15 -ը օգտագործվում են PWM- ի համար (զարկերակի լայնության մոդուլյացիա):
- Գրատախտակին ավելացված է 16 ՄՀց հաճախականությամբ բյուրեղային տատանում:
- Տախտակին տրվում է USB մալուխի պորտ, որն օգտագործվում է համակարգչից ծածկը համակարգչին միացնելու և փոխանցելու համար:
- DC հոսանքի վարդակը զուգակցված է այն տախտակի հետ, որն օգտագործվում է տախտակը սնուցելու համար:
- Սալիկն ունի երկու լարման կարգավորիչ ՝ 5V և 3.3V, որն ապահովում է լարվածությունը կարգավորելու ճկունություն ՝ ըստ պահանջների:
- Կա վերակայման կոճակ և 4 սարքաշարային սերիական նավահանգիստ, որը կոչվում է USART, որն արտադրում է կապի ստեղծման առավելագույն արագություն:
- Տախտակը սնուցելու երեք եղանակ կա: Դուք կարող եք կամ օգտագործել USB մալուխ ՝ տախտակը սնուցելու և կոդը տախտակին փոխանցելու համար, կամ կարող եք այն միացնել ՝ օգտագործելով տախտակի Vin կամ Power jack կամ մարտկոցի միջոցով:
Տեխնիկական պայմաններ
Pinout
Պին նկարագրություն
- 5V & 3.3V ==> Այս քորոցը օգտագործվում է 5V- ի սահմաններում ելքային կարգավորվող լարումը ապահովելու համար: Այս կարգավորվող էներգիայի մատակարարումը սնուցում է վերահսկիչը և տախտակի վրա գտնվող այլ բաղադրիչները: Այն կարելի է ձեռք բերել տախտակի Vin- ից կամ USB մալուխից կամ այլ կարգավորվող 5V լարման մատակարարումից: Մինչդեռ լարման մեկ այլ կարգավորումը տրամադրվում է 3.3V պինով: Առավելագույն հզորությունը, որը կարող է քաշել, 50 մԱ է:
- GND ==> Գրատախտակին առկա են 5 հիմնային կապեր, ինչը այն օգտակար է դարձնում, երբ նախագծի համար պահանջվում է մեկից ավելի գրունտային կապում:
- Վերականգնել ==> Այս կապը օգտագործվում է տախտակը վերակայելու համար: Այս PIN- ը LOW- ի վրա կարգավորելը կվերականգնի տախտակը:
- Vin ==> Դա տախտակին մատակարարվող մուտքային լարումն է, որը տատանվում է 7 Վ -ից մինչև 20 Վ: Էլեկտրաէներգիայի վարդակից տրամադրվող լարումը կարելի է մուտք գործել այս կապի միջոցով: Այնուամենայնիվ, այս կապի միջոցով տախտակին ելքային լարումը ինքնաբերաբար կկարգավորվի մինչև 5 Վ:
- Սերիական հաղորդակցություն ==> RXD և TXD- ը սերիական կապերն են, որոնք օգտագործվում են սերիական տվյալների փոխանցման և ընդունման համար, այսինքն. Rx- ը տվյալների փոխանցումն է, մինչդեռ Tx- ը ՝ տվյալներ ստանալու համար: Այս սերիական կապում օգտագործվում են չորս համակցություններ, որտեղ Serail 0 -ը պարունակում է RX (0) և TX (1), 1 -ը ՝ TX (18) և RX (19), 2 -ը ՝ TX (16) և RX (17), իսկ 3 -րդ սերիան պարունակում է TX (14) և RX (15):
- Արտաքին ընդհատումներ ==> Վեց կապում են օգտագործվում արտաքին ընդհատումներ ստեղծելու համար, այսինքն `ընդհատում 0 (0), ընդհատում 1 (3), ընդհատում 2 (21), ընդհատում 3 (20), ընդհատում 4 (19), ընդհատում 5 (18): Այս կապումներն ընդհատումներ են առաջացնում մի շարք եղանակներով, այսինքն ՝ ապահովելով OWԱOWՐ արժեք, բարձրացող կամ նվազող եզր կամ փոփոխվող արժեք ընդհատվող կապում:
- LED ==> Այս տախտակը գալիս է ներկառուցված LED- ով, որը միացված է թվային կապին 13. Բարձր արժեքը այս կապում միացնում է LED- ը, իսկ LOW արժեքը `այն:
- AREF ==> AREF նշանակում է Անալոգային հղումային լարման, որը անալոգային մուտքերի համար լարման լարման է:
- Անալոգային կապում ==> Տախտակի վրա ներառված է 16 անալոգային կապում `A0- ից A15 պիտակով: Կարևոր է նշել, որ այս բոլոր անալոգային կապերը կարող են օգտագործվել որպես թվային մուտքի/ելքային կապեր: Յուրաքանչյուր անալոգային քորոց ունի 10-բիթանոց լուծում: Այս քորոցները կարող են չափել գետնից մինչև 5 Վ: Այնուամենայնիվ, վերին արժեքը կարող է փոխվել `օգտագործելով AREF և analogReference () գործառույթը:
- I2C ==> Երկու կապում 20 և 21 աջակցում են I2C հաղորդակցությանը, որտեղ 20 -ը ներկայացնում է SDA (Սերիական տվյալների գիծը հիմնականում օգտագործվում է տվյալների պահպանման համար) և 21 -ը `SCL (Սերիական ժամացույցի գիծ, որը հիմնականում օգտագործվում է սարքերի միջև տվյալների համաժամացման ապահովման համար)
- SPI Communication ==> SPI նշանակում է Serial Peripheral Interface, որն օգտագործվում է վերահսկիչի և ծայրամասային այլ բաղադրիչների միջև տվյալների փոխանցման համար: Չորս կապում ՝ 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS) օգտագործվում են SPI հաղորդակցության համար:
Քայլ 5: Arduino IDE
Այստեղ ես ենթադրում եմ, որ դուք արդեն տեղադրել եք Arduino IDE- ն:
1. Ներբեռնեք ստորև բերված պահանջվող գրադարանը
TinyGPS lib
2. Ներբեռնելուց հետո: Հանել այն և տեղափոխել այն C: / Users \… / Documents / Arduino / գրադարանները համոզվեք, որ չկա (-):
3. Բացեք Arduino IDE- ն և պատճենեք ծածկագիրը ծրագրի բաժնից:
4. Այնուհետև դրա համար ընտրեք տախտակ, անցեք Գործիքներ ==> Տախտակներ ==> ընտրեք տախտակ, որտեղ մենք օգտագործում ենք Arduino Mega 2560
5. Տախտակ ընտրելուց հետո դրա համար ընտրեք նավահանգիստ: Գնացեք Գործիքներ ==> Պորտեր
6 Տախտակ և նավահանգիստ ընտրելուց հետո կտտացրեք բեռնել:
7. Երբ կոդը վերբեռնվի, բացեք սերիական տերմինալը `ելքը տեսնելու համար:
Քայլ 6: Միացումներ
Arduino MEGA ==> NEO-6M GPS
- 3.3V ==> VCC
- GND ==> GND
- Tx1 (18) ==> Rx
- Rx (19) ==> Tx
Կարող եք նաև օգտագործել Serial2 կամ Serial3 ՝ Serial1- ի փոխարեն
Խորհուրդ ենք տալիս:
Ձայնավորների խաղ Arduino- ով և YX5300 MP3 մոդուլով Catalex: 13 քայլ
Arduino- ի և YX5300 MP3 մոդուլի Catalex ձայնավորների խաղ. Կարո՞ղ եք կարդալ այս հարցը: Դա տարօրինակ է: Ես այս հարցը դիտմամբ տվեցի: Եթե կարող եք կարդալ այս տեքստը, դա այն է, որ դուք գիտեք ամբողջ այբուբենը և, իհարկե, իմացել եք բոլոր ձայնավորների մասին: Ձայնավորները առկա են բոլոր բառերում: Անհնար է
Arduino- ի կառավարում HC-06 Bluetooth մոդուլով ՝ 4 քայլ
Arduino- ի կառավարում HC-06 Bluetooth մոդուլով. Բարև բոլորին, սա իմ առաջին պաշտոնական ձեռնարկն է Instructable.com- ում, ես շատ ոգևորված եմ իմ առաջին նախագծով: Այսօր ես ձեզ ցույց կտամ, թե ինչպես միացնել Arduino- ն և Bluetooth մոդուլը: Arduino- ն կապ կհաստատի HC-06 Bluetooth մոդուլային տախտակի հետ ՝ օգտագործելով
HiFive1 Arduino տախտակ ESP-01 WiFi մոդուլի մոդուլով ՝ 5 քայլ
HiFive1 Arduino տախտակ ESP-01 WiFi մոդուլի մոդուլով. HiFive1- ը Arduino- ի հետ համատեղելի RISC-V- ի վրա հիմնված առաջին տախտակն է, որը կառուցված է SiFive- ի FE310 պրոցեսորով: Տախտակը մոտ 20 անգամ ավելի արագ է, քան Arduino UNO- ն, սակայն, ինչպես ՄԱԿ -ի խորհուրդը, այն չունի անլար կապ: Բարեբախտաբար, կան մի քանի էժան
ESP32 E32-433T LoRa մոդուլի մոդուլով - LoRa Arduino միջերես. 8 քայլ
ESP32 E32-433T LoRa մոդուլի մոդուլով | LoRa Arduino Interfacing. Այ, ինչ կա, տղերք: Akarsh այստեղ CETech- ից: Իմ այս նախագիծը միանում է E32 LoRa մոդուլին eByte- ից, որը բարձր հզորության 1 վտ հաղորդիչ մոդուլ է ESP32- ով Arduino IDE- ի միջոցով: Մենք հասկացանք E32- ի աշխատանքը մեր վերջին ուսուցման մեջ
Arduino DHT 11 ջերմաստիճանի և խոնավության մոդուլով ՝ 7 քայլ
Arduino DHT 11 ջերմաստիճանի և խոնավության մոդուլով. Graանրությունից ավելի հզոր ուժով այն գրավում է աչքերը դեպի պարզ գիշերային երկնքում առկայծող կարմիր ներկայությունը »: Մեր ֆիզիկայի դասին հանձնարարվել է կառուցել 10 x 10 x 10 սմ խորանարդի նստարան