جدول المحتويات:
- اللوازم
- الخطوة 1: تحديث البرنامج (SO)
- الخطوة 2: البرامج المطلوبة
- الخطوة 3: قم بتنزيل My Code
- الخطوة 4: قم بإجراء الاختبار
- الخطوة 5: عرض معلومات القمر / الفضاء / محطة الفضاء الدولية…
- الخطوة 6: قم بتنفيذه كخدمة
فيديو: الحبر الإلكتروني: القمر / محطة الفضاء الدولية / الناس في الفضاء : 6 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:36
من قبل emihermes
كان لدي قبعة Raspberry و e-Paper HAT وأردت استخدامها لإظهار معلومات مثل مكان محطة الفضاء الدولية أو عدد الأشخاص الموجودين الآن في الفضاء …
صرحت للبحث عما إذا كانت هناك واجهات برمجة تطبيقات على الإنترنت للحصول على هذه البيانات ، ووجدتها. حسنًا ، مسكتك !!!!
انتظر ، يحتوي HAT هذا على 4 أزرار ، وبعد ذلك ، أحتاج إلى إظهار 4 بيانات …
- أين هي الآن محطة الفضاء الدولية؟ - كم عدد الأشخاص الموجودين الآن في الفضاء؟ - في أي مرحلة يكون القمر؟ - هل ستمطر؟ هل الجو دافئ جدا؟ …
في الوقت الحالي ، أعرض هذه المعلومات ، لكن يمكنني تحديث "Instructable" بمجرد أن تكون لدي فكرة جيدة ، أو إذا كنت تعرف فكرة جيدة ، فيمكنك اقتراحها علي !!!
حسنًا ، لقد قمت بذلك في إحدى الأمسيات وتم إنهاء "FrontEnd" بعد أيام قليلة. لا تشكو من كيفية عرض المعلومات ، لا أحب أن أجعل هذا الجزء:)
اللوازم
- Raspberry PI (صفر كافي). - ورق إلكتروني بحجم 2.7 بوصة. (اشتريت خاصتي هنا) - بطاقة SD (4 جيجابايت كافية).
تحتاج أيضًا إلى رمز من OpenWeather لاستخدام واجهات برمجة التطبيقات (من هنا)
الخطوة 1: تحديث البرنامج (SO)
الخطوة الأولى ، كما هو الحال دائمًا ، هي تجهيز Raspberry PI بأحدث نظام تشغيل. - قم بتنزيل أحدث نظام تشغيل (مع سطح المكتب) من هنا. - اكتب الصورة على بطاقة SD فارغة. - أنشئ ملفًا فارغًا "ssh" للتمكين اتصال SSH. - احفظ ملف "wpa_supplicant.conf" على بطاقة SD لتهيئة Wifi الخاص بك للاتصال بـ Raspberry PI عبر SSH (لقد قمت بإعداده على جهاز الكمبيوتر الخاص بك ، وأنا أعلم ذلك).
ابدأ Raspberry Pi الخاص بك.
اتصل به عبر SSH (يمكنك أيضًا القيام بذلك إذا كان لديك شاشة ولوحة مفاتيح وماوس ، لكن ليس لديّ وأفضل الاتصال عبر SSH) وتحديثه….
sudo apt-get update -y
sudo apt-get الترقية -y
الآن ، يجب عليك تمكين VNC لتتمكن من الاتصال عن بعد و SPI لـ e-Paper HAT:
sudo raspi-config
خيارات التفاعل> VNC> نعم خيارات الواجهة> SPI> نعم
وأعد تشغيله.
الخطوة 2: البرامج المطلوبة
حسنًا ، لدينا الآن Raspberry PI قيد التشغيل مع أحدث البرامج وجميع الأساسيات للاتصال به.
حان الوقت لبدء تثبيت البرنامج المطلوب للتحكم في قبعة الورق الإلكترونية.
إذا لم تقم بتوصيل HAT على Raspberry PI الخاص بك ، فهذه هي آخر لحظة لتوصيلها. أغلق Raspberry PI الخاص بك وقم بوضع HAT عليه.
للخطوات التالية يمكنك اتباع التعليمات من Waveshare أو اتباعها بالخطوات التالية….
قم بتثبيت مكتبات BCM2835:
wget
tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60 / sudo./configure sudo اجعل sudo تحقق من sudo قم بتثبيت # لمزيد من التفاصيل ، يرجى الرجوع إلى
تثبيت مكتبات wiringPi:
sudo apt-get install wiringpi
# بالنسبة لـ Pi 4 ، تحتاج إلى تحديثه : cd / tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # ستحصل على معلومات 2.52 إذا قمت بتثبيته بشكل صحيح
تثبيت مكتبات Python: (إذا قمت بتحديث SO بأحدث إصدار ، فستكون كل هذه الخطوات مثل "المتطلبات مستوفاة بالفعل").
sudo apt-get update
sudo apt-get install python3-pip sudo apt-get install python3-pil sudo apt-get install python3-numpy sudo pip3 install RPi. GPIO sudo pip3 install spidev
يمكنك الآن تنزيل الأمثلة من Waveshare: (هذا الجزء غير مطلوب ، ولكن يمكنك تنزيلها لمعرفة كيفية عملها).
sudo git clone
الورق الإلكتروني cd / RaspberryPi / & JetsonNano /
أوصيك بإزالة بعض المجلدات: - الورق الإلكتروني / Arduino (إنه Raspberry PI). - الورق الإلكتروني / STM32 (إنه Raspberry PI). - الورق الإلكتروني / Raspberry & JetsonNano / c (سنستخدم python في هذا المشروع).
لن تستخدمها ، ولست بحاجة إليها في Raspberry PI.
وإذا كنت ترغب في ذلك ، يمكنك إزالة جميع الملفات التي لا تحتاجها من مجلد "lib" ، مثل: - epd1in02.py - epd1in54.py - epd2in9.py - …
إذا كنا سنستخدم 2.7 بوصة ، فلن تكون هناك حاجة لبقية الملفات.
أوصيك بنقل المجلد "lib" قليلاً إلى الخلف لاستخدامه بسهولة:
sudo mv lib / الصفحة الرئيسية / pi / الورق الإلكتروني /
ومع ذلك ، يتم تضمين المكتبات في الكود الخاص بي (من GitHub).
تم تثبيت جميع البرامج المطلوبة.
الخطوة التالية هي رمزنا!
الخطوة 3: قم بتنزيل My Code
نحتاج الآن إلى تنزيل الكود من GitHub:
sudo git clone
مع هذا سيكون لدينا كل الكود المطلوب ، بما في ذلك المكتبات من Waveshare في المشروع الفعلي.
قم بتحرير الملف "ShowInfo.py" لإدخال رمز API الخاص بك من OpenWeather.com…. … والمدينة (استخدم اسم المدينة أو معرفها):
def WeatherForecast ():
url = "https://api.openweathermap.org/data/2.5/forecast؟" #url = url + "q = {city_name}" #url = url + "q = Düsseldorf" # مشاكل ASCII !!! url = url + "id = 2934246" #url = url + "& appid = {your_API_key}" url = url + "& Units = metric" # In Metric url = url + "& cnt = 6" # 6 نتائج فقط
ومع ذلك ، نحتاج إلى تثبيت ملفات الخطوط التي نستخدمها في المشروع ، حيث تم تنزيل الملفات بكودها الكامل.
الخطوط موجودة في مجلد "الورق الإلكتروني / الخطوط".
لفك السحاب:
sudo بفك ضغط Bangers.zip -d / usr / share / Fonts / truetype / google /
sudo unzip Bungee_Inline.zip -d / usr / share / Fonts / truetype / google / sudo unzip Bungee_Outline.zip -d / usr / share / Fonts / truetype / google / sudo unzip Bungee_Shade.zip -d / usr / share / lines / truetype / google / sudo unzip droid-sans.zip -d / usr / share / Fonts / truetype / google / sudo unzip Indie_Flower.zip -d / usr / share / Fonts / truetype / google / sudo unzip Jacques_Francois_Shadow.zip -d / usr / share / Fonts / truetype / google / sudo unzip Londrina_Outline.zip -d / usr / share / fonts / truetype / google / sudo unzip zip -d / usr / share / Fonts / truetype / google / sudo unzip Oswald.zip -d / usr / share / Fonts / truetype / google / sudo unzip Roboto.zip -d / usr / share / Fonts / truetype / google / sudo بفك ضغط Vast_Shadow.zip -d / usr / share / Fonts / truetype / google /
أوصيك بحذف ملفات zip بعد التثبيت ، لأننا لم نعد بحاجة إلى هذه الملفات:
sudo rm -R الخطوط
الخطوة 4: قم بإجراء الاختبار
انتقل إلى المجلد الصحيح حيث لدينا ملف الاختبار:
cd ~ / eInk_Moon_ISS_PeopleSpace / e-Paper / ShowEInk
نفّذ ملف الاختبار بالإصدار 3 من Python:
python3 Test001.py
سيكون لديك تعليقات متتبعة في غضون ذلك يتم تنفيذ البرنامج.
وفي شاشة e-Paper سترى الرسائل.
لكل زر ، ستعرض الشاشة رسالة مختلفة.
الخطوة 5: عرض معلومات القمر / الفضاء / محطة الفضاء الدولية…
حسنًا ، كلنا نركض ونريد الآن أن نرى أين توجد محطة الفضاء الدولية في جميع أنحاء العالم ، أو مرحلة القمر …
عليك أولاً تنفيذ الملف "ShowInfo.py" (الموجود في "~ / eInk_Moon_ISS_PeopleSpace / e-Paper / ShowEInk").
python3 ~ / eInk_Moon_ISS_PeopleSpace / e-Paper / ShowEInk / ShowInfo.py
والآن ، إذا ضغطت على زر واحد ، فستحصل على المعلومات المبرمجة على هذا الزر:
● الزر 1: توقعات الطقس.
● الزر 2: من هو في الفضاء وأين.
● الزر 3: أين تقع محطة الفضاء الدولية في جميع أنحاء العالم.
● الزر 4: معلومات عن القمر.
الخطوة 6: قم بتنفيذه كخدمة
كبديل ، يمكن بدء نص Python أثناء التمهيد عن طريق إنشاء خدمة - مزيد من المعلومات على https://www.raspberrypi.org/documentation/linux/u …
قم بإنشاء ملف جديد يسمى ShowInfo.service وانسخ المحتويات أدناه إلى الملف الجديد - اضبط مسار دليل العمل وفقًا لذلك:
[وحدة]
الوصف = ShowInfo After = network-online.target Wants = network-online.target [الخدمة] ExecStart = / usr / bin / python3 ShowInfo.py WorkingDirectory = / home / pi / eInk_Moon_ISS_PeopleSpace / e-Paper / ShowEInk / StandardOutput = ورث StandardError = ترث إعادة التشغيل = دائمًا User = pi [تثبيت] WantedBy = multi-user.target
انسخ ملف ShowInfo.service إلى / etc / systemd / system كجذر:
sudo cp ShowInfo.service / etc / systemd / system /
ابدأ الخدمة:
يبدأ sudo systemctl ShowInfo.service
تحقق مما إذا كانت الخدمة قيد التشغيل:
sudo systemctl status ShowInfo.service
يجب أن يكون الإخراج مشابهًا لـ:
● ShowInfo.service - معلومات العرض
تم التحميل: تم تحميله (/etc/systemd/system/ShowInfo.service ؛ معطل ؛ الإعداد المسبق للمورد: ممكّن) نشط: نشط (قيد التشغيل) منذ الجمعة 2020-09-11 15:17:16 CEST ؛ قبل 14 ثانية Main PID: 1453 (python3) CGroup: /system.slice/ShowInfo.service └─1453 / usr / bin / python3 ShowInfo.py سبتمبر 11 15:33:17 eInk systemd [1]: بدأ ShowInfo.
إذا كانت الخدمة تعمل بشكل جيد ، فيمكنك تمكينها وإعادة تشغيل Raspberry Pi لتحميلها تلقائيًا أثناء التمهيد:
يقوم sudo systemctl بتمكين ShowInfo.service
لإيقاف الخدمة:
sudo systemctl توقف ShowInfo.service
و هذا كل شيء !!!!!
شكرا !!!!!
موصى به:
مسحوق الحبر DIY (مساعد الحبر): 6 خطوات
DIY Toner Darkener (Toner Aide): لقد اكتشفت مؤخرًا أنه يمكن استخدام مخففات الطلاء كبديل لمساعد الحبر (مسحوق الحبر الداكن). يكلف هذا الحبر المصنوع يدويًا 10 أضعاف الحلول المتاحة تجاريًا ويمكنه تحسين تباين القوالب المطبوعة بشكل كبير ، من أجل يعالج ال
ساعة كوزمو - يتغير لونها في كل مرة يدخل فيها رائد الفضاء الفضاء: 8 خطوات (بالصور)
ساعة كوزمو - يتغير لونها في كل مرة يدخل فيها رائد الفضاء الفضاء: مرحبًا! هل أنت من عشاق الفضاء؟ إذا كانت الإجابة بنعم ، ثم مرحبا فاي! احب الفضاء وعلم الفلك. من الواضح أنني لست رائد فضاء للذهاب إلى هناك وإلقاء نظرة فاحصة على الكون. لكن في كل مرة أكتشف فيها أن شخصًا من الأرض قد سافر إلى السماء ، أستلهم
Hack the Hollow's Wolverine Grow Cube لمحطة الفضاء الدولية: 5 خطوات
Hack the Hollow's Wolverine Grow Cube لمحطة الفضاء الدولية: نحن مدرسة ويست هولو المتوسطة من لونغ آيلاند ، نيويورك. نحن مهندسون طموحون نجتمع مرة واحدة في الأسبوع في نادٍ يسمى Hack the Hollow حيث نصمم ونرمز ونبني عددًا من مشاريع الصانعين. يمكنك التحقق من جميع المشاريع التي نعمل عليها H
الزنزانات المحصنة والتنانين هيت بوينت المقتفي مع شاشة الحبر الإلكتروني: 3 خطوات
متتبع النقاط المحصنة والتنينات مع شاشة عرض الحبر الإلكتروني: أردت إنشاء أداة تعقب نقاط ضرب تعرض جميع نقاط إصابة اللاعبين بمقياس طبيعي ، حتى تتمكن من معرفة من يحتاج إلى الشفاء بالضبط ومدى ضعف المجموعة بأكملها عمل. يتصل عبر البلوتوث بهاتف Android
كوب عرض الحبر الإلكتروني: 8 خطوات (مع صور)
كوب عرض الحبر الإلكتروني: هذه واحدة من تلك الأفكار المجنونة التي استقرت في ذهني تلقائيًا. فكرت ، ألن يكون رائعًا إذا كان هناك كوب قهوة يمكنك تخصيصه بسرعة؟ واحد يشبه إلى حد كبير فنجان قهوة عادي. لقد أجريت بحثًا و