Ако се интересувате къде точно в момента се намира ISS (Международната космическа станция), тогава този проект е за вас.
Вътре в устройството има два стъпкови двигателя, които контролират положението на лазера. Осъществява се и осветяването на онази част от Земята, върху която падат слънчевите лъчи.
Инструменти и материали:
-3D отпечатана Земя с диаметър 18 см;
-3D принтер;
-Копкова тръба;
-Бетонна плочка;
-Wemos D1 Mini модул с Wi-Fi;
- Серво задвижване EMAX ES3352 MG;
-Стап двигател 28BYJ-48 с борд на водача ULN2003;
-10 LED светодиода NeoPixels;
-Лазер с дължина на вълната 405 nm;
- Пределен превключвател;
- Захранване 5V 3A;
Първа стъпка: 3D печат
За да сглобите цялото оборудване, което трябва да отпечатате детайлите на рамката. Можете да изтеглите файлове за печат тук.
Рамката има три части:
-основа - за монтиране на стъпков двигател, WEMOS, лента Neopixels и медна тръба.
- средната част за инсталиране на крайния превключвател;
- Горната част е за монтаж на серводвигател.
Стъпка втора: Свържете и изградете
За захранване ще се подава напрежение 5V 3A. Захранването се доставя от конектора към стъпаловия драйвер, лазер, светодиоди и Wemos модула.
След това трябва да направите връзка с Wemos:
1) Стъпка драйвер
IN1-> D5
IN2-> D6
IN3-> D7
IN4-> D8
2) Серво мотор
Data Servo Pin -> D1
3) светодиоди
Неопиксели ПИН -> D2
4) Пределен превключвател
Два превключващи щифта на GND и D3
Трета стъпка: Код
За да се движат два двигателя синхронно с ISS, трябва да получите позицията на МКС в реално време:
За да направите това, първо ще използваме API от Отворете известието тук
След това трябва да анализирате данните, за да получите стойността на местоположението на ISS, като използвате анализ на данните: Библиотека на ArduinoJson
#include 0) {// Разбор
const size_t bufferSize = JSON_OBJECT_SIZE (2) + JSON_OBJECT_SIZE (3) + 100;
DynamicJsonBuffer jsonBuffer (bufferSize);
JsonObject & root = jsonBuffer.parseObject (http.getString ()); // Параметри
const char * message = root ["съобщение"];
const char * lon = root ["iss_position"] ["дължина"];
const char * lat = root ["iss_position"] ["географска ширина"]; // Изход към сериен монитор
Serial.print ("Съобщение:");
Serial.println (съобщение);
Serial.print ("Longitude:");
Serial.println (lon);
Serial.print ("Latitude:");
Serial.println (lat);
}
http.end (); // Затворете връзката
}
забавяне (50000);
}
Следващ код Arduino ви позволява да получите местоположението на МКС, за да преместите лазера до желаното място на земната повърхност и да получите положението на Слънцето за осветяване на съответните светодиоди на земната повърхност, осветени от Слънцето.
ISS_Tracker_Final.ino
Всичко е готово.