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

منفذ طاقة متصل بالإنترنت: 13 خطوة
منفذ طاقة متصل بالإنترنت: 13 خطوة

فيديو: منفذ طاقة متصل بالإنترنت: 13 خطوة

فيديو: منفذ طاقة متصل بالإنترنت: 13 خطوة
فيديو: كيفيه تسريع النت بالايفون بسهوله 🔥📲 2024, شهر نوفمبر
Anonim
Image
Image
الإمدادات اللازمة
الإمدادات اللازمة

مشروع PowerHub Webserver وإرشادات إعداد منفذ تمكين الإنترنت

مركز ثبات البيانات المركزي للضوء والمنافذ التي تدعم الإنترنت في منزلك!

الخطوة 1: إرشادات إعداد مشروع PowerHub Webserver & Internet Enlet Enlet Setup

مركز ثبات البيانات المركزي للضوء والمنافذ التي تدعم الإنترنت في منزلك

وميض القرص الصلب RaspberriPi / تثبيت البرامج المطلوبة (باستخدام Ubuntu Linux) تنزيل "RASPBIAN JESSIE LITE"

قم بإنشاء القرص الثابت الجديد الخاص بك لـ DashboardPI

أدخل microSD في جهاز الكمبيوتر الخاص بك عبر محول USB وقم بإنشاء صورة القرص باستخدام الأمر dd

حدد موقع بطاقة microSD التي تم إدخالها عبر الأمر df -h ، وقم بإلغاء تحميلها وإنشاء صورة القرص باستخدام الأمر disk copy dd

$ df -h / dev / sdb1 7.4G 32K 7.4G 1٪ / media / XXX / 1234-5678

umount / dev / sdb1

تحذير: تأكد من أن الأمر دقيق تمامًا ، يمكنك إتلاف الأقراص الأخرى باستخدام هذا الأمر

if = موقع ملف صورة RASPBIAN JESSIE LITE = موقع بطاقة microSD الخاصة بك

$ sudo dd bs = 4M if = / path / to / raspbian-jessie-lite.img من = / dev / sdb (ملاحظة: في هذه الحالة ، يكون / dev / sdb ، / dev / sdb1 قسمًا مصنعًا موجودًا على microSD)

إعداد RaspberriPi الخاص بك

أدخل بطاقة microSD الجديدة في raspberrypi وقم بتشغيلها باستخدام شاشة متصلة بمنفذ HDMI

تسجيل الدخول

المستخدم: pi pass: Raspberry

قم بتغيير كلمة مرور حسابك من أجل الأمان

sudo passwd بي

الخطوة 2: تفعيل خيارات RaspberriPi المتقدمة

sudo raspi-config

اختر: 1 قم بتوسيع نظام الملفات

9 خيارات متقدمة

قم بتغيير اسم مضيف A2 إلى "WIFI-OUTLET"

A4 SSH قم بتمكين خادم SSH

A7 I2C تمكين واجهة i2c

قم بتمكين لوحة المفاتيح الإنجليزية / الأمريكية

sudo نانو / الخ / الافتراضي / لوحة المفاتيح

قم بتغيير السطر التالي: XKBLAYOUT = "لنا"

إعادة تشغيل PI لتغييرات تخطيط لوحة المفاتيح / تغيير حجم نظام الملفات لتصبح سارية المفعول

$ sudo shutdown -r الآن

الاتصال التلقائي بشبكة WiFi الخاصة بك

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

أضف الأسطر التالية لجعل raspberrypi يتصل تلقائيًا بشبكة WiFi المنزلية (إذا كانت شبكتك اللاسلكية تسمى "linksys" على سبيل المثال ، في المثال التالي)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} أعد تشغيل PI للاتصال بشبكة WiFi

$ sudo shutdown -r الآن

الآن بعد أن أصبح PI الخاص بك أخيرًا على الشبكة المحلية ، يمكنك تسجيل الدخول إليه عن بُعد عبر SSH. لكن عليك أولاً الحصول على عنوان IP الموجود به حاليًا.

$ ifconfig ابحث عن "inet addr: 192.168. XXX. XXX" في إخراج الأمر التالي لعنوان IP الخاص بـ PI

انتقل إلى جهاز آخر وقم بتسجيل الدخول إلى raspberrypi الخاص بك عبر ssh

$ ssh [email protected]. XXX. XXX

الخطوة 3: ابدأ في تثبيت الحزم المطلوبة

sudo apt-get update

sudo apt-get ترقية

$ sudo apt-get install vim git python-applications python-gpiozero python-smbus i2c-tools python-imaging python-smbus build-basic python-dev rpi.gpio python3 python3-pip libi2c-dev python3-spidev python-spidev

قم بتحديث إعدادات المنطقة الزمنية المحلية

sudo dpkg-إعادة تكوين tzdata

حدد منطقتك الزمنية باستخدام الواجهة

قم بإعداد أمر الدليل البسيط l [اختياري]

vi ~ /.bashrc

أضف السطر التالي:

الاسم المستعار l = 'ls -lh'

المصدر ~ /

إصلاح تمييز البنية الافتراضية لـ VIM [اختياري]

sudo vi / etc / vim / vimrc

uncomment السطر التالي:

بناء الجملة على

قم بتثبيت برامج تشغيل i2c Python

الخطوة 4: إنشاء واجهة برمجة تطبيقات الويب

ستسمح لك الإرشادات التالية ببناء المحور المركزي الذي يشرح المنافذ المختلفة التي تدعم wifi ومفاتيح الحائط التي قد تنشئها ، وأي الأجهزة يتم تشغيلها وإيقافها. هذا نص PHP صغير لوضعه على مضيف ويب من اختيارك. يحتوي على واجهة برمجة التطبيقات التالية للحصول على المعلومات وتعيينها. ملاحظة: لا تنس تضمين ملف.htaccess لتوجيه عنوان URL الصحيح.

قم بتثبيت مجلد "index.php" و "القيم /" و settings.php (تم تكوينه وفقًا لقيمك الخاصة) على خادم ويب تم تمكين PHP من اختيارك. يجب أن تتطابق قيمة المفتاح السري في ملف "settings.php" مع قيمة مفتاح السر التي ستحددها في ملف "settings.py". سيؤدي هذا على المستوى الأساسي إلى منع أي حركة مرور أخرى على الويب من تعيين / كتابة القيم ، وتشغيل أجهزتك ، فأنت بحاجة الآن إلى مفتاح API المجزأ في رأس طلب HTTP للقيام بذلك.

تدعم واجهة برمجة التطبيقات الميزات التالية ، بالنسبة لهذا المشروع ، سنستخدم فقط قيم "العلم" وهي قيم منطقية تخبر المفتاح بالتشغيل وإيقاف التشغيل. ربما إذا كنت ترغب في الاستفادة من قيم "القراءة" ، فيمكنك الحصول عليها ، لذا إذا ارتفعت درجة حرارة الغرفة بدرجة كبيرة عن طريق حفظ درجة الحرارة هناك ، فقد يتم تشغيل مروحة النافذة ، وما إلى ذلك.

احصل على الكود

استنساخ المشروع التالي من GitHub للحصول على الكود لتشغيل خادم الويب ومنفذ RaspberryPI.

github.com/khinds10/PowerHub

نقاط نهاية API عند التشغيل على خادم الويب

myhost / message (احصل على مجموعة الرسائل الحالية)

myhost / message / set (HTTP POST قيمة سلسلة أولية إلى عنوان URL هذا لتعيين رسالة جديدة)

myhost / flag / {id} (احصل على الحالة المنطقية الحالية للعلم بعدد صحيح: {id})

myhost / flag / all (احصل على كل الحالة المنطقية الحالية لجميع العلامات كمصفوفة)

myhost / flag / {id} / set (اضبط الحالة المنطقية الحالية على "true" للعلامة بعدد صحيح: {id})

myhost / flag / {id} / unset (اضبط الحالة المنطقية الحالية على "false" للعلامة بعدد صحيح: {id})

myhost / reading / {id} (احصل على القيمة المتوسطة الحالية للقراءة بعدد صحيح: {id})

myhost / read / all (احصل على القيمة المتوسطة الحالية لجميع القراءات كمصفوفة)

myhost / reading / {id} / set (HTTP POST قيمة رقمية أولية إلى عنوان URL هذا لإضافة قيمة جديدة إلى المتوسط المحسوب الحالي) - انظر أدناه لمعرفة عدد القيم الإجمالية التي تم تجميعها إلى متوسط القيمة التهيئة تُحسب قيم "القراءات" كمتوسطات لعدد معين من القيم الرقمية المستمرة في القراءة الأخيرة. اضبط الثابت التالي على عدد القراءات الأخيرة التي يجب تضمينها لإنتاج المتوسط.

readingsAverageLimit دولار = 5 ؛

سيستمر خادم Datastore Server في الاحتفاظ بقيم الملفات البسيطة الموجودة عن طريق اصطلاحات التسمية أدناه. ملاحظة: سيتم استبدال {id} بالعدد الصحيح الذي يقدمه عنوان URL للطلب الوارد.

$ valueFileFolder = 'القيم' (اسم المجلد الذي يحتوي على ملفات القياس) $ messageFileName = 'message.msg' (اسم ملف نص الرسالة) $ readingsFilesNames = 'قراءة {id}.avg' (متوسط اسم ملف CSV ملف القراءات) $ flagFilesNames = 'flag {id}.flg' (اسم ملف علامة قيمة العلامة المنطقية)

تأكد من أن جميع ملفات القيمة قابلة للكتابة بواسطة قيم systemchmod 777 / *

الخطوة 5: الإمدادات المطلوبة

الإمدادات اللازمة
الإمدادات اللازمة
الإمدادات اللازمة
الإمدادات اللازمة
الإمدادات اللازمة
الإمدادات اللازمة

منشار ثقب 1 بوصة (للحفر)

5V 2 قناة التتابع

لوحة جدار وعاء مزدوج

وعاء مزدوج

بي زيرو دبليو

جهاز Surface Mount Backbox Dual Gang

أزرار دفع مضيئة باللون الأبيض

الخطوة السادسة: بناء المخرج

بناء المخرج
بناء المخرج

كسر علامات التبويب

قم بكسر اللسان الموجود على جانب المنفذ لتشغيل / إيقاف تشغيل كل مقبس بشكل مستقل

الخطوة 7: تثبيت الأزرار

تثبيت الأزرار
تثبيت الأزرار
تثبيت الأزرار
تثبيت الأزرار

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

اختبار تحجيم المكونات

تأكد من أن جميع المكونات تناسب صندوق تركيب سطح المنفذ

الخطوة 8: مرحل الأسلاك

ترحيل الأسلاك
ترحيل الأسلاك
ترحيل الأسلاك
ترحيل الأسلاك

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

الخطوة 9: صور إضافية للأسلاك والتجميع

صور إضافية للأسلاك والتجميع
صور إضافية للأسلاك والتجميع

الخطوة 10: مخطط الأسلاك

الاسلاك الرسم البياني
الاسلاك الرسم البياني

استخدم الرسم التخطيطي لتوصيل المكونات بشكل صحيح للعمل مع كود RaspberryPI Python.

الخطوة 11: اختبار التشغيل الجاف

اختبار التشغيل الجاف
اختبار التشغيل الجاف
اختبار التشغيل الجاف
اختبار التشغيل الجاف
اختبار التشغيل الجاف
اختبار التشغيل الجاف

بعد التجميع النهائي قبل شد وحدة الفتحة معًا ، قم بإجراء تشغيل جاف للجهاز للتأكد من عدم وجود أسلاك قصيرة أو أسلاك سيئة

الخطوة 12: قم بتعيين البرامج النصية لبدء التشغيل

كرونتاب -e

أضف الأسطر التالية

reboot python /home/pi/PowerHub/device/outlet/buttons.pyreboot python /home/pi/PowerHub/device/outlet/relay.py

موصى به: