جدول المحتويات:

مصباح تتبع ISS: 5 خطوات (بالصور)
مصباح تتبع ISS: 5 خطوات (بالصور)

فيديو: مصباح تتبع ISS: 5 خطوات (بالصور)

فيديو: مصباح تتبع ISS: 5 خطوات (بالصور)
فيديو: تجربة كاميرا متحركة على شكل مصباح WiFi PTZ lamp Camera 2024, يوليو
Anonim
مصباح التتبع ISS
مصباح التتبع ISS
مصباح التتبع ISS
مصباح التتبع ISS

في معظم الأوقات ، أتساءل أين تبحث محطة الفضاء الدولية عن السماء. للإجابة على هذا السؤال ، لقد صنعت شيئًا ماديًا لمعرفة مكان محطة الفضاء الدولية بالضبط في الوقت الفعلي.

مصباح تتبع ISS هو مصباح متصل بالإنترنت يتتبع باستمرار محطة الفضاء الدولية ويعرض موقعها على سطح الأرض (مطبوع بتقنية ثلاثية الأبعاد).

المكافأة: يعرض المصباح أيضًا الجانب المشمس من الأرض باستخدام Neopixels! ؟؟

لذلك ، في هذه التعليمات ، سنرى الخطوات المختلفة لبناء هذا المصباح بناءً على WEMOS D1 Mini والمحرك السائر والمحرك المؤازر والليزر والأجزاء ثلاثية الأبعاد.

أقوم ببناء كل شيء بنفسي ، باستثناء الأرض المطبوعة ثلاثية الأبعاد ، والتي تم شراؤها من Aliexpress.

برمجة:

  • كود اردوينو
  • موقع API ISS: Open Notify - الموقع الحالي لمحطة الفضاء الدولية (بواسطة Nathan Bergey)
  • تحليل البيانات: مكتبة ArduinoJson (بواسطة Benoit Blanchon)

CAD وقطع الغيار:

  • أرض مطبوعة ثلاثية الأبعاد بقطر 18 سم (تم شراؤها من Aliexpress: هنا)
  • يدعم محرك الطباعة ثلاثية الأبعاد - مصمم مع Fusion 360 وطبع باستخدام Prusa i3 MK2S
  • أنبوب نحاسي
  • قاعدة خرسانية مصنوعة من الفايكنج الفرنسيين

المعدات:

  • متحكم دقيق: Wemos D1 Mini (هوائي wifi مدمج)
  • أجهزة EMAX ES3352 MG
  • محرك متدرج 28byj-48 (مع لوحة القيادة ULN2003)
  • 10 نيوبكسلز ليد
  • ليزر بطول موجي 405 نانومتر
  • جهاز محدد
  • 5V 3A امدادات الطاقة

الخطوة 1: نمذجة الأجزاء في Fusion 360 والطباعة

نمذجة الأجزاء في Fusion 360 والطباعة
نمذجة الأجزاء في Fusion 360 والطباعة
نمذجة الأجزاء في Fusion 360 والطباعة
نمذجة الأجزاء في Fusion 360 والطباعة
نمذجة الأجزاء في Fusion 360 والطباعة
نمذجة الأجزاء في Fusion 360 والطباعة

لتركيب جميع الأجهزة ، سنقوم بإنشاء قاعدة التجميع الأساسية على أجزاء ثلاثية الأبعاد. الأجزاء متوفرة على Thingiverse هنا.

هناك 3 أجزاء:

1) خط طول خط الدعم

تم تصنيع هذا الجزء لتركيب محرك السائر ، و WEMOS ، وشريط Neopixels ، والأنبوب النحاسي

2) مفتاح الدعم

هذا الجزء مصنوع لتركيب مفتاح الحد (يستخدم للإشارة إلى السائر بخط العرض -0 درجة / -180 درجة). إنه مشدود على الجزء العلوي من السائر

3) دعم أجهزة العرض Latitude

هذا الجزء مصنوع لتركيب محرك سيرفو. يتم تثبيت Support Servo على محرك السائر

تمت طباعة جميع الأجزاء على Prusa I3 MK2S ، مع فتيل PETG أسود

الخطوة 2: الأسلاك والتجميع

الأسلاك والتجميع
الأسلاك والتجميع
الأسلاك والتجميع
الأسلاك والتجميع

ستحتوي هذه الدائرة على مدخلات طاقة 5V 3A (من أجل استخدام نفس الإمداد لمحرك السائر والليزر و Neopixels و WEMOS)

من خلال الرسم التخطيطي التالي ، نحتاج إلى لحام مصدر الطاقة مباشرة بالعناصر أعلاه بالتوازي:

  • سائق السائر
  • الليزر
  • شريط Neopixels (ملاحظة: يوجد 10 Neopixels في الواقع ، وليس 8 كما يظهر في الرسم التخطيطي)
  • يموس

بعد ذلك ، نحتاج إلى ربط العناصر المختلفة بـ WEMOS:

1) سائق السائر الذي يتبع هذه القائمة:

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

2) محرك سيرفو التالي:

دبوس سيرفو البيانات -> D1

3) شريط Neopixels التالي:

دبوس نيوبكسل البيانات -> D2

4) مفتاح الحد التالي:

دبابيس التبديل إلى GND و D3

قم بتوصيل مفتاح الحد بطريقة تفتح / تنكسر الدائرة عندما نضغط على المفتاح (بحيث يتم إغلاق الدائرة عندما لا يضغط عليها شيء). هذا لتجنب أي محاضرة خاطئة بسبب ذروة الجهد.

الخطوة 3: كود اردوينو - الحصول على موضع محطة الفضاء الدولية في الوقت الحقيقي

لدفع المحركين للوصول إلى موقع محطة الفضاء الدولية ، نحتاج إلى الحصول على موضع محطة الفضاء الدولية في الوقت الفعلي:

  • لذلك سنستخدم واجهة برمجة التطبيقات من Open Notify Here
  • بعد ذلك ، نحتاج إلى تحليل البيانات للحصول على قيمة بسيطة لموقع محطة الفضاء الدولية بمساعدة بيانات التحليل: مكتبة ArduinoJson (بواسطة Benoit Blanchon)

#include <ESP8266WiFi.h #include <ESP8266HTTPClient.h #include <ArduinoJson.h // WiFi Parameters const char * ssid = "XXXXX"؛ const char * password = "XXXXX" ؛ إعداد باطل () {Serial.begin (115200) ؛ WiFi.begin (SSID ، كلمة المرور) ؛ while (WiFi.status ()! = WL_CONNECTED) {delay (1000) ؛ Serial.println ("توصيل …") ؛ }}

يربط هذا البرنامج NodeMCU بشبكة WiFi ، ثم يتصل بواجهة برمجة التطبيقات ، ويحصل على البيانات ويطبعها بالتسلسل.

حلقة فارغة() {

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 (حجم المخزن المؤقت) ؛ JsonObject & root = jsonBuffer.parseObject (http.getString ()) ؛ // المعلمات const char * message = root ["message"] ؛ const char * lon = root ["iss_position"] ["خط الطول"] ؛ const char * lat = root ["iss_position"] ["خط العرض"] ؛ // الإخراج إلى الشاشة التسلسلية Serial.print ("الرسالة:") ؛ Serial.println (رسالة) ؛ Serial.print ("خط الطول:") ؛ Serial.println (لون) ؛ Serial.print ("Latitude:") ؛ Serial.println (لات) ؛ } http.end () ؛ تأخير // اتصال وثيق} (50000) ؛ }

الخطوة 4: كود اردوينو النهائي

يحصل كود Arduino التالي على موقع ISS لتحريك الليزر إلى المكان الصحيح على سطح الأرض ، والحصول على موضع الشمس لإضاءة Neopixels المعنية لإضاءة سطح الأرض التي تلمسها الشمس.

المكافأة 1: عند تشغيل المصباح ، أثناء مرحلة التهيئة ، سيوجه الليزر موضع المصباح (المعرف: الموضع الذي يوجد فيه جهاز التوجيه)

المكافأة 2: عندما تكون محطة الفضاء الدولية بجوار موقع المصباح (+/- 2 درجة طويلة و +/- 2 درجة عرض) ، ستغمز جميع Neopixels بلطف

الخطوة 5: استمتع بمتتبع ISS الخاص بك

لقد صنعت مصباح تتبع ISS ، استمتع!

مسابقة المؤلف لأول مرة
مسابقة المؤلف لأول مرة
مسابقة المؤلف لأول مرة
مسابقة المؤلف لأول مرة

الجائزة الأولى في مسابقة المؤلف لأول مرة

موصى به: