Jos olet kiinnostunut missä ISS (kansainvälinen avaruusasema) sijaitsee juuri nyt, projekti on sinulle.
Laitteen sisällä on kaksi askelmoottoria, jotka ohjaavat laserin sijaintia. Maan sen osan valaistus, johon auringonsäteet putoavat, on myös toteutettu.
Työkalut ja materiaalit:
-3D-painettu maa, halkaisija 18 cm;
-3D-tulostin;
-Kupperi putki;
-Betoni laatta;
-Wemos D1 Mini -moduuli, jossa Wi-Fi;
- Servovetolaite EMAX ES3352 MG;
- Askelmoottori 28BYJ-48 kuljettajakortilla ULN2003;
-10 LEDiä NeoPixels;
- laser, jonka aallonpituus on 405 nm;
- Rajakytkin;
- Virtalähde 5V 3A;
Vaihe yksi: 3D-tulostus
Kaikkien tarvikkeiden kokoamiseksi sinun on tulostettava kehyksen yksityiskohdat. Voit ladata tiedostoja tulostettavaksi täällä.
Kehyksessä on kolme osaa:
-kanta - askelmoottorin, WEMOS, Neopixels -teipin ja kupariputken asentamiseen.
- keskiosa rajakytkimen asentamiseksi;
- Yläosa on tarkoitettu moottorin asentamiseen.
Vaihe toinen: Yhdistä ja rakenna
Virtalähteeksi syötetään 5 V 3A: n jännite. Virta syötetään liittimestä askelohjaimeen, laseriin, LEDeihin ja Wemos-moduuliin.
Seuraavaksi sinun on luotava yhteys Wemosiin:
1) Askelohjain
IN1-> D5
IN2-> D6
IN3-> D7
IN4-> D8
2) servomoottori
Datapalvelinnasta -> D1
3) LEDit
Neopixels-pin -> D2
4) Rajakytkin
Kaksi kytkintappia GND: ssä ja D3: ssa
Vaihe kolme: Koodi
Jotta kaksi moottoria voisi liikkua synkronisesti ISS: n kanssa, sinun on saatava ISS: n sijainti reaaliajassa:
Tätä varten käytämme ensin sovellusliittymää Avaa ilmoitus täällä
Sitten sinun on analysoitava tiedot saadaksesi ISS-sijaintiarvo data-analyysin avulla: ArduinoJson-kirjasto
#include 0) {// jäsentäminen
const size_t bufferSize = JSON_OBJECT_SIZE (2) + JSON_OBJECT_SIZE (3) + 100;
DynamicJsonBuffer jsonBuffer (bufferSize);
JsonObject & root = jsonBuffer.parseObject (http.getString ()); // Parametrit
const char * message = root ["viesti"];
const char * lon = juuri ["iss_position"] ["pituusaste"];
const char * lat = juuri ["iss_position"] ["leveysaste"]; // Lähtö sarjamonitoriin
Serial.print ("Viesti:");
Serial.println (viesti);
Serial.print ("Pituusaste:");
Serial.println (lon);
Serial.print ("Latitude:");
Serial.println (lat);
}
http.end (); // Sulje yhteys
}
viive (50000);
}
Seuraava koodi Työläs avulla voit saada ISS: n sijainnin siirtääksesi laserin haluamaasi kohtaan maan pinnalla ja saadaksesi Auringon sijainnin valaisemaan vastaavia LED-valoja maan pinnalla, joita aurinko valaisee.
ISS_Tracker_Final.ino
Kaikki on valmis.