INHOUDSOPGAWE:

ISS -doplamp: 5 stappe (met foto's)
ISS -doplamp: 5 stappe (met foto's)

Video: ISS -doplamp: 5 stappe (met foto's)

Video: ISS -doplamp: 5 stappe (met foto's)
Video: Zou jij het kopen ? 😂 #nederlands #holland 2024, Julie
Anonim
ISS -doplamp
ISS -doplamp
ISS -doplamp
ISS -doplamp

Meestal wonder ek waarheen kyk die ISS in die lug. Om hierdie vraag te beantwoord, het ek 'n fisiese voorwerp gemaak om presies te weet waar die ISS intyds is.

Die ISS -opsporingslamp is 'n internet -gekoppelde lamp wat die ISS voortdurend opspoor en dit op die aarde se oppervlak (gedruk in 3D) vertoon.

Bonus: die lamp vertoon ook die sonnige kant van die aarde met Neopixels! ??

In hierdie instruksies gaan ons die verskillende stappe sien om hierdie lamp te bou, gebaseer op WEMOS D1 Mini, stapmotor, servomotor, laser en 3D -onderdele.

Ek bou alleen, behalwe die 3D -gedrukte aarde, wat op Aliexpress gekoop is.

Sagteware:

  • Arduino -gebaseerde kode
  • API ISS -ligging: Open Notify - Huidige ligging van die ISS (deur Nathan Bergey)
  • Ontledingsdata: ArduinoJson -biblioteek (deur Benoit Blanchon)

CAD en onderdele:

  • 3D -gedrukte aarde met 'n deursnee van 18 cm (gekoop op Aliexpress: hier)
  • 3D -gedrukte motorsteun - ontwerp met Fusion 360 en gedruk met Prusa i3 MK2S
  • Koper buis
  • Betonbasis, gemaak met The French Vikings

Hardeware:

  • Mikrokontroleur: Wemos D1 Mini (geïntegreerde wifi -antenna)
  • Servo EMAX ES3352 MG
  • Stapmotor 28byj-48 (met die bestuurdersbord van ULN2003)
  • 10 NeoPixels LED
  • Laser met 'n golflengte van 405 nm
  • Limiet skakelaar
  • 5V 3A kragtoevoer

Stap 1: Modelleer onderdele in Fusion 360 en druk

Modelleer dele in Fusion 360 en drukwerk
Modelleer dele in Fusion 360 en drukwerk
Modelleer dele in Fusion 360 en drukwerk
Modelleer dele in Fusion 360 en drukwerk
Modelleer dele in Fusion 360 en drukwerk
Modelleer dele in Fusion 360 en drukwerk

Om al die hardeware te monteer, gaan ons die basis vir die samestelling van 3D -onderdele skep. Die onderdele is hier op Thingiverse beskikbaar.

Daar is 3 dele:

1) Die Stepper Stepper Longitude

Hierdie deel is gemaak vir die montering van die stapmotor, die WEMOS, die Neopixels -strook en die koperbuis

2) Die ondersteuningskakelaar

Hierdie deel is gemaak vir die montering van die eindskakelaar (gebruik om die breedtegraad -0 °/-180 ° aan die stepper aan te dui). Dit is vasgemaak aan die bokant van die stepper

3) Die Support Servo Latitude

Hierdie deel is gemaak vir die montering van die servomotor. Die Support Servo is gemonteer op die stapmotor

Al die dele is op Prusa I3 MK2S gedruk, met 'n swart PETG -filament

Stap 2: Bedrading en montering

Bedrading en montering
Bedrading en montering
Bedrading en montering
Bedrading en montering

Hierdie kring sal 'n 5V 3A -kraginvoer hê (om dieselfde toevoer te gebruik vir die stepper driver, die laser, die Neopixels en die WEMOS)

Deur die volgende skets moet ons die kragtoevoer direk aan die bogenoemde elemente parallel soldeer:

  • Stepper Driver
  • Laser
  • Neopixels strook (NB: daar is 10 Neopixels in werklikheid, nie 8 soos die skets toon nie)
  • WEMOS

Vervolgens moet ons die verskillende elemente aan die WEMOS koppel:

1) Die stepper driver volgens hierdie lys:

  • IN1-> D5
  • IN2-> D6
  • IN3-> D7
  • IN4-> D8

2) Die servomotor volg:

Data Servo Pin -> D1

3) Die Neopixels strook die volgende:

Data Neopixels Pin -> D2

4) Die eindskakelaar volg:

Die twee penne van die skakelaar na die GND en D3

Koppel die eindskakelaar op 'n manier dat die stroombaan oopgemaak/breek as ons op die skakelaar druk (sodat die stroombaan gesluit word as niks daarop druk nie). Dit is om verkeerde lesings as gevolg van 'n spanningspiek te vermy.

Stap 3: Arduino -kode - Kry die ISS -posisie intyds

Om die twee motors aan te dryf om die posisie van die ISS te bereik, moet ons die posisie van die ISS intyds kry:

  • Vir die eerste keer gebruik ons die API van Open Notify Here
  • Dan moet ons die data ontleed om 'n eenvoudige waarde van die ISS -ligging te kry met behulp van ontledingsdata: ArduinoJson -biblioteek (deur Benoit Blanchon)

#include <ESP8266WiFi.h #include <ESP8266HTTPClient.h #include <ArduinoJson.h // WiFi Parameters const char* ssid = "XXXXX"; const char* wagwoord = "XXXXX"; ongeldige opstelling () {Serial.begin (115200); WiFi.begin (ssid, wagwoord); terwyl (WiFi.status ()! = WL_CONNECTED) {vertraging (1000); Serial.println ("Koppel …"); }}

Hierdie program verbind die NodeMCU met die WiFi, maak dan verbinding met die API, kry die data en druk dit per reeks af.

leemte -lus () {

if (WiFi.status () == WL_CONNECTED) // Gaan WiFi -status na {HTTPClient http; // Voorwerp van klas HTTPClient http.begin ("https://api.open-notify.org/iss-now.json"); int httpCode = http. GET (); // Gaan die terugkeer -kode na as (httpCode> 0) {// Ontleding const size_t bufferSize = JSON_OBJECT_SIZE (2) + JSON_OBJECT_SIZE (3) + 100; DynamicJsonBuffer jsonBuffer (bufferSize); JsonObject & root = jsonBuffer.parseObject (http.getString ()); // Parameters const char* boodskap = root ["boodskap"]; const char* lon = root ["iss_position"] ["longitude"]; const char* lat = root ["iss_position"] ["breedtegraad"]; // Uitvoer na seriële monitor Serial.print ("Boodskap:"); Serial.println (boodskap); Serial.print ("Lengtegraad:"); Serial.println (lon); Serial.print ("Breedtegraad:"); Serial.println (lat); } http.end (); // Sluit verbinding} vertraging (50000); }

Stap 4: Finale Arduino -kode

Die volgende Arduino -kode kry die ISS -plek om die laser na die regte plek op die aardoppervlak te skuif, en om die posisie van die son te kry om die betrokke Neopixels te verlig om die oppervlak van die aarde deur die son aan te lig.

Bonus 1: As die lamp aangeskakel word, tydens die initialiseringsfase, wys die laser die posisie van die lamp (id: die posisie waar die router is)

Bonus 2: As die ISS langs die ligging van die lamp (+/- 2 ° lank en +/- 2 ° lat.) Is, sal al die Neopixels liggies knipoog

Stap 5: Geniet u ISS Tracker

U het 'n ISS -doplamp gemaak, geniet dit!

Eerste keer skrywerwedstryd
Eerste keer skrywerwedstryd
Eerste keer skrywerwedstryd
Eerste keer skrywerwedstryd

Eerste prys in die eerste keer skrywerwedstryd

Aanbeveel: