Πίνακας περιεχομένων:

Λάμπα παρακολούθησης ISS: 5 βήματα (με εικόνες)
Λάμπα παρακολούθησης ISS: 5 βήματα (με εικόνες)

Βίντεο: Λάμπα παρακολούθησης ISS: 5 βήματα (με εικόνες)

Βίντεο: Λάμπα παρακολούθησης ISS: 5 βήματα (με εικόνες)
Βίντεο: Ξύλο μεταξύ κάμεραμαν του ΣΚΑΙ και πολίτη 2024, Ιούλιος
Anonim
Λάμπα παρακολούθησης ISS
Λάμπα παρακολούθησης ISS
Λάμπα παρακολούθησης ISS
Λάμπα παρακολούθησης ISS

Τις περισσότερες φορές, αναρωτιέμαι πού βρίσκεται ο ISS στον ουρανό. Για να απαντήσω σε αυτήν την ερώτηση, έκανα ένα φυσικό αντικείμενο για να γνωρίζω ακριβώς πού βρίσκεται ο ISS σε πραγματικό χρόνο.

Ο λαμπτήρας παρακολούθησης ISS είναι ένας λαμπτήρας συνδεδεμένος στο Διαδίκτυο, ο οποίος παρακολουθεί συνεχώς τον ISS και εμφανίζει τη θέση του στην επιφάνεια της Γης (τυπωμένο σε 3D).

Μπόνους: ο λαμπτήρας εμφανίζει επίσης την ηλιόλουστη πλευρά της Γης με Νεοπίξελ !;

Έτσι, σε αυτό το Instructables, θα δούμε τα διαφορετικά βήματα για την κατασκευή αυτής της λάμπας με βάση το WEMOS D1 Mini, stepper motor, σερβοκινητήρα, λέιζερ και τρισδιάστατα μέρη.

Χτίζω μόνος μου, εκτός από τη 3D εκτυπωμένη Γη, η οποία αγοράστηκε στο Aliexpress.

Λογισμικό:

  • Κώδικας με βάση το Arduino
  • API ISS Location: Open Notify - Current Location of the ISS (by Nathan Bergey)
  • Δεδομένα ανάλυσης: Βιβλιοθήκη ArduinoJson (από τον Benoit Blanchon)

CAD & ανταλλακτικά:

  • Τρισδιάστατη εκτύπωση Γης διαμέτρου 18 εκατοστών (αγοράστηκε στο Aliexpress: εδώ)
  • Υποστηρίγματα κινητήρα 3D εκτύπωσης - σχεδιασμένα με Fusion 360 και εκτυπωμένα με Prusa i3 MK2S
  • Σωλήνας χαλκού
  • Τσιμεντένια βάση, φτιαγμένη με τους Γάλλους Βίκινγκς

Σκεύη, εξαρτήματα:

  • Μικροελεγκτής: Wemos D1 Mini (ενσωματωμένη κεραία wifi)
  • Servo EMAX ES3352 MG
  • Stepper Motor 28byj-48 (με τον πίνακα οδηγών ULN2003)
  • 10 LED NeoPixels
  • Λέιζερ μήκους κύματος 405 nm
  • Διακόπτης ορίου
  • Τροφοδοτικό 5V 3A

Βήμα 1: Μοντελοποίηση εξαρτημάτων στο Fusion 360 και εκτύπωση

Μοντελοποίηση ανταλλακτικών στο Fusion 360 και εκτύπωση
Μοντελοποίηση ανταλλακτικών στο Fusion 360 και εκτύπωση
Μοντελοποίηση ανταλλακτικών στο Fusion 360 και εκτύπωση
Μοντελοποίηση ανταλλακτικών στο Fusion 360 και εκτύπωση
Μοντελοποίηση ανταλλακτικών στο Fusion 360 και εκτύπωση
Μοντελοποίηση ανταλλακτικών στο Fusion 360 και εκτύπωση

Για να τοποθετήσουμε όλο το υλικό, θα δημιουργήσουμε την βασική βάση συναρμολόγησης σε τρισδιάστατα μέρη. Τα μέρη είναι διαθέσιμα στο Thingiverse εδώ.

Υπάρχουν 3 μέρη:

1) The Support Stepper Γεωγραφικό μήκος

Αυτό το μέρος είναι κατασκευασμένο για την τοποθέτηση του βηματικού κινητήρα, του WEMOS, της ταινίας Neopixels και του χάλκινου σωλήνα

2) Ο διακόπτης υποστήριξης

Αυτό το μέρος είναι κατασκευασμένο για την τοποθέτηση του οριακού διακόπτη (χρησιμοποιήστε το για να υποδείξετε στο βήμα το γεωγραφικό πλάτος -0 °/-180 °). Είναι βιδωμένο στην κορυφή του stepper

3) Το Support Servo Latitude

Αυτό το μέρος είναι κατασκευασμένο για την τοποθέτηση του σερβοκινητήρα. Το Support Servo είναι τοποθετημένο στο βηματικό μοτέρ

Όλα τα μέρη εκτυπώθηκαν σε Prusa I3 MK2S, με μαύρο νήμα PETG

Βήμα 2: Καλωδίωση και συναρμολόγηση

Καλωδίωση και συναρμολόγηση
Καλωδίωση και συναρμολόγηση
Καλωδίωση και συναρμολόγηση
Καλωδίωση και συναρμολόγηση

Αυτό το κύκλωμα θα έχει είσοδο ισχύος 5V 3A (προκειμένου να χρησιμοποιηθεί η ίδια παροχή για το πρόγραμμα οδήγησης stepper, το λέιζερ, τα νεοπίξελ και το WEMOS)

Με το ακόλουθο σκίτσο, πρέπει να συγκολλήσουμε την τροφοδοσία απευθείας στα παραπάνω στοιχεία παράλληλα:

  • Stepper Driver
  • Λέιζερ
  • Λωρίδα Neopixels (Σημείωση: υπάρχουν 10 Neopixels στην πραγματικότητα, όχι 8 όπως δείχνει το σκίτσο)
  • WEMOS

Στη συνέχεια, πρέπει να συνδέσουμε τα διαφορετικά στοιχεία στο WEMOS:

1) Το πρόγραμμα οδήγησης stepper που ακολουθεί αυτήν τη λίστα:

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

2) Ο σερβοκινητήρας που ακολουθεί:

Data Servo Pin -> D1

3) Η ταινία Neopixels έχει ως εξής:

Καρφίτσα Νεοπίξελ Δεδομένων -> D2

4) Ο ακόλουθος διακόπτης ορίου:

Οι δύο ακίδες του διακόπτη στο GND και D3

Συνδέστε τον οριακό διακόπτη με τρόπο που το κύκλωμα ανοίγει/σπάει όταν πιέζουμε τον διακόπτη (έτσι το κύκλωμα κλείνει όταν δεν πιέζεται τίποτα). Αυτό γίνεται για να αποφευχθεί οποιαδήποτε λανθασμένη διάλεξη λόγω αιχμής τάσης.

Βήμα 3: Κωδικός Arduino - Λήψη της θέσης ISS σε πραγματικό χρόνο

Για να οδηγήσουμε τους δύο κινητήρες για να φτάσουμε στη θέση του ISS, πρέπει να πάρουμε τη θέση του ISS σε πραγματικό χρόνο:

  • Για αυτό πρώτα θα χρησιμοποιήσουμε το API από το Open Notify Here
  • Στη συνέχεια, πρέπει να αναλύσουμε τα δεδομένα για να λάβουμε απλή τιμή της τοποθεσίας ISS με τη βοήθεια δεδομένων ανάλυσης: ArduinoJson Library (από τον Benoit Blanchon)

#include <ESP8266WiFi.h #include <ESP8266HTTPClient.h #include <ArduinoJson.h // WiFi Parameters const char* ssid = "XXXXX"; const char* password = "XXXXX"; void setup () {Serial.begin (115200); WiFi.begin (ssid, κωδικός πρόσβασης); while (WiFi.status ()! = WL_CONNECTED) {καθυστέρηση (1000); Serial.println ("Σύνδεση …"); }}

Αυτό το πρόγραμμα συνδέει το NodeMCU με το WiFi, στη συνέχεια συνδέεται με το API, λαμβάνει τα δεδομένα και τα εκτυπώνει με σειριακή σειρά.

void loop () {

if (WiFi.status () == WL_CONNECTED) // Έλεγχος κατάστασης WiFi {HTTPClient http; // Αντικείμενο της κλάσης HTTPClient http.begin ("https://api.open-notify.org/iss-now.json"); int httpCode = http. GET (); // Ελέγξτε τον κωδικό που επιστρέφει αν (httpCode> 0) {// Parsing 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 ["message"]; const char* lon = ρίζα ["iss_position"] ["γεωγραφικό μήκος"]; const char* lat = ρίζα ["iss_position"] ["γεωγραφικό πλάτος"]; // Έξοδος σε σειριακή οθόνη Serial.print ("Μήνυμα:"); Serial.println (μήνυμα); Serial.print ("Γεωγραφικό μήκος:"); Serial.println (lon); Serial.print ("Latitude:"); Serial.println (lat); } http.end (); // Κλείσιμο σύνδεσης} καθυστέρηση (50000); }

Βήμα 4: Τελικός κώδικας Arduino

Ο ακόλουθος κώδικας Arduino παίρνει τη θέση του ISS για να μεταφέρει το λέιζερ στη σωστή θέση στην επιφάνεια της Γης και το να πάρει τη θέση του ήλιου για να φωτίσει τα σχετικά Νεοπρίξελ για να φωτίσει την επιφάνεια της Γης από τον ήλιο.

Μπόνους 1: Όταν ο λαμπτήρας είναι αναμμένος, κατά τη φάση της προετοιμασίας, το λέιζερ θα δείχνει τη θέση του λαμπτήρα (id: η θέση όπου βρίσκεται ο δρομολογητής)

Μπόνους 2: Όταν ο ISS βρίσκεται δίπλα στη θέση της λυχνίας (+/- 2 °. Και +/- 2 ° λατ.), Όλα τα Νεοπίξελ θα κλείσουν απαλά το μάτι

Βήμα 5: Απολαύστε το ISS Tracker

Έχετε φτιάξει μια λάμπα παρακολούθησης ISS, απολαύστε!

Διαγωνισμός συγγραφέων για πρώτη φορά
Διαγωνισμός συγγραφέων για πρώτη φορά
Διαγωνισμός συγγραφέων για πρώτη φορά
Διαγωνισμός συγγραφέων για πρώτη φορά

Πρώτο Βραβείο στον Διαγωνισμό Συγγραφέων για πρώτη φορά

Συνιστάται: