সুচিপত্র:
- ধাপ 1: বেস স্টেশন নির্মাণ
- ধাপ ২: প্রথম টেস্ট
- ধাপ 3: ইন্টারফেস তৈরি করুন
- ধাপ 4: গেজ যোগ করুন
- ধাপ 5: গেজ জিপিএস টেনে আনুন এবং OpenStreetMap যোগ করুন
- ধাপ 6: জিপিএস গেজ টানুন এবং টেবিল লগ যোগ করুন
- ধাপ 7: কোড পান
- ধাপ 8: Arduino IDE
- ধাপ 9: কোডিং বিবরণ
ভিডিও: আরডুইনো প্রকল্প: জিপিএস ট্র্যাকিং সমাধানের জন্য টেস্ট রেঞ্জ লোরা মডিউল RF1276: 9 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
সংযোগ: ইউএসবি - সিরিয়াল
প্রয়োজন: ক্রোম ব্রাউজার
প্রয়োজন: 1 এক্স Arduino মেগা
প্রয়োজন: 1 এক্স জিপিএস
প্রয়োজন: 1 এক্স এসডি কার্ড
প্রয়োজন: 2 X LoRa মডেম RF1276
ফাংশন: Arduino জিপিএস ভ্যালু পাঠায় মেইন বেস-ডাটাইনো সার্ভার লোরা মডিউলে মূল বেস স্টোর ডেটা: APPCONWIRELESS LoRa থেকে আল্ট্রা লং রেঞ্জ RF1276 একটি নতুন, প্রাইভেট এবং স্প্রেড-স্পেকট্রাম মডুলেশন টেকনিক যা অত্যন্ত কম ডেটা-রেটে ডেটা পাঠানোর অনুমতি দেয় দীর্ঘ পরিসীমা। কম ডেটা-রেট (প্রতি সেকেন্ডে কয়েক বাইট পর্যন্ত) এবং LoRa মডুলেশন খুব কম রিসিভার সংবেদনশীলতার দিকে পরিচালিত করে, মানে এই পরীক্ষায় 10km এর বেশি।
ধাপ 1: বেস স্টেশন নির্মাণ
কম্পিউটার প্রস্থ ইন্টারনেট সংযোগ এবং একটি LoRa মডেম USB পোর্টে সংযুক্ত।
Arduino গাড়ির কিট
মেট্রিক বক্স
অ্যান্ডুইনো মেগা সিরিয়াল 2 এর সাথে জিপিএস রিসিভারের সাথে এবং সিরিয়াল 1 লোরা মডেমের সাথে সংযুক্ত। স্টোর ডেটার জন্য একটি এসডি কার্ড ব্যবহার করা হয়।
ধাপ ২: প্রথম টেস্ট
Urban 10.6 কিলোমিটার নগর কেন্দ্র, গ্যালারি এবং উপকূল বরাবর লুপ দিয়ে তৈরি পথ
রিসেপশন /ট্রান্সমিশনের অনুপাত হয়েছে 321 /500TX পয়েন্ট
RX পয়েন্ট
ধাপ 3: ইন্টারফেস তৈরি করুন
1 - একটি নতুন প্রকল্প LoRa সেট আপ করুন
প্রকল্প কনফিগারেশন খুলতে আইকন কোগ টিপুন
ধাপ 4: গেজ যোগ করুন
2) গেজ স্লাইডার খুলুন।
· 3) জিপিএস পর্যন্ত স্ক্রোল করুন।
· 4) ডেস্কে একটি যোগ করুন।
ধাপ 5: গেজ জিপিএস টেনে আনুন এবং OpenStreetMap যোগ করুন
· 5) ডেস্কে OpenStreetMap ম্যাপ যোগ করুন
আইকন ম্যাপে কম্পোনেন্ট জিপিএস টেনে আনলে ওপেনস্ট্রিট ম্যাপ তৈরি হয়।
ইন্টারফেস তৈরি করুন
· 6) মানচিত্র রিফ্রেশ পরিবর্তন করুন
মানচিত্র রিফ্রেশ করার সময় 5000 থেকে 10000 এ পরিবর্তন করুন
ধাপ 6: জিপিএস গেজ টানুন এবং টেবিল লগ যোগ করুন
· 7) একটি টেবিল লগ গেজ যোগ করুন।
জিপিএস আইকন টেবিলের উপরে গেজ টেনে নিয়ে গেজ টেবিল লগ তৈরি করা হয়
· 8) টেবিল লগ রিফ্রেশ পরিবর্তন করুন। মানচিত্র রিফ্রেশ করার সময় 5000 থেকে 10000 এ পরিবর্তন করুন
গেজের অবস্থান সামঞ্জস্য করুন
· 9) ড্র্যাগ গেজগুলি স্ক্রিন জুড়ে টেনে এনে গেজের অবস্থান সামঞ্জস্য করে।
· 10) প্রকল্প সংরক্ষণ করুন
ধাপ 7: কোড পান
10) কোড ধারক সক্রিয় করুন
উপরের ডানদিকে বোতাম, সমস্ত নির্বাচন করুন এবং বেস কোড অনুলিপি করুন।
ধাপ 8: Arduino IDE
· 11) Arduino IDE এ কোড আটকান
· 12) কোড সম্পাদনা করুন সংজ্ঞায় এই লাইনটি যোগ করুন
ধাপ 9: কোডিং বিবরণ
সংজ্ঞায় এই লাইন যোগ করুন
//*************************************************************************
// ** লাইব্রেরি ** // ***************************************** ************************************
#অন্তর্ভুক্ত // ++ জিপিএস লাইব্রেরি
#অন্তর্ভুক্ত // ++ SPI লাইব্রেরি #অন্তর্ভুক্ত
// ++ এসডি লাইব্রেরি //
*************************************************************************
// ** SD ** // ******************************************* ************************************
// * এসপিআই বাসের সাথে সংযুক্ত এসডি কার্ড নিম্নরূপ:
// ** UNO: MOSI - pin 11, MISO - pin 12, CLK - pin 13, CS - pin 4
// (সিএস পিন পরিবর্তন করা যায়) এবং পিন #10 (এসএস) একটি আউটপুট হতে হবে
// ** মেগা: MOSI - পিন 51, MISO - পিন 50, CLK - পিন 52, CS - পিন 53
// (সিএস পিন পরিবর্তন করা যায়) এবং পিন #52 (এসএস) একটি আউটপুট হতে হবে
// ** লিওনার্দো: ICSP হেডারের মাধ্যমে হার্ডওয়্যার SPI এর সাথে সংযোগ করুন
// পিন 4 এখানে অন্যান্য Arduino উদাহরণ const int chipSelect = 53 এর সাথে সামঞ্জস্যের জন্য ব্যবহৃত হয়;
// ++ এসডি পিন নির্বাচক
//*************************************************************************
//** জিপিএস ** //***************************************** ************************************
TinyGPS জিপিএস; // ++ সিরিয়াল 2 এ জিপিএস
অকার্যকর gpsdump (TinyGPS & gps); // ++
bool newdataGPS = মিথ্যা; // ++
সেটআপ এ এই লাইন যোগ করুন ()
//***********************************************************************
// ** জিপিএস সিরিয়াল সেটআপ ** // ***************************************** ************************************
Serial2.begin (9600); // ++
বিলম্ব (1000); // ++
//***********************************************************************
// ** SD আরম্ভ ** // ****************************************** *********************************
// নিশ্চিত করুন যে ডিফল্ট চিপ সিলেক্ট পিন // ++ এ সেট করা আছে
// আউটপুট, এমনকি যদি আপনি এটি ব্যবহার না করেন: // ++
পিনমোড (এসএস, আউটপুট); // ++
Serial.println (F ("এসডি কার্ড আরম্ভ করা …")); // ++
// দেখুন কার্ডটি আছে কিনা এবং আরম্ভ করা যাবে কিনা: // ++
যদি (! SD.begin (chipSelect)) {// ++
Serial.println (F ("কার্ড ব্যর্থ, বা উপস্থিত নয়")); // ++
// আর কিছু করবেন না: // ++
প্রত্যাবর্তন; // ++
} অন্যথায় {// ++
Serial.println (F ("SD card OK")); // ++
} // ++
লুপ () অকার্যকর এই লাইন যোগ করুন
serialEvent2 (); // ++ জিপিএস সিরিয়াল ইভেন্ট কল করুন
SeriaEvent2 কোড যোগ করুন
//*************************************************************************
// ** GPS serialEvent ** // ****************************************** ***********************************
void serialEvent2 () {// ++
while (Serial2.available ()) {// ++
char c = Serial2.read (); // ++
// সিরিয়াল.প্রিন্ট (গ); // কাঁচা জিপিএস ডেটা দেখতে অস্বস্তি // ++
যদি (gps.encode (c)) {// ++
newdataGPS = সত্য; // ++
বিরতি; // অবিলম্বে নতুন ডেটা প্রিন্ট করতে অসুবিধা! // ++
} // ++
} // ++
} // ++
জিপিএস ডাম্প ভাউড যোগ করুন
//*************************************************************************
// ** জিপিএস ডাম্প ** // ****************************************** ***********************************
// ** ডিগ্রীতে অক্ষাংশের বৈধ পরিসর হল -90 এবং +90। **
// ** দ্রাঘিমা রেঞ্জ -180 এবং +180 **
// ** পূর্ব-পশ্চিম অবস্থান নির্দিষ্ট করে **
//** "123456789 1234567890" **
//** "000.00000;0000.00000" ** //*************************************************************************
void gpsdump (TinyGPS & gps) // ++
{ // ++
int বছর; // ++
বাইট মাস, দিন, ঘন্টা, মিনিট, সেকেন্ড, শততম; // ++
স্বাক্ষরবিহীন দীর্ঘ বয়স; // ++
gps.f_get_position (& LATGP00, & LONGP00, & বয়স); // ++
gps.crack_datetime (& year, & month, & day, & hour, // ++
& মিনিট, & দ্বিতীয়, & শততম, & বয়স); // ++
লং ল্যাট, লন; // ++
gps.get_position (& lat, & lon, & age); // ++
// *********************************************************************
// ** লগ ইন করার জন্য ডেটা একত্রিত করার জন্য একটি স্ট্রিং তৈরি করুন: **
// *********************************************************************
স্ট্রিং dataString = ""; // ++
dataString += (lat / 100000); // ++
dataString += "।"; // ++
dataString += lat - (lat / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += (lon / 100000); // ++
dataString += "।"; // ++
dataString += lon - (lon / 100000) * 100000; // ++
dataString += ";"; // ++
dataString += স্ট্রিং (স্ট্যাটিক_কাস্ট (দিন)); // ++
dataString += "/"; // ++
dataString += স্ট্রিং (স্ট্যাটিক_কাস্ট (মাস)); // ++
dataString += "/"; // ++
dataString += স্ট্রিং (বছর); // ++
dataString += ";"; // ++
dataString += স্ট্রিং (স্ট্যাটিক_কাস্ট (ঘন্টা)); // ++
dataString += ":"; // ++
dataString += স্ট্রিং (স্ট্যাটিক_কাস্ট (মিনিট)); // ++
dataString += ":"; // ++
dataString += স্ট্রিং (স্ট্যাটিক_কাস্ট (সেকেন্ড)); // ++ // ************************************************ *******************************
// ** SD এ সংরক্ষণ করুন ** // ***************************************** **************************************
// ফাইলটি খুলুন। মনে রাখবেন যে একবারে কেবল একটি ফাইল খোলা যেতে পারে, **
// তাই অন্যটি খোলার আগে আপনাকে এটি বন্ধ করতে হবে। ** // ************************************************ *****************************
ফাইল dataFile = SD.open ("gps00.txt", FILE_WRITE); // ++
// ***********************************************************************
// ** যদি ফাইলটি পাওয়া যায় তবে এটিতে লিখুন: **
// ***********************************************************************
যদি (dataFile) {// ++
dataFile.println (dataString); // ++
dataFile.close (); // ++
} অন্যথায় {// ++
Serial.println (F ("ERROR SD Write")); // ++
} // ++
}
আপনি যদি কোডটি ডাউনলোড করতে চান তবে দয়া করে এই পৃষ্ঠাটি দেখুন।
প্রস্তাবিত:
লোরা আরডুইনো কন্ট্রোল রিলে মডিউল সার্কিট: 12 টি ধাপ
লোরা আরডুইনো কন্ট্রোল রিলে মডিউল সার্কিট: এই লোরা প্রজেক্টে আমরা দেখব কিভাবে লোরা আরডুইনো রিলে কন্ট্রোল সার্কিট দিয়ে হাই ভোল্টেজ ডিভাইস নিয়ন্ত্রণ করা যায়। এই Arduino Lora প্রকল্পে, আমরা 5 টি হোম যন্ত্রপাতি নিয়ন্ত্রণ করতে Reyax RYLR896 Lora মডিউল, Arduino, এবং 12v রিলে মডিউল ব্যবহার করব
লোরা জিপিএস ট্র্যাকার/পেজার: 9 টি ধাপ (ছবি সহ)
LoRa জিপিএস ট্র্যাকার/পেজার: --- একটি ডিভাইস যা রিওল-টাইম লোকেশন ট্র্যাকিং এবং টু-ওয়ে পেজারকে লোরা জাল নেটওয়ার্কের সাথে সংযুক্ত করে। আমি কাজ করা অন্যান্য রিপল লোরা জাল প্রকল্পগুলিতে আগ্রহী
লং রেঞ্জ, 1.8 কিমি, আরডুইনো থেকে আরডুইনো ওয়্যারলেস যোগাযোগ HC-12 এর সাথে।: 6 ধাপ (ছবি সহ)
HC-12 এর সাথে লম্বা পরিসীমা, 1.8km, Arduino থেকে Arduino Wireless Communication: এই নির্দেশে আপনি শিখবেন কিভাবে Arduinos এর মধ্যে 1.8km পর্যন্ত খোলা বাতাসে দীর্ঘ দূরত্বের মধ্যে যোগাযোগ করতে হয়। HC-12 একটি বেতার সিরিয়াল পোর্ট যোগাযোগ মডিউল যা খুব দরকারী, অত্যন্ত শক্তিশালী এবং ব্যবহার করা সহজ। প্রথমে আপনি লি
ট্রিপ কম্পিউটার - আপনার গাড়ির জন্য জিপিএস ট্রিপ কম্পিউটার এবং আবহাওয়া মডিউল: 11 টি ধাপ (ছবি সহ)
ট্রিপ কম্পিউটার - আপনার গাড়ির জন্য জিপিএস ট্রিপ কম্পিউটার এবং আবহাওয়া মডিউল: একটি শীতল রাস্পবেরি পাই প্রকল্প যা জিপিএস ব্রেকআউট মডিউল এবং 2 টি ছোট ডিগোল ডিসপ্লে ব্যবহার করে আপনার ড্যাশে নেভিগেশন কম্পিউটার রয়েছে
কিভাবে একটি দুর্দান্ত জিপিএস ট্র্যাকিং ম্যাপের জন্য আপনার গুগল আর্থের সাথে ডিলর্মে আর্থমেট জিপিএস এলটি -20 কে সংযুক্ত করবেন ।: 5 টি ধাপ
কিভাবে একটি দুর্দান্ত জিপিএস ট্র্যাকিং ম্যাপের জন্য আপনার Google আর্থের সাথে DeLorme Earthmate GPS LT-20 কে সংযুক্ত করবেন: আমি আপনাকে দেখাবো কিভাবে গুগল আর্থ প্লাস ব্যবহার না করে জনপ্রিয় গুগল আর্থ প্রোগ্রামের সাথে একটি জিপিএস ডিভাইস সংযুক্ত করতে হয়। আমার বড় বাজেট নেই তাই আমি গ্যারান্টি দিতে পারি যে এটি যতটা সম্ভব সস্তা হবে