Table des matières:
- Étape 1: Modélisation de pièces dans Fusion 360 et impression
- Étape 2: Câblage et assemblage
- Étape 3: Code Arduino - Obtenir la position de l'ISS en temps réel
- Étape 4: Code Arduino final
- Étape 5: Profitez de votre traqueur ISS
Vidéo: Lampe de suivi ISS : 5 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
La plupart du temps, je me demande où est l'ISS qui regarde le ciel. Pour répondre à cette question, j'ai créé un objet physique pour savoir exactement où se trouve l'ISS en temps réel.
L'ISS Tracking Lamp est une lampe connectée à Internet qui suit en permanence l'ISS et affiche son emplacement à la surface de la Terre (imprimé en 3D).
Bonus: la lampe affiche également le côté ensoleillé de la Terre avec des Neopixels !??
Ainsi, dans ce Instructables, nous allons voir les différentes étapes pour construire cette lampe basée sur WEMOS D1 Mini, moteur pas à pas, servomoteur, laser et pièces 3D.
Je construis tout seul, à l'exception de la Terre imprimée en 3D, qui a été achetée sur Aliexpress.
Logiciel:
- Code basé sur Arduino
- API ISS Location: Open Notify - Current Location of the ISS (par Nathan Bergey)
- Parsing data: ArduinoJson Library (par Benoit Blanchon)
CAO & Pièces:
- Terre imprimée en 3D de 18cm de diamètre (acheté sur Aliexpress: ici)
- Supports de moteur imprimés en 3D - conçus avec Fusion 360 et imprimés avec Prusa i3 MK2S
- Tube en cuivre
- Socle en béton, réalisé avec The French Vikings
Matériel:
- Microcontrôleur: Wemos D1 Mini (antenne wifi intégrée)
- Servo EMAX ES3352 MG
- Moteur pas à pas 28byj-48 (avec la carte pilote ULN2003)
- 10 NéoPixels LED
- Laser de 405 nm de longueur d'onde
- Interrupteur de fin de course
- Alimentation 5V 3A
Étape 1: Modélisation de pièces dans Fusion 360 et impression
Pour monter tout le matériel, nous allons créer la base d'assemblage du noyau sur des pièces 3D. Les pièces sont disponibles sur Thingiverse ici.
Il y a 3 parties:
1) La Longitude du pas à pas de soutien
Cette pièce est faite pour le montage du moteur pas à pas, du WEMOS, de la bande Neopixels et du tube cuivre
2) Le commutateur de soutien
Cette pièce est destinée au montage du fin de course (à utiliser pour indiquer au stepper la latitude -0°/-180°). C'est vissé sur le dessus du stepper
3) La latitude du servo d'assistance
Cette pièce est faite pour le montage du servomoteur. Le Support Servo est monté sur le moteur pas à pas
Toutes les pièces ont été imprimées sur Prusa I3 MK2S, avec du filament PETG noir
Étape 2: Câblage et assemblage
Ce circuit aura une entrée d'alimentation 5V 3A (afin d'utiliser la même alimentation pour le driver pas à pas, le laser, les Neopixels et le WEMOS)
Par le croquis suivant, nous devons souder l'alimentation directement aux éléments ci-dessus en parallèle:
- Pilote pas à pas
- Laser
- Bande Neopixels (NB: il y a 10 Neopixels en réalité, pas 8 comme le montre le croquis)
- WEMOS
Ensuite, il faut connecter les différents éléments au WEMOS:
1) Le pilote pas à pas suivant cette liste:
- IN1->D5
- IN2->D6
- IN3->D7
- IN4->D8
2) Le servomoteur suivant:
Broche servo de données -> D1
3) La bande Neopixels suivante:
Broche Néopixels de données -> D2
4) Le fin de course suivant:
Les deux broches du commutateur vers le GND et le D3
Connectez l'interrupteur de fin de course de manière à ce que le circuit soit ouvert/interrompu lorsque nous appuyons sur l'interrupteur (ainsi le circuit est fermé lorsque rien n'appuie dessus). Ceci afin d'éviter toute fausse lecture due à un pic de tension.
Étape 3: Code Arduino - Obtenir la position de l'ISS en temps réel
Pour entraîner les deux moteurs à atteindre la position de l'ISS, nous devons obtenir la position de l'ISS en temps réel:
- Pour cela, nous utiliserons d'abord l'API d'Open Notify Here
- Ensuite, nous devons analyser les données pour obtenir une valeur simple de l'emplacement de l'ISS à l'aide de Parsing data: ArduinoJson Library (par Benoit Blanchon)
#include <ESP8266WiFi.h #include <ESP8266HTTPClient.h #include <ArduinoJson.h // Paramètres WiFi const char* ssid = "XXXXX"; const char* mot de passe = "XXXXX"; void setup() { Serial.begin(115200); WiFi.begin(ssid, mot de passe); while (WiFi.status()!= WL_CONNECTED) { delay(1000); Serial.println("Connexion…"); } }
Ce programme connecte le NodeMCU au WiFi, puis se connecte à l'API, récupère les données et les imprime par série.
boucle vide() {
if (WiFi.status() == WL_CONNECTED) // Vérifier l'état du WiFi {HTTPClient http; //Objet de la classe HTTPClient http.begin("https://api.open-notify.org/iss-now.json"); int httpCode = http. GET(); //Vérifiez le code renvoyé if (httpCode >0) { // Analyse const size_t bufferSize = JSON_OBJECT_SIZE(2) + JSON_OBJECT_SIZE(3) + 100; DynamicJsonBuffer jsonBuffer(bufferSize); JsonObject& root = jsonBuffer.parseObject(http.getString()); // Paramètres const char* message = root["message"]; const char* lon = root["iss_position"]["longitude"]; const char* lat = racine["iss_position"]["latitude"]; // Sortie sur le moniteur série Serial.print("Message:"); Serial.println(message); Serial.print("Longitude: "); Serial.println(lon); Serial.print("Latitude: "); Serial.println(lat); } http.end(); //Fermer la connexion } delay(50000); }
Étape 4: Code Arduino final
Le code Arduino suivant obtient l'emplacement de l'ISS pour déplacer le laser au bon endroit sur la surface de la Terre, et l'obtention de la position du soleil pour éclairer les néopixels concernés pour éclairer la surface de la Terre touchée par le soleil.
Bonus 1: Lorsque la lampe est allumée, pendant la phase d'initialisation, le laser pointera la position de la lampe (id: la position où se trouve le routeur)
Bonus 2: Lorsque l'ISS est à côté de l'emplacement de la lampe (+/- 2° long. et +/-2° lat.), tous les Neopixels clignoteront doucement
Étape 5: Profitez de votre traqueur ISS
Vous avez fabriqué une lampe de suivi ISS, profitez-en!
Premier prix du concours d'auteur pour la première fois
Conseillé:
Fauteuil roulant contrôlé par joystick avec suivi d'obstacles : 3 étapes (avec photos)
Fauteuil roulant contrôlé par joystick assisté par un traqueur d'obstacles : afin de permettre aux personnes handicapées de conduire en toute sécurité, un capteur à ultrasons est utilisé pour suivre les obstacles présents sur le chemin. Sur la base du mouvement du joystick, les moteurs entraîneront le fauteuil roulant dans quatre directions et vitesses sur chaque di
ATtiny85 Montre et programmation de suivi d'activité vibrant portable ATtiny85 avec Arduino Uno: 4 étapes (avec photos)
ATtiny85 Montre de suivi d'activité vibrante portable et programmation ATtiny85 avec Arduino Uno: Comment fabriquer la montre de suivi d'activité portable? Il s'agit d'un gadget portable conçu pour vibrer lorsqu'il détecte une stagnation. Vous passez la plupart de votre temps sur l'ordinateur comme moi ? Vous êtes assis pendant des heures sans vous en rendre compte ? Alors cet appareil est f
Kits de voiture de suivi de robot intelligent bricolage Suivi de voiture photosensible: 7 étapes
DIY Smart Robot Tracking Car Kits Tracking Car Photosensible: Design by SINONING ROBOTVous pouvez acheter à partir de la puce de suivi du robot carTheoryLM393 comparer les deux photorésistances, lorsqu'il y a une LED de photorésistance latérale sur BLANC le côté du moteur s'arrêtera immédiatement, l'autre côté du moteur tourner, de sorte que
Globe de suivi ISS : 6 étapes (avec photos)
Globe de suivi de l'ISS : La Station spatiale internationale est l'un des sommets de la technologie humaine et qui n'aimerait pas connaître sa position à chaque minute ? Bien sûr, personne. Donc, dans ce Instructables, nous allons vous montrer comment construire un tracker de localisation à l'aide de leds, un
Système de suivi de vélo avec alerte d'homme mort avec Sigfox : 7 étapes (avec photos)
Système de suivi de vélo avec alerte d'homme mort avec Sigfox : système de sécurité pour les cyclistes avec fonctions de suivi et d'envoi d'alerte. En cas d'accident, une alarme est envoyée avec la position GPS. La sécurité pour les cyclistes est un must, avec des accidents de vélo de route ou de VTT qui se produisent et dès que possible une urgence par