Բովանդակություն:
- Քայլ 1: Շենքի բազայի կառուցում
- Քայլ 2: Առաջին փորձություն
- Քայլ 3: Ստեղծեք միջերես
- Քայլ 4: Ավելացրեք չափիչ
- Քայլ 5: Քաշեք չափիչ GPS և ավելացրեք OpenStreetMap
- Քայլ 6: Քաշեք GPS չափիչը և ավելացրեք սեղանի մատյան
- Քայլ 7: Ստացեք ծածկագիր
- Քայլ 8: Arduino IDE
- Քայլ 9: Մանրամասների կոդավորում
Video: Arduino նախագիծ. Փորձարկման միջակայք LoRa մոդուլ RF1276 GPS- ի հետևման լուծման համար. 9 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Միացում ՝ USB - Սերիա
Անհրաժեշտ է ՝ Chrome դիտարկիչ
Անհրաժեշտ է ՝ 1 X Arduino Mega
Անհրաժեշտ է ՝ 1 X GPS
Անհրաժեշտ է `1 X SD քարտ
Անհրաժեշտ է ՝ 2 X LoRa մոդեմ RF1276
Գործառույթը. Arduino- ն GPS- ի արժեք ուղարկեք հիմնական բազային-Հիմնական բազայի տվյալները պահեք Dataino Server Lora մոդուլում. APPCONWIRELESS LoRa- ից չափազանց մեծ հեռահարության RF1276- ը նոր, մասնավոր և տարածված սպեկտրի մոդուլյացիայի տեխնիկա է, որը թույլ է տալիս տվյալների փոխանցումը չափազանց ցածր արագությամբ: երկար տիրույթներ: Dataածր տվյալների արագությունը (վայրկյանում մինչև մի քանի բայթ) և LoRa մոդուլյացիան հանգեցնում են ընդունիչի շատ ցածր զգայունության, նշանակում է, որ այս թեստում նշանակում է ավելի քան 10 կմ:
Քայլ 1: Շենքի բազայի կառուցում
Համակարգչային լայնության ինտերնետ կապ և LoRa մոդեմ, որը միացված է USB պորտին:
Arduino մեքենայի հավաքածու ·
Մետրային տուփ
Anduino Mega- ն միացված է սերիական 2 -ին GPS ընդունիչին, իսկ սերիական 1 -ը ՝ LoRa մոդեմին: SD քարտը օգտագործվում է տվյալների պահպանման համար:
Քայլ 2: Առաջին փորձություն
· 10.6 կմ քաղաքային կենտրոններով, պատկերասրահներով և օղակներով արահետով անցած ճանապարհով
Ընդունման /փոխանցման հարաբերակցությունը եղել է 321 /500TX կետ
RX կետ
Քայլ 3: Ստեղծեք միջերես
1 - Ստեղծեք նոր նախագիծ LoRa
Pressրագրի կազմաձևը բացելու համար կտտացրեք պատկերակի կոճակին
Քայլ 4: Ավելացրեք չափիչ
2) Բացեք չափիչի սահիկը:
· 3) Ոլորեք դեպի GPS:
· 4) Մեկը ավելացրեք գրասեղանին:
Քայլ 5: Քաշեք չափիչ GPS և ավելացրեք OpenStreetMap
· 5) Գրասեղանին ավելացրեք OpenStreetMap քարտեզը
GPS- ի բաղադրիչը քարշ տալով պատկերակի քարտեզի վրա ՝ ստեղծվում է OpenStreet քարտեզը:
Ստեղծեք միջերես
· 6) Փոխել քարտեզի թարմացումը
Փոխեք քարտեզի թարմացման ժամանակը 5000 -ից 10000
Քայլ 6: Քաշեք GPS չափիչը և ավելացրեք սեղանի մատյան
· 7) Ավելացնել Աղյուսակի մատյան չափիչ:
Չափիչը GPS պատկերակի վերևից քաշելով ստեղծվում է չափիչ սեղանի մատյան
· 8) Փոխել սեղանի տեղեկամատյանների թարմացումը: Փոխեք քարտեզի թարմացման ժամանակը 5000 -ից 10000
Կարգավորեք չափիչների դիրքը
· 9) Քաշելու չափիչները հարմարեցնում են չափիչների դիրքը `դրանք քարշ տալով էկրանի վրայով:
· 10) Պահել նախագիծը
Քայլ 7: Ստացեք ծածկագիր
10) Ակտիվացրեք կոդի կոնտեյները
Կոճակ վերևի աջ կոճակում, ընտրեք բոլորը և պատճենեք բազային կոդը:
Քայլ 8: Arduino IDE
· 11) Տեղադրեք կոդը Arduino IDE- ում
· 12) Խմբագրել կոդը Ավելացնել այս տողը սահմանման մեջ
Քայլ 9: Մանրամասների կոդավորում
Ավելացրեք այս տողը սահմանման մեջ
//*************************************************************************
// ** Գրադարան ** // ************************************ *******************************
#ներառել // ++ GPS գրադարան
#ներառել // ++ SPI գրադարան #ներառել
// ++ SD գրադարան //
*************************************************************************
// ** SD ** // ************************************** *******************************
// * SD քարտ, որը կցված է SPI ավտոբուսին հետևյալ կերպ.
// ** UNO: MOSI - pin 11, MISO - pin 12, CLK - pin 13, CS - pin 4
// (CS քորոցը կարող է փոխվել) և թիվ 10 (SS) կապը պետք է լինի ելք
// ** Մեգա ՝ MOSI - կապ 51, MISO - կապ 50, CLK - կապ 52, CS - կապ 53
// (CS քորոցը կարող է փոխվել) և #52 կապը (SS) պետք է լինի ելք
// ** Լեոնարդո. Միացեք ապարատային SPI- ին ICSP վերնագրի միջոցով
// Pin 4 -ը, որն օգտագործվում է այստեղ Arduino- ի այլ օրինակների հետ համապատասխանության համար const int chipSelect = 53;
// ++ SD փին ընտրիչ
//*************************************************************************
//** GPS ** //***************************************** *******************************
TinyGPS GPS; // ++ GPS- ը Serial2- ում
դատարկ gpsdump (TinyGPS & gps); // ++
bool newdataGPS = կեղծ; // ++
Ավելացրեք այս տողը կարգաբերման մեջ ()
//***********************************************************************
// ** GPS սերիայի կարգավորում ** // ************************************* *******************************
Serial2.begin (9600); // ++
ուշացում (1000); // ++
//***********************************************************************
// ** SD նախաստորագրում ** // ************************************* ******************************
// համոզվեք, որ չիպի նախնական ընտրված քորոցը սահմանված է // ++
// ելք, նույնիսկ եթե այն չեք օգտագործում ՝ // ++
pinMode (SS, OUTPUT); // ++
Serial.println (F («SD քարտի նախաստորագրում …»)); // ++
// տեսնել, արդյոք քարտը ներկա է և կարող է նախաստորագրվել ՝ // ++
եթե (! SD.begin (chipSelect)) {// ++
Serial.println (F («Քարտը ձախողվեց, կամ ներկա չէ»)); // ++
// ավելին մի արա: // ++
վերադարձ; // ++
} այլ {// ++
Serial.println (F («SD քարտը լավ է»)); // ++
} // ++
Ավելացրեք այս տողերը loop () void- ում
serialEvent2 (); // ++ զանգ GPS սերիական իրադարձություն
Ավելացնել SeriaEvent2 ծածկագիրը
//*************************************************************************
// ** GPS serialEvent ** // ************************************** ********************************
անվավեր serialEvent2 () {// ++
while (Serial2.available ()) {// ++
char c = Serial2.read (); // ++
//Serial.print(c); // չմշակված GPS տվյալները տեսնելու համար // ++
if (gps.encode (c)) {// ++
newdataGPS = ճշմարիտ; // ++
ընդմիջում; // անհապաղ տպել նոր տվյալներ: // ++
} // ++
} // ++
} // ++
Ավելացրեք GPS աղբանոց ձայնով
//*************************************************************************
// ** gps dump ** // ************************************** *******************************
// ** Աստիճանների լայնության վավեր տիրույթը -90 և +90 է: **
// ** Երկայնությունը -180 և +180 միջակայքում է **
// ** նշելով արևելք-արևմուտք դիրքը **
//** "123456789 1234567890" **
//** "000.00000;0000.00000" ** //*************************************************************************
անվավեր gpsdump (TinyGPS & gps) // ++
{ // ++
int տարի; // ++
բայթ ամիս, օր, ժամ, րոպե, վայրկյան, հարյուրերորդական; // ++
անստորագիր երկար տարիք; // ++
gps.f_get_position (& LATGP00, & LONGP00, & age); // ++
gps.crack_datetime (& տարի, & ամիս, & օր, & ժամ, // ++
& րոպե, & երկրորդ, & հարյուրերորդ, & տարիքը); // ++
երկար լատ, լոն; // ++
gps.get_position (& lat, & lon, & age); // ++
// *********************************************************************
// ** կազմել տող ՝ տվյալների հավաքման համար ՝ **
// *********************************************************************
String dataString = ""; // ++
dataString += (լատ / 100000); // ++
dataString += "."; // ++
dataString += լատ - (լատ / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += (lon / 100000); // ++
dataString += "."; // ++
dataString += lon - (lon / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += լարային (static_cast (օր)); // ++
dataString += "/"; // ++
dataString += լարային (static_cast (ամիս)); // ++
dataString += "/"; // ++
dataString += Լար (տարի); // ++
dataString += ";"; // ++
dataString += լարային (static_cast (ժամ)); // ++
dataString += ":"; // ++
dataString += լարային (static_cast (րոպե)); // ++
dataString += ":"; // ++
dataString += լարային (static_cast (երկրորդ)); // ++ // ***************************************** ****************************
// ** ԽՆԴՐԵԼ SD- ում ** // ************************************* ********************************
// բացեք ֆայլը: նշեք, որ միաժամանակ կարող է բացվել միայն մեկ ֆայլ, **
// այնպես որ դուք պետք է փակեք այս մեկը ՝ մյուսը բացելուց առաջ: ** // ******************************************* **************************
Ֆայլի dataFile = SD.open ("gps00.txt", FILE_WRITE); // ++
// ***********************************************************************
// ** եթե ֆայլը մատչելի է, գրեք դրան. **
// ***********************************************************************
if (dataFile) {// ++
dataFile.println (dataString); // ++
dataFile.close (); // ++
} այլ {// ++
Serial.println (F ("ERROR SD Write")); // ++
} // ++
}
Եթե ցանկանում եք ներբեռնել կոդը, այցելեք այս էջը:
Խորհուրդ ենք տալիս:
Breadboard Kit V2- ի բաղադրիչի փորձարկման մոդուլ: 4 քայլ
Breadboard Kit V2- ի բաղադրիչի փորձարկման մոդուլ. Սա բաղադրիչ փորձարկող մոդուլ է իմ Breadboard Kit V2- ի համար և աշխատում է այստեղ իմ մյուս Instructable- ի հետ, որը «մոդուլային տախտակի հավաքածու» է; նախագծված է Stanley 014725R կազմակերպիչի պատյանով (որը կարող է տեղավորել 2 ամբողջական տախտակի հավաքածու) օգտագործելու համար
Հետևման մոդուլ հեծանվորդների համար. 5 քայլ
Հեծանվորդների համար հետևելու մոդուլ. Հեծանվորդների համար հետևող այս մոդուլը մոդուլ է, որը ավտոմատ կերպով հայտնաբերում է վթարները մրցավազքում, և որը մեխանիկական խափանում է հայտնաբերում `դիպչելով հպման տվիչին: Երբ տեղի է ունենում այս իրադարձություններից մեկը, մոդուլը միջոցառումն ուղարկում է ազնվամորու տվյալների բազա
Մատնահետքի ցուցիչի օգտագործումը ժամանակին մասնակցելու համար ՝ XAMP լուծման հետ համատեղ. 6 քայլ (նկարներով)
Մատնահետքի ցուցիչի օգտագործումը ՝ XAMP լուծման հետ համատեղ ժամանակի մասնակցության համար. Դպրոցական նախագծի համար մենք լուծում էինք փնտրում, թե ինչպես հետևել աշակերտների հաճախելիությանը: Մեր ուսանողներից շատերն են ուշ ժամանում: Հոգնեցուցիչ աշխատանք է նրանց ներկայությունը ստուգելը: Մյուս կողմից, շատ քննարկումներ կան, քանի որ ուսանողները հաճախ կասեն
10 հիմնական Arduino նախագիծ սկսնակների համար: Կատարեք առնվազն 15 նախագիծ մեկ տախտակով: 6 քայլ
10 հիմնական Arduino նախագիծ սկսնակների համար: Կատարեք առնվազն 15 նախագիծ մեկ տախտակով: Arduino Project & Ուսուցողական խորհուրդ; Ներառում է 10 հիմնական Arduino նախագիծ: Բոլոր կոդերը, Gerber ֆայլը և այլն: Ոչ SMD! Հեշտ զոդում բոլորի համար: Հեշտ շարժական և փոխարինելի բաղադրիչներ: Դուք կարող եք կատարել առնվազն 15 նախագիծ մեկ բո
Ինչպես միացնել DeLorme Earthmate GPS LT-20- ը ձեր Google Earth- ին ՝ GPS- ի հետևման հիանալի քարտեզի համար. 5 քայլ
Ինչպես միացնել DeLorme Earthmate GPS LT-20- ը ձեր Google Earth- ին ՝ GPS- ի հետևման հիանալի քարտեզի համար. Ես ձեզ ցույց կտամ, թե ինչպես միացնել GPS սարքը հանրաճանաչ Google Earth ծրագրին ՝ առանց Google Earth Plus- ի օգտագործման: Ես մեծ բյուջե չունեմ, այնպես որ կարող եմ երաշխավորել, որ դա հնարավորինս էժան կլինի