جدول المحتويات:
- اللوازم
- الخطوة 1: قم بإعداد Raspberry Pi الخاص بك
- الخطوة 2: توصيل أجهزتك
- الخطوة الثالثة: إضافة الكود
- الخطوة 4: أعطها فرصة
- الخطوة 5: التصحيح وملف RxTx.py
- الخطوة 6: استمتع
فيديو: كيفية التحكم في المنافذ باستخدام Raspberry Pi: 6 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
في Instructable ، سأوضح لك كيفية إنشاء واجهة ويب للتحكم في المنافذ في منزلك باستخدام Raspberry Pi. اخترت كتابة هذا المشروع عندما رأيت مسابقة Sensors ، وبما أن هذا المشروع يتضمن استخدام مستشعر لقراءة الرموز من جهاز التحكم عن بُعد المزود بالمنافذ التي تشتريها ، فقد اعتقدت أن هذا المشروع سيكون مناسبًا تمامًا.
سأعمل على الحفاظ على هذا أعلى مستوى ممكن وتوفير رمز لجعل هذا كله يعمل. بالنسبة إلى جميع القرود المشفرة الموجودة هناك ، لا تتردد في البحث في الشفرة وتدقيقها في التعليقات! أنا دائما أتطلع إلى التحسن. هناك الكثير مما يحدث في هذا الأمر ، لذا إذا كانت لديك أسئلة حول أي خطوة ، فالرجاء ترك تعليق حتى أتمكن من تحديث Instructable بالتفاصيل المطلوبة.
يستخدم هذا المشروع منافذ يتم التحكم فيها بترددات الراديو بسرعة 433 ميجاهرتز إلى جانب جهاز إرسال RF متصل بجهاز raspberry pi. تأتي المنافذ مع أجهزة تحكم عن بعد يمكنها تشغيل / إيقاف تشغيل المنافذ ، لكن هذا ليس ممتعًا! سنستخدم بدلاً من ذلك خادم ويب يعمل على raspberry pi والذي يسمح لأي شخص متصل بالشبكة بتشغيل أو إيقاف تشغيل منافذ معينة. تعد واجهة الويب الأمامية لهذا المشروع مثالية حيث يمكن استخدام أي جهاز متصل بالويب على شبكتك كجهاز تحكم عن بعد.
هذا مشروع حلمت بإكماله لسنوات ، وعلى الرغم من أنه لا يزال هناك مجال للإضافات ، فإن المشروع الموصوف على النحو التالي هو نظام وظيفي.
اللوازم
- A Raspberry Pi (استخدمت RPi 3 موديل B +)
- جهاز إرسال واستقبال 433 ميجاهرتز (استخدمت هذا الجهاز)
- منافذ 433 ميجا هرتز (لقد استخدمت هذا)
- صداري من أنثى إلى أنثى (اشتريت هذه المجموعة)
- جهاز كمبيوتر أو جهاز محمول قادر على الوصول إلى الإنترنت
الخطوة 1: قم بإعداد Raspberry Pi الخاص بك
ابدأ بتثبيت أحدث إصدار من Raspbian على Raspberry Pi الجديد. إذا كنت تخطط لاستخدام Pi موجود (وهو ما يمكنك فعله تمامًا) ، فكل ما تحتاج إليه هو التأكد من أن لديك Python 3 على Pi الخاص بك ، نظرًا لأن هذا هو كل كود المصدر الذي قدمته مكتوبًا فيه. للقيام بذلك ، نوع
بيثون 3
في سطر الأوامر. إذا كان لديك Python 3 ، فمن المفترض أن ترى محطة python مفتوحة. اخرج من الجهاز عن طريق الإغلاق أو الكتابة
خروج()
بمجرد تأكيد ذلك ، تحتاج إلى تثبيت flask على Pi الخاص بك. يتيح لنا Flask إنشاء خادم الويب الخاص بنا. من سطر أوامر Pi ، اكتب
sudo pip3 تثبيت القارورة
إذا لم يكن لديك نقطة مثبتة على Pi الخاص بك ، فستحتاج إلى الكتابة
sudo apt-get install python3-pip
أفضل التطوير على Raspberry Pi الخاص بي من الكمبيوتر المكتبي المريح. إذا كنت تفضل هذا الخيار أيضًا ، فأنت بحاجة إلى تثبيت نوع من البيئة لـ SSH في Pi. سيعمل PuTTY ، لكنني أفضل أن يكون لديّ واجهة مستخدم رسومية (GUI) ، مما يجعل الأمر يبدو وكأنك على Pi مباشرة. بالنسبة لخيار واجهة المستخدم الرسومية ، ستحتاج إلى تثبيت VNC Viewer على الكمبيوتر الذي تخطط للعمل عليه. هناك أيضًا إعدادات ستحتاج إلى ضبطها على Pi الخاص بك. يمكن العثور على تعليمات تعديل الإعدادات هنا.
الخطوة 2: توصيل أجهزتك
في هذه المرحلة ، حان الوقت لإجراء جميع الاتصالات المادية التي ستحتاج إلى القيام بها استعدادًا لإعداد الكود المصدري لهذا المشروع. سوف تقوم بتوصيل دبابيس جهاز الإرسال وجهاز الاستقبال بدبابيس GPIO في Pi الخاص بك. سترغب في الرجوع دينياً إلى مخطط pinout الخاص بدبابيس GPIO. للقيام بذلك ، افتح Terminal على Pi الخاص بك واكتب
pinout
فيما يلي الروابط التي أجريتها. قد يكون لديك تكوين مختلف إذا اشتريت جهاز إرسال / مستقبل مختلف عما أشرت إليه في المقدمة. إذا قررت اختيار أرقام سرية مختلفة عن تلك التي أشرت إليها أدناه ، فلا داعي للخوف! عند تنزيل شفرة المصدر ، ما عليك سوى تعديل أرقام الدبوس حسب الحاجة في ملف RxTx.py.
جهاز استقبال (شريحة كبيرة):
- GND - أي دبوس أرضي محدد
- البيانات - دبوس 11
- DER - غير متصل
- + 5V - أي دبوس مخصص + 5V
- ------
- + 5V - أي دبوس مخصص + 5V
- GND - أي دبوس أرضي محدد
- GND - غير متصل
- ANT - غير متصل
ملاحظة: يمكنك توصيل الهوائي حسب الحاجة ، لكنني وجدت أنني لست بحاجة إلى ذلك. كانت هذه الشريحة الصغيرة حساسة بشكل مدهش وتكتشف بأمانة الإشارات إلى ما لا يقل عن 50 قدمًا من مكان جلوسها ومن خلال جدارين على الأقل.
المرسل:
- ف - دبوس 3.3 فولت
- DA - دبوس 7
- ز - أي دبوس أرضي معين
- AN - غير متصل
ملاحظة: مرة أخرى ، يمكنك توصيل هوائي بجهاز الإرسال حسب الحاجة ، لكنني وجدت أنني لست بحاجة إلى ذلك. النطاق أكثر من كافٍ (50 + قدمًا).
الخطوة الثالثة: إضافة الكود
هذا هو الجزء الذي قضيت فيه معظم وقتي عندما كنت أطور هذا المشروع. أحاول التعليق قدر الإمكان ، لكنني على الأرجح تركت فجوات قد تتطلب شرحًا إذا أمضى أي منكم وقتًا في محاولة فهمها. إذا حدث هذا لك ، فالرجاء ترك تعليق!
اللغات المستخدمة هنا هي:
- بايثون
- CSS
- جافا سكريبت
- لغة البرمجة
- مسج / أياكس
يتم استخدام Python في خادم flask وفي ملف
RxTx.py
ملف ، الذي يتعامل مع إرسال واستلام الكود. يستخدم CSS في إنشاء نمط صفحة الويب. من يريد موقعًا مملًا !؟ يتم استخدام جافا سكريبت في أي من معالجة الحدث (الضغط على زر ، وما إلى ذلك). HTML هو لبنة البناء الأساسية لصفحة الويب. أخيرًا ، يتم استخدام JQuery / Ajax للتواصل بين صفحة الويب وخلفية Python.
إذا بدت كل هذه اللغات مخيفة ، فلا تقلق! عرفت فقط أن Python تدخل في هذا المشروع ، والذي تصادف أنه اللغة التي تضمنت أقل قدر من الترميز ، اذهب إلى الشكل … يكفي أن نقول ، خذ وقتك في التمشيط عبر الكود إذا كان هذا هو ما اخترت القيام به. إذا كنت لا تريد ذلك ، فلا داعي لذلك!
فيما يلي هيكل الدليل الذي اخترت استخدامه مع صفحة الويب هذه. يحتوي المجلد المضغوط المرفق بهذه الخطوة على جميع التعليمات البرمجية المصدر في الهيكل التالي.
مفتاح المخرج-> comm-- DataRW.py-- keys.py-- RxTx.py-> صفحة الويب - ثابت ----- favicon.ico ----- style.css-- قوالب ----- index.html ----- Schedule.html-- app.py-- ملف البيانات
يمكنك وضع مجلد Outlet Switch في أي مكان على Pi الخاص بك. عندما تكون جاهزًا لتشغيل خادم الويب الخاص بك ، افتح Terminal على Pi الخاص بك ، و
قرص مضغوط
(تغيير الدليل) إلى دليل صفحات الويب. ثم اكتب
python3 app.py
في المحطة. إذا لم تكن هناك أي أخطاء ، فيجب أن تكون على ما يرام!
ملاحظة. يرجى التحلي بالصبر إذا واجهت أي أخطاء. حاولت سحقهم جميعًا قبل التحميل.
الخطوة 4: أعطها فرصة
الآن بعد أن قمت بتشغيل الكود ، يمكنك التعود على واجهة الويب في متناول يدك. التحكم في النظام بسيط للغاية:
- يمكنك إضافة أي عدد تريده من المنافذ باستخدام واجهة الويب.
- الحذف بسيط مثل النقر على تعديل واختيار المنافذ التي تريد حذفها والنقر على حذف.
يوضح مقطع فيديو YouTube أعلاه كيفية الشروع بالفعل في إضافة منفذ جديد إلى قائمتك. لتلخيص ما يظهر:
- أدخل أولاً عنوان المنفذ في حقل العنوان
- انقر أو المس خارج حقل العنوان للسماح للبرنامج بالتحقق من أن العنوان غير موجود بالفعل. لا يمكن أن يكون لديك عناوين بنفس الاسم
- بمجرد التحقق من الصحة ، يتم تمكين أزرار ON Code و OFF Code.
- اضغط مع الاستمرار على زر التشغيل الموجود بجهاز التحكم عن بُعد الخاص بك وانقر بسرعة على زر ON Code الموجود على الواجهة. استمر في الضغط على الزر الموجود على جهاز التحكم عن بُعد حتى يملأ الكود الثنائي الحقل المجاور.
- كرر الخطوة السابقة لرمز إيقاف التشغيل.
- انقر فوق "موافق" ، وأنت الآن جاهز لتبديل هذا المنفذ!
كما هو مذكور في المقدمة ، فإن المشروع لم يكتمل بنسبة 100٪ لاستخداماتي الخاصة. أكبر مكون لم أكمله وأقوم بتنفيذه حتى الآن هو القدرة على الجدولة. أخطط للسماح للمستخدم بإنشاء جدول يسمح بتشغيل وإيقاف المنافذ تلقائيًا في أوقات معينة.
الخطوة 5: التصحيح وملف RxTx.py
القيد الوحيد المعروف للنظام هو أن هناك فرصة لعدم التوافق بين منافذ البائعين المختلفين. رسائل رمز التشغيل والإيقاف هي 25 بت لنظامي ، وإذا كان للنظام طول رسالة مختلف ، فإنه لا يتوافق على الفور مع هذا المشروع. إذا اتبعت الإرشادات بالضبط وما زلت تواجه مشكلات في تشغيل هذا الأمر ، فسيكون ما يلي أفضل طريقة لتصحيح المشكلة.
-
تأكد من تثبيت matplotlib على Pi الخاص بك. يمكنك القيام بذلك عن طريق كتابة ما يلي في محطة باي:
-
بيثون 3
-
استيراد matplotlib
- إذا تلقيت خطأ ، فأنت بحاجة إلى تثبيت matplotlib.
-
اخرج من قشرة الثعبان باستخدام
خروج()
-
-
لتثبيت matplotlib ، اكتب
sudo pip3 تثبيت matplotlib
- في المحطة
- قم بتنزيل ملف test.py المرفق وضعه بجانب ملف RxTx.py على Pi الخاص بك
- افتح محطة python وقم بتغيير الدليل إلى مجلد comm.
-
نوع
python3 test.py
- عندما تقول "** بدء التسجيل ** ،" اضغط مع الاستمرار على زر التشغيل أو الإيقاف في جهاز التحكم عن بُعد حتى ينتهي التسجيل.
- سيقوم البرنامج بتحميل شكل matplotlib الذي يشبه ما ورد أعلاه. قم بالتكبير حتى ترى الإشارة المتكررة كما هو موضح في الصور أعلاه.
- قم بحساب إجمالي المنطق 1 والمنطقي 0 لكل رسالة ، حيث تكون الرسالة عبارة عن تكرار واحد للإشارة المتكررة الموضحة أعلاه. إذا كان الإجمالي 25 ، فمن المحتمل ألا يكون ملف RxTx.py على خطأ. إذا واجهت شيئًا آخر بخلاف 25 ، فتأكد من التعليق أدناه ، وسأقوم بإعادة تجهيز ملف RxTx.py ليكون أكثر انفتاحًا (أو لا تتردد في تجربة يدك فيه).
ماذا لو لم أشاهد إشارة متكررة؟
إذا كنت لا ترى إشارة متكررة ، فهذا يعني أن أحد شيئين خاطئ. أولاً ، تحقق من أن جميع توصيلات أسلاك التوصيل الخاصة بك قد تم إجراؤها بشكل صحيح. إذا كان كل شيء يبدو جيدًا ، فقد يكون لديك جهاز استقبال سيئ. هل اشتريت الذي اقترحته؟ عندما اشتريت أول شريحة جهاز استقبال ، كانت صاخبة جدًا. صاخبة لذا لم أستطع الحصول على إشارة واضحة. ثم أعدت تلك الشريحة واخترت الشريحة التي قمت بربطها ، ولم يكن من الممكن أن تعمل بشكل أفضل.
الخطوة 6: استمتع
أنت تعرف أن لديك القدرة على تشغيل / إيقاف المنافذ من هاتفك أو جهازك اللوحي أو جهاز الكمبيوتر أو أي جهاز آخر يدعم الويب! اسمحوا لي أن أعرف ما هو رأيك في التعليقات!
موصى به:
افعلها بنفسك -- كيفية صنع روبوت عنكبوت يمكن التحكم فيه باستخدام الهاتف الذكي باستخدام Arduino Uno: 6 خطوات
افعلها بنفسك || كيف تصنع روبوتًا عنكبوتًا يمكن التحكم فيه باستخدام الهاتف الذكي باستخدام Arduino Uno: أثناء صنع روبوت العنكبوت ، يمكن للمرء أن يتعلم الكثير من الأشياء عن الروبوتات ، مثل صنع الروبوتات هو أمر ترفيهي بالإضافة إلى كونه صعبًا. سنشرح لك في هذا الفيديو كيفية صنع روبوت عنكبوت ، يمكننا تشغيله باستخدام هاتفنا الذكي (Androi
كيفية التحكم في جهاز باستخدام Raspberry Pi و Relay - الأساسيات: 6 خطوات
كيفية التحكم في جهاز باستخدام Raspberry Pi و Relay - الأساسيات: هذا برنامج تعليمي أساسي ومباشر حول كيفية التحكم في الجهاز باستخدام Raspberry Pi و Relay ، وهو مفيد في إنشاء مشاريع IoT هذا البرنامج التعليمي للمبتدئين ، وهو سهل الاستخدام تابع حتى لو لم تكن لديك أي معرفة باستخدام Raspberry
كيفية إنشاء حرف ثنائي الأبعاد باستخدام وحدة التحكم في الأحرف في Unreal Engine 4 باستخدام برنامج Visual Script للكمبيوتر الشخصي: 11 خطوة
كيفية إنشاء حرف ثنائي الأبعاد باستخدام وحدة تحكم الأحرف في Unreal Engine 4 باستخدام برنامج Visual Script للكمبيوتر: كيفية إنشاء شخصية ثنائية الأبعاد باستخدام وحدة تحكم في الأحرف في محرك Unreal 4 باستخدام برنامج نصي مرئي للكمبيوتر الشخصي مرحبًا ، أنا جوردان ستيلتز. أعمل على تطوير ألعاب الفيديو منذ أن كان عمري 15 عامًا. سيعلمك هذا البرنامج التعليمي كيفية إنشاء شخصية أساسية باستخدام
كيفية التحكم في الأجهزة المنزلية باستخدام جهاز التحكم عن بعد للتلفاز بوظيفة المؤقت: 7 خطوات (بالصور)
كيفية التحكم في الأجهزة المنزلية باستخدام جهاز التحكم عن بعد في التلفزيون بوظيفة المؤقت: حتى بعد 25 عامًا من طرحه في السوق الاستهلاكية ، لا يزال الاتصال بالأشعة تحت الحمراء مهمًا جدًا في الأيام الأخيرة. سواء كان تلفزيونك 55 بوصة بدقة 4K أو نظام الصوت في سيارتك ، فكل شيء يحتاج إلى جهاز تحكم عن بعد يعمل بالأشعة تحت الحمراء للاستجابة
المنافذ الكهربائية المعوقة: 7 خطوات (بالصور)
المنافذ الكهربائية المحرومة: يوضح لك هذا التوجيه كيفية اختراق محول طاقة جاهز لإنشاء محول طاقة مزود بالإنترنت باستخدام العفريت الكهربائي. يتيح لك هذا التحكم عن بعد في أي جهاز يعمل بالطاقة الكهربائية باستخدام هاتف ذكي أو متصفح ويب. المرآب الخاص بي & quot؛ as-c