Съдържание:
- Стъпка 1: Изграждане на базова станция
- Стъпка 2: Първият тест
- Стъпка 3: Създайте интерфейса
- Стъпка 4: Добавете габарит
- Стъпка 5: Плъзнете Gauge GPS и добавете OpenStreetMap
- Стъпка 6: Плъзнете GPS Gauge и добавете дневник на таблицата
- Стъпка 7: Вземете код
- Стъпка 8: Arduino IDE
- Стъпка 9: Детайли за кодиране
Видео: Проект Arduino: Модул LoRa за изпитване RF1276 за решение за проследяване на GPS: 9 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
Връзка: USB - сериен
Нуждаете се: Браузър Chrome
Нуждаете се от: 1 X Arduino Mega
Нуждаете се от: 1 X GPS
Нуждаете се от: 1 X SD карта
Нуждаете се от: 2 X LoRa модем RF1276
Функция: Arduino Изпраща GPS стойност към основната база-Основна база съхранява данни в Dataino Server Lora модул: Свръхдален RF1276 от APPCONWIRELESS LoRa е нова, частна и модулирана техника с разширен спектър, която позволява изпращане на данни при изключително ниски скорости на данни до изключително дълги разстояния. Ниската скорост на предаване на данни (до няколко байта в секунда) и LoRa модулация водят до много ниска чувствителност на приемника, което означава, че в този тест означава повече от 10 км.
Стъпка 1: Изграждане на базова станция
Интернет връзка с ширина на компютъра и модем LoRa, свързан към USB порт.
Комплект за кола Arduino ·
Метричната кутия
Anduino Mega, свързан към сериен 2 към GPS приемник, и Serial 1 към модем LoRa. SD карта се използва за съхранение на данни.
Стъпка 2: Първият тест
· 10,6 км по пътека през градските центрове, галерии и по крайбрежието, направени с бримки
Съотношението приемане /предаване е 321 /500TX точка
RX точка
Стъпка 3: Създайте интерфейса
1 - Настройте нов проект LoRa
Натиснете икона cog, за да отворите конфигурацията на проекта
Стъпка 4: Добавете габарит
2) Отворете плъзгача на манометъра.
· 3) Превъртете до GPS.
· 4) Добавете един към бюрото.
Стъпка 5: Плъзнете Gauge GPS и добавете OpenStreetMap
· 5) Добавете карта OpenStreetMap към бюрото
Плъзгайки компонента GPS върху картата с икони, OpenStreet карта се генерира.
Създайте интерфейса
· 6) Промяна на опресняването на картата
Променете времето за опресняване на картата от 5000 на 10000
Стъпка 6: Плъзнете GPS Gauge и добавете дневник на таблицата
· 7) Добавете таблица с габарит.
Чрез плъзгане на габарита над таблицата с иконите на GPS се създава дневник на таблицата с габарити
· 8) Промяна на опресняване на дневника на таблицата. Променете времето за опресняване на картата от 5000 на 10000
Регулирайте положението на измервателните уреди
· 9) Манометрите за плъзгане регулират позицията на измервателните уреди, като ги плъзгат по екрана.
· 10) Запазване на проекта
Стъпка 7: Вземете код
10) Активирайте контейнера за код
Бутон горе вдясно, изберете всички и копирайте базовия код.
Стъпка 8: Arduino IDE
· 11) Поставете код на Arduino IDE
· 12) Редактиране на код Добавете този ред в определението
Стъпка 9: Детайли за кодиране
Добавете този ред в определението
//*************************************************************************
//** БИБЛИОТЕКА ** //***************************************** ********************************
#include // ++ GPS библиотека
#include // ++ SPI библиотека #include
// ++ SD библиотека //
*************************************************************************
// ** SD ** // ***************************************** ********************************
// * SD карта, свързана към SPI шина, както следва:
// ** UNO: MOSI - пин 11, MISO - щифт 12, CLK - щифт 13, CS - щифт 4
// (CS щифт може да бъде променен) и пин #10 (SS) трябва да бъде изход
// ** Мега: MOSI - пин 51, MISO - пин 50, CLK - пин 52, CS - пин 53
// (CS щифт може да се променя) и пин #52 (SS) трябва да бъде изход
// ** Леонардо: Свържете се към хардуерния SPI чрез заглавката на ICSP
// Пин 4, използван тук за съгласуваност с други примери на Arduino const int chipSelect = 53;
// ++ SD селектор за избиране
//*************************************************************************
// ** GPS ** // ******************************************* ********************************
TinyGPS gps; // ++ GPS на Serial2
void gpsdump (TinyGPS & gps); // ++
bool newdataGPS = невярно; // ++
Добавете този ред в настройката ()
//***********************************************************************
// ** Последователна настройка на GPS ** // *************************************** ********************************
Serial2.begin (9600); // ++
забавяне (1000); // ++
//***********************************************************************
// ** SD инициализиране ** // **************************************** *******************************
// уверете се, че изводът за избор на чип по подразбиране е зададен на // ++
// изход, дори ако не го използвате: // ++
pinMode (SS, OUTPUT); // ++
Serial.println (F ("Инициализиране на SD карта …")); // ++
// вижте дали картата е налична и може ли да се инициализира: // ++
if (! SD.begin (chipSelect)) {// ++
Serial.println (F ("Картата е неуспешна или я няма")); // ++
// не правете нищо повече: // ++
връщане; // ++
} else {// ++
Serial.println (F ("SD карта OK")); // ++
} // ++
Добавете тези редове в loop () void
serialEvent2 (); // ++ повикване GPS последователно събитие
Добавете код на SeriaEvent2
//*************************************************************************
// ** GPS serialEvent ** // ************************************** *********************************
void serialEvent2 () {// ++
while (Serial2.available ()) {// ++
char c = Serial2.read (); // ++
//Serial.print(c); // разкомментирайте, за да видите необработени GPS данни // ++
if (gps.encode (c)) {// ++
newdataGPS = вярно; // ++
прекъсване; // не коментирайте незабавно да отпечатате нови данни! // ++
} // ++
} // ++
} // ++
Добавете GPS dump voud
//*************************************************************************
// ** gmp dump ** // **************************************** *********************************
// ** Валидният диапазон на географска ширина в градуси е -90 и +90. **
// ** Географската дължина е в диапазона -180 и +180 **
// ** посочваща източно-западна позиция **
//** "123456789 1234567890" **
//** "000.00000;0000.00000" ** //*************************************************************************
void gpsdump (TinyGPS & gps) // ++
{ // ++
int година; // ++
байт месец, ден, час, минута, секунда, стотни; // ++
неподписана дълга възраст; // ++
gps.f_get_position (& LATGP00, & LONGP00, & age); // ++
gps.crack_datetime (& година, & месец, & ден, & час, // ++
& минута, & второ, & стотни, & възраст); // ++
дълъг lat, lon; // ++
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 += Низ (static_cast (ден)); // ++
dataString += "/"; // ++
dataString += Низ (static_cast (месец)); // ++
dataString += "/"; // ++
dataString += Низ (година); // ++
dataString += ";"; // ++
dataString += String (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 (); // ++
} else {// ++
Serial.println (F ("ERROR SD Write")); // ++
} // ++
}
Ако искате да изтеглите кода, моля, посетете тази страница.
Препоръчано:
Проследяване и проследяване за малки магазини: 9 стъпки (със снимки)
Проследяване и следене за малки магазини: Това е система, създадена за малки магазини, която трябва да се монтира на електронни велосипеди или електронни тротинетки за доставки на къси разстояния, например пекарна, която иска да доставя сладкиши. Какво означава Track and Trace? Проследяване и проследяване е система, използвана от ca
Направи си сам интелигентен робот за проследяване на комплекти за кола Проследяване на фоточувствителна кола: 7 стъпки
DIY Smart Robot Tracking Car Kits Проследяване на автомобил Фоточувствителен: Дизайн от SINONING ROBOT Можете да закупите от проследяващ робот car Теорът LM393 сравнете двата фоторезистора, когато има един страничен фоторезистор LED на БЯЛО, страната на двигателя ще спре веднага, другата страна на двигателя завърти се, така че
E32-433T Урок за модул LoRa - DIY Breakout Board за модул E32: 6 стъпки
E32-433T Урок за модул LoRa | DIY Breakout Board за модул E32: Хей, какво става, момчета! Akarsh тук от CETech, Този мой проект е по-скоро крива на обучение, за да се разбере работата на модула E32 LoRa от eByte, който е 1-ватов трансивър модул с висока мощност. След като разберем работата, имам дизайн
План за изпитване на сензора за влажност на почвата: 6 стъпки (със снимки)
План за изпитване на сензора за влажност на почвата: Предизвикателство: Проектирайте и изпълнете план, който ще светне ЧЕРВЕН светодиод, когато почвата е мокра, и ЗЕЛЕН светодиод, когато почвата е суха. Това ще включва използването на сензор за влажност на почвата. Цел: Целта на тази инструкция е да се види дали е валяло и дали растението
Автоматизирани домашни завеси - Мини проект с модул BluChip на MakerChips (nRF51 BLE): 7 стъпки (със снимки)
Автоматизирани домашни завеси - Мини проект с модул BluChip (nRF51 BLE) на MakerChips: Представете си, че се събуждате и искате да проникнете лъч слънце през прозорците си, или да затворите завесите, за да можете да спите по -нататък, без усилията да се приближите до себе си към завесите, а по -скоро с натискане на бутон на вашия смартфон