جدول المحتويات:
- الخطوة 1: التسجيل للحصول على معلومات علم الفلك
- الخطوة 2: المكونات
- الخطوة الثالثة: برامج الحاسوب
- الخطوة 4: الدائرة
- الخطوة 5: الكود
- الخطوة 6: التجميع النهائي
فيديو: متتبع المرحلة القمرية اللاسلكي: 6 خطوات (بالصور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:40
جهاز تعقب المرحلة القمرية هو جهاز صغير وشبه محمول يسمح لك بجمع معلومات مهمة عن القمر. يقوم الجهاز بالإبلاغ عن المعلمات الخلفية مثل الإضاءة المرئية والمرحلة وظهور القمر والأوقات المحددة والمزيد.
يعد هذا الجهاز ضروريًا لأي شخص مهتم بالعلوم أو علم الفلك ويوفر ديكورًا مكتبيًا رائعًا لسطح المكتب وهو بالتأكيد بداية محادثة.
المشروع بسيط إلى حد ما ويتطلب جهازًا متصلًا بالإنترنت مثل ESP32 ، ولكن يمكنك دائمًا تكييف الكود للعمل مع درع WiFi أو درع Ethernet أو أي جهاز آخر متصل بالإنترنت قد يكون لديك. تم تصميم Lunar Phase Tracker للعمل من بطاريات ليثيوم بوليمر وشاشة E-ink فعالة للغاية لا توفر فقط شاشة رائعة للنظر إليها ولكنها تحمل أيضًا الصورة الأخيرة حتى في حالة انقطاع التيار!
الخطوة 1: التسجيل للحصول على معلومات علم الفلك
هذه الخطوة ضرورية للغاية (رغم أنها مملة) لأننا نستخدم واجهة برمجة تطبيقات عبر الإنترنت لجمع معلوماتنا. في حين أنه من الممكن حساب مراحل القمر والإضاءة وما إلى ذلك ، إلا أنها مهمة شاقة للقيام بذلك. توفر واجهة برمجة التطبيقات التي نستخدمها معلومات محدثة من محطة الطقس الحية وأنظمة المراقبة ، وبالتالي فإن البيانات التي نتلقاها هي نتائج حقيقية وليست من القيم المحسوبة.
توجه إلى Weather Underground ، وانقر على "تسجيل" واملأ جميع معلوماتك. الحساب مجاني تمامًا وكذلك مكالمات واجهة برمجة التطبيقات الخاصة بك طالما أنك لا تطلب الكثير من النتائج في الدقيقة أو تتجاوز 500 طلب في اليوم. تأكد من وضع إشارة مرجعية على هذه الصفحة ، يمكنك دائمًا العودة لاحقًا واستخدام واجهة برمجة التطبيقات لإحصاءات الطقس وغيرها من المعلومات الرائعة. بمجرد إنشاء حسابك ، انتقل إلى موقع واجهة برمجة التطبيقات ، وانقر فوق "مفتاح الشراء" وحدد الخطة المجانية ، ما عليك سوى إدخال بعض التفاصيل وستواجه مشكلات مع معرف مفتاح devoloper. هذا المعرّف فريد بالنسبة إليك ويجب أن يظل خاصًا. لقد قدمت مفتاحي في مثال كود Arduino الذي سننظر إليه لاحقًا. أنت مرحب بك لاستخدام معرّف المفتاح الخاص بي لأغراض الاختبار ، لكنني أوصي بشدة بالتسجيل بنفسك.
بمجرد حصولك على معرّفك الفريد ، يمكنك التوجه إلى معلومات Astronomy API ، والتي هي بصراحة عارية للغاية. ستجد مثالًا بسيطًا يشبه هذا:
api.wunderground.com/api/8c6dc2e5c6f36de9/a…
يعد عنوان URL هذا مهمًا للغاية لأن هذا هو ما يعطينا جميع المعلومات التي نحتاجها لإنشاء مشروعنا. تفضل ، انقر فوق الرابط ، وسترى النتائج الخاصة بسيدني مثل مرحلة القمر والإضاءة وغيرها من المعلومات الجيدة. ألق نظرة على عنوان URL ، سنرى سيدني ، أستراليا ورمز طويل يبدأ بـ "8c6dcwe…". هذا الرمز هو معرف المفتاح الخاص بك الذي التقطناه سابقًا. قم بتغيير هذا الرمز باستخدام المعرف الفريد الخاص بك وشاهد كيف يعمل ذلك ، يجب أن تحصل على نفس النتيجة بالضبط. حاول اللعب مع المواقع. بالنسبة لي في جنوب إفريقيا ، أستخدم جوهانسبرغ و ZA.
الخطوة 2: المكونات
حتى الآن للأشياء الشيقة. سنحتاج إلى بعض المكونات ، ليس الكثير منها وليس أي منها باهظ الثمن وقد قدمت روابط أمازون للمكونات التي استخدمتها. ضع في اعتبارك ، إذا كنت جيدًا في البرمجة ، فلا تتردد في استخدام أي شاشة عرض أو جهاز إنترنت متاح لديك. بالنسبة للبناء الخاص بي ، استخدمت ما يلي:
شاشة Waveshare E-Ink SPI 4.2 بوصة
- لوحة تطوير ESP32 (عامة)
- تعزيز قوة Adafruit 500
- حزمة بطارية ليبو 5000 مللي أمبير في الساعة
- لوحة شريطية (بروتوبورد)
ستحتاج أيضًا إلى الأدوات الأساسية مثل:
- لحام حديد
- جندى
- المقياس المتعدد
- الفرجار
- مثقاب لفصل المسارات على لوح الحماية
- الأسلاك
- قصاصات الأسلاك
- الغراء (سوف يعمل الغراء الساخن)
- كمبيوتر محمول مثبت عليه Arduino IDE
الأداة المتقدمة الوحيدة التي قد تحتاجها هي طابعة ثلاثية الأبعاد لإنشاء العلبة. إذا لم يكن لديك واحدة ، فهذا جيد ، اجعل العلبة من الخشب والمناشير اليدوية أو أي شيء متاح لديك. ونعم ، الطابعة ثلاثية الأبعاد الخاصة بي قديمة ومغبرة لول.
الخطوة الثالثة: برامج الحاسوب
قبل أن نبدأ العمل على الدائرة والبرمجة ، سنحتاج أولاً إلى أحدث إصدار من Arduino IDE والذي يمكن العثور عليه هنا.
نظرًا لأننا نستخدم ESP32 مع نواة Arduino ، فسنحتاج إلى تثبيت هذا النواة على Arduino IDE. اتبع هذا الدليل البسيط من Github والذي يوضح لك البرنامج والتكوين الذي ستحتاج إلى القيام به حتى تتمكن من استخدام لوحة تطوير ESP32 داخل Arduino IDE.
سنحتاج أيضًا إلى مكتبتين إضافيتين لتشغيل نظامنا. الأول هو مكتبة Arduino JSON التي تسمح لنا بقراءة وتحليل طلبات JSON وهو بالضبط ما نحصل عليه من Weather Underground. يمكنك تنزيل هاتين المكتبتين من Dropbox الشخصي الخاص بي أو من الأسفل. بمجرد حصولك على الملفات ، قم باستخراجها ووضعها في مجلد مكتبة Arduino. يقع بشكل عام في C: / Users / YOUR_NAME / Documents / Arduino / libraries. تأكد من إعادة تشغيل IDE الخاص بك وإلا فلن يلتقط Arduino الإضافات الجديدة. رمز Arduino SRC الرئيسي موجود أيضًا في هذا المجلد. تحتوي المكتبة أيضًا على نسخة معدلة من العينة المقدمة من شاشات Waveshare. تم تعديل الملفات لتعمل على وحدة ESP32 مع GPIOs الخاصة بهم وقمت بتطبيق "خط" جديد يحتوي على جميع الصور لمراحل القمر المختلفة.
الخطوة 4: الدائرة
حسنًا ، الدائرة الخاصة بذلك بسيطة للغاية ولا تتطلب سوى عدد قليل من المكونات والأسلاك.
الفكرة العامة هي أن لدينا دائرة شاحن ليبو ، ومحول دفع يمنحنا 5 فولت ثم مجموعة ESP32 Dev التي تخفض الجهد إلى 3.3 فولت. هذا 3.3 فولت يستخدم أيضًا لشاشة Waveshare E-Ink. نعم ، هذا غير فعال إلى حد ما بسبب التعزيز ثم التنحي باستخدام منظم خطي لكن ESP32 يعمل على نطاق جهد فظيع للغاية. في مكان ما حوالي 2.5 - 3.6 فولت. هذا غير مناسب لمشاريع البطاريات خاصة تلك التي تستخدم خلايا ليثيوم بوليمر.
الأسلاك الأساسية هي كما يلي:
- دفعة محول 5V الناتج Vin & GND على ESP32 Dev Kit
- ESP32 3.3V 3.3V & GND E-Ink Display
- شاشة ESP32 PIN 18 CLK E-Ink
- شاشة ESP32 PIN 23 DIN / MOSI E-Ink
- شاشة ESP32 PIN 5 CS / SS بالحبر الإلكتروني
- شاشة ESP32 PIN 32 DC E-Ink
- شاشة ESP32 PIN 33 RST E-Ink
- شاشة ESP32 PIN34 BUSY للحبر الإلكتروني
يمكنك أن ترى أن الأسلاك بسيطة للغاية وأن لوحات DIY الخاصة بي استغرقت حوالي 15 دقيقة فقط لتكوينها. تأكد من التحقق من الدوائر القصيرة بمقياس متعدد قبل توفير الطاقة.
لقد قمت أيضًا بإزالة مصابيح LED من لوحة تعزيز ESP32 و Lipo لتوفير حوالي 40 مللي أمبير من الطاقة أثناء وضع السكون. هذا سيساعد البطاريات على الاستمرار لفترة أطول قليلاً. يمكنك تنفيذ مفتاح الطاقة ودائرة توفير الطاقة والفصل التلقائي وما إلى ذلك إذا كنت ترغب في ذلك. يمكنك توسيع هذا المشروع وجعله معقدًا كما تريد.
الخطوة 5: الكود
يمكن العثور على الكود في المجلد المرفق أثناء الخطوة 3 أو يمكنك تنزيل ملف.ino من الأسفل. ستحتاج إلى تثبيت المكتبات المرتبطة كما هو مذكور في الخطوة 3 لجعل كل شيء يعمل معًا. لا يوجد الكثير ليقال في هذه الخطوة حيث يتم توفير الكود في حالة صالحة للعمل. تأكد من وضع SSID وكلمة مرور الشبكة قبل اختبار البرنامج ، يمكنك دائمًا تشغيل ESP32 WiFi Scan لاكتشاف أي شبكات لاسلكية قريبة ولكن في البرنامج الخاص بي ، يتم تعيين معلومات الشبكة في الكود والرمز فقط. ربما يمكنك تعديله لتسأل عن الشبكة التي تريد الاتصال بها:)
الكود بسيط إلى حد ما وسأقضي بعض الوقت في التعليق عليه وتحسينه في الأسابيع القليلة القادمة. نحن نتصل بشكل أساسي بشبكة ، في حالتي ، شبكتي المنزلية. نحاول بعد ذلك الاتصال بـ Weather Underground واستلام نص JSON من صفحة الويب. ثم يتم استخدام مكتبة ArduinoJSON لاستخراج ملفات. أو تحليل رمز JSON إلى مصفوفات أو سلاسل أحرف تسمح لنا بمعالجة القيم قبل عرضها للمستخدم. الجزء الأخير من الكود مخصص تمامًا لبرمجة واجهة المستخدم الرسومية وتم إجراؤه عن طريق التجربة والخطأ. نظرت إلى الشاشة ، وقمت بزيادة أو إنقاص موضع الأصول وتشغيل الكود مرة أخرى حتى كنت سعيدًا بمظهر حجم الخط والتخطيط والصور.
لقد قمت بتطبيق روتين نوم عميق لـ ESP32 لتوفير الطاقة. الافتراضي هو 60 ثانية ومع ذلك أقترح عليك تغيير القيمة إلى شيء مثل ساعة أو ساعتين لأن التحديثات لا تحدث لبضع ساعات على الأقل. يقبل المثال الثواني ، لذا تأكد من قيامك بالتحويلات بشكل صحيح.
لقد استخدمت أيضًا برنامج Dot Factory لإنشاء مصفوفات سداسية عشرية لخط جديد. يستخدم هذا الخط لتوليد "الصور" لمراحل القمر. إذا كنت ترغب في تحرير ملف الخطوط ، فتأكد من استخدام البرنامج المذكور أعلاه للتوليد. إنه أمر محير بعض الشيء لأن مكتبة الحبر الإلكتروني لم يتم توثيقها جيدًا وكان معظم نجاحي بفضل التجربة والخطأ. عندما أقضي المزيد من الوقت مع هذا الرمز ، سأقوم بتحديث Instructable لتقديم مزيد من المعلومات حول النتائج التي توصلت إليها.
يجب أن يتم الخط المستخدم لمراحل القمر وفقًا لتخطيط ASCII القياسي. إذا قمت بفتح font24 في مجلد EPD-master ، يمكنك مشاهدة التخطيط حيث يتم تحديد الرسم الأول بمسافة بيضاء ، والثاني هو "!" (علامة التعجب) وهلم جرا. سترى أنني أسحب الخط المرتبط باستخدام الرقم 3 أو رمز الهاشتاج في الجزء الأخير من الكود (الوظيفة getLunarChar). هذا لأن Arduino يتوقع معيار ASCII من 32 إلى 127. نظرًا لأننا نستخدم خطوطًا لا علاقة لها بالخطوط الفعلية بل مصفوفة رسومات مراحل القمر ، فنحن بحاجة إلى التأكد من أن حرف ASCII يشير إلى صورة مرحلة القمر التي اخترناها. هذا يعني أن استخدام! علامة ، يظهر لنا خط المرحلة القمرية رسم المرحلة الثانية للقمر في تلك القائمة. إذا نظرت إلى خط المرحلة القمرية ، فسترى مجموعة كاملة من مراحل القمر ، وكلها بمستويات إضاءة مختلفة. في المستقبل سأضيف المزيد من التعليمات البرمجية للاستفادة من جميع الرسومات التي قمنا بتنفيذها. في الوقت الحالي ، لا نستخدم سوى عدد قليل ، ولكن تم تنفيذ الرسومات بالفعل في خط المرحلة القمرية وتحتاج فقط إلى تنفيذها في الكود للاستفادة منه.
الخطوة 6: التجميع النهائي
الجزء الأخير من البناء والأكثر إرضاءً هو عملية التجميع. لقد صممت وأطبع غلافًا ثلاثي الأبعاد يناسب اللوح الخاص بي. المشروع مصنوع يدويًا جدًا ، ولا توجد لوحات PCB احترافية أو تخطيط قياسي واحد. بالنسبة للجزء الأكبر ، الصندوق الذي استخدمته كبير بما يكفي لاستيعاب أي شاحن ليبو أو محول تعزيز تختار استخدامه. طالما أنها توفر نفس الوظيفة الأساسية المذكورة في هذا Instructable ، فيجب أن تكون على ما يرام.
لقد استخدمت 4 مسامير لتثبيت النصف العلوي والسفلي من العلبة معًا والغراء الساخن لتركيب دوائر DIY الخاصة بي. لقد استخدمت بعض القطرات الصغيرة جدًا من الغراء للاحتفاظ بالبطارية ، ولكن إذا كان لدي المزيد من الوقت ، فقد صنعت قوسًا مخصصًا لجميع الإلكترونيات.
لقد قررت أيضًا عمل ثقب لزر ضغط الإغلاق في الخلف. يؤدي هذا إلى فصل البطارية عن محول التعزيز وهو أمر مفيد إذا كنت لا تخطط لتشغيل الجهاز على مدار الساعة طوال أيام الأسبوع. لسوء الحظ ، لا يزال محول التعزيز يستخدم الطاقة حتى إذا كان ESP32 في وضع السكون العميق.
بشكل عام ، أنا سعيد جدًا بالنتيجة. لقد تعلمت الكثير أثناء استخدام ESP32 ويمكنني أن أرى نفسي أستخدمه في مجموعة متنوعة من المشاريع في المستقبل.
إذا كانت لديك أي أسئلة ، فلا تتردد في طرحها ، وسأكون أكثر من راغب في المساعدة وإذا وجدت أي أخطاء في هذا Instructable ، فيرجى إبلاغي بذلك.
التحرير: لقد قمت بالفعل بعمل آلة CNC في حالة صغيرة بدلاً من النسخة المطبوعة ثلاثية الأبعاد وهو ما تراه في الصور المميزة.
تحرير: في الصور المميزة نرى قمرًا كاملاً مع إضاءة بنسبة 99٪. ومن هنا تأتي الدائرة البيضاء ، بينما يمر القمر بمراحلها النموذجية ، ستتغير صورة القمر وفقًا لذلك. سيتم تحميل المزيد من الصور مع تقدم القمر خلال مراحله حتى تتمكن من الحصول على تمثيل للرسومات.
الوصيف في تحدي الفضاء
موصى به:
EEG AD8232 المرحلة 2: 5 خطوات (بالصور)
EEG AD8232 المرحلة 2: لذا قام هذا المهوس القديم الكسول (LOG) ببناء مخطط كهربية الدماغ: لا يعجبني أن يتم ربطه بجهاز كمبيوتر. أستخدم ذلك كعذر لعدم إجراء أي اختبار. Anothe
كرسي متحرك يتم التحكم فيه بواسطة عصا التحكم بمساعدة متتبع العوائق: 3 خطوات (بالصور)
كرسي متحرك يتم التحكم فيه بواسطة عصا التحكم بمساعدة متتبع العوائق: من أجل تسهيل ركوب الأشخاص المعاقين جسديًا بأمان ، يتم استخدام جهاز استشعار بالموجات فوق الصوتية لتتبع العقبات الموجودة في الطريق. بناءً على حركة عصا التحكم ، ستقود المحركات الكرسي المتحرك في أي أربعة اتجاهات وسرعة في كل
مصباح المرحلة القمرية المعاد تدويره: 15 خطوة
مصباح المرحلة القمرية المعاد تدويره: هذا المصباح مصنوع من جرة بلاستيكية ، ويتم تشغيله عند إحكام الغطاء. يمكنك تغيير الصورة الظلية لإظهار مراحل مختلفة من القمر
متتبع السباحة: 6 خطوات (بالصور)
متعقب السباحة: شاهد الكابتن كوك في تاهيتي ، المعروف أيضًا باسم الزقزاق الذهبي المحيط الهادئ ، ثم بعد ذلك بخمس سنوات في أرض تكاثرها في القطب الشمالي. لم يكن تتبع هذه الرحلة عن طريق تتبع نظام تحديد المواقع العالمي (GPS) ممكنًا إلا مؤخرًا عندما كان هناك 4.0 جرامًا فرعيًا
تثبيت لوحة مفاتيح USB في كمبيوتر محمول OLPC XO ، المرحلة الأولى: 8 خطوات (بالصور)
تثبيت لوحة مفاتيح USB في كمبيوتر محمول OLPC XO ، المرحلة الأولى: لا أعرف شيئًا عنك ، لكن يمكنني بالتأكيد إخبار السيليكون بالشيء الحقيقي. إليك كيفية التخلص من الهلام والضغط على لوحة مفاتيح USB عادية من نوع keycaps-and-springs في كمبيوتر محمول OLPC XO. هذه & quot؛ المرحلة الأولى & quot؛ - إدخال لوحة المفاتيح في l