Ha érdekli, hol pontosan abban a pillanatban található az ISS (Nemzetközi Űrállomás), akkor ez a projekt az Ön számára.
A készülék belsejében két léptetőmotor található, amelyek vezérlik a lézer helyzetét. A Föld azon részének megvilágítását is, amelyen a nap sugarai esnek, szintén megvalósítják.
Szerszámok és anyagok:
-3D nyomtatott föld 18 cm átmérővel;
-3D nyomtató;
-Rézcső;
-Beton csempe;
-Wemos D1 Mini modul Wi-Fi-vel;
- Szervóhajtás EMAX ES3352 MG;
-Lépéses motor 28BYJ-48 az ULN2003 illesztőprogrammal;
-10 LED NeoPixels;
- 405 nm hullámhosszú lézer;
- Végállás kapcsoló;
- 5V 3A tápegység;
Első lépés: 3D nyomtatás
Az összes felszereléshez ki kell nyomtatnia a keret részleteit. Letölthet fájlokat nyomtatáshoz itt.
A keret három részből áll:
-bázis - léptetőmotor, WEMOS, Neopixels szalag és rézcső rögzítéséhez.
- a végálláskapcsoló felszerelésének középső része;
- A felső rész szervomotor felszerelésére szolgál.
Második lépés: Csatlakozás és felépítés
Teljesítményként 5 V 3A feszültséget kell biztosítani. A tápellátást a csatlakozó biztosítja a léptető meghajtóhoz, a lézerhez, a LED-ekhez és a Wemos modulhoz.
Ezután csatlakoznia kell a Wemoshoz:
1) lépésvezető
IN1-> D5
IN2-> D6
IN3-> D7
IN4-> D8
2) Szervómotor
Data Servo Pin -> D1
3) LED-ek
Neopixels tű -> D2
4) Végálláskapcsoló
Két kapcsolótű a GND-n és a D3-on
Harmadik lépés: Kód
Annak érdekében, hogy két motor szinkronban mozogjon az ISS-sel, valós időben meg kell szereznie az ISS helyzetét:
Ehhez először az API-t fogjuk használni Nyissa meg az értesítést itt
Ezután az adatokat elemeznie kell az ISS helyértékének az elemzés segítségével: ArduinoJson könyvtár
#include 0) {// elemzés
const size_t bufferSize = JSON_OBJECT_SIZE (2) + JSON_OBJECT_SIZE (3) + 100;
DynamicJsonBuffer jsonBuffer (bufferSize);
JsonObject & root = jsonBuffer.parseObject (http.getString ()); // Paraméterek
const char * message = root ["üzenet"];
const char * lon = root ["iss_position"] ["longitude"];
const char * lat = gyökér ["iss_position"] ["szélesség"]; // Kimenet a soros monitorra
Serial.print ("Üzenet:");
Serial.println (üzenet);
Serial.print ("hosszúság:");
Serial.println (lon);
Serial.print ("szélesség:");
Serial.println (lat);
}
http.end (); // Zárja be a kapcsolatot
}
késés (50000);
}
Következő kód Arduino lehetővé teszi az ISS helyének megszerzését, hogy a lézert a Föld felszínén a kívánt helyre mozgassa, és megkapja a Nap helyzetét, hogy megvilágítsa a Föld felszínén lévő megfelelő LED-eket, amelyeket a Nap világít.
ISS_Tracker_Final.ino
Minden kész.