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

Home_X: 5 خطوات
Home_X: 5 خطوات

فيديو: Home_X: 5 خطوات

فيديو: Home_X: 5 خطوات
فيديو: Песня Балди - Основы поведения [BLUE версия] - The Living Tombstone feat. OR3O 2024, يوليو
Anonim
الرئيسية_X
الرئيسية_X

أنا طالبة في Howest Kortrijk تدرس وسائل الإعلام الجديدة وتكنولوجيا الاتصالات (NMCT).

كان علينا جميعًا إنشاء مشروع يعتمد على التوت و / أو Arduino. كان علينا استخدام أجهزة الاستشعار وقواعد البيانات لعرض البيانات في موقع ويب ، وذلك عندما خطرت لي فكرة إنشاء منزل ذكي صغير.

مع المنزل الذكي ، ستتمكن من رؤية جميع قراءات المستشعر على موقع الويب.

في هذا الدليل ، سأوجهك خلال كل خطوة حتى تتمكن من إعادة إنشاء هذا المشروع بنفسك.

الخطوة 1: المواد: ماذا تحتاج

  • فطيرة التوت
  • دهت 22
  • جروف - مستشعر جودة الهواء
  • جروف - مستشعر الغاز (MQ2)
  • اللوح
  • توت العليق بي تي كوبلر
  • ذكر / أنثى الأسلاك الطائر
  • 5 ملم المصابيح
  • المقاومات
  • الخشب والأدوات
  • أجهزة السيارات
  • GrovePi +

يمكنك شراء هذه العناصر عبر الإنترنت (علي إكسبريس ، أمازون ، إلكترونيات الكيوي …) أو في المتاجر المحلية.

قائمة مفصلة بالأجزاء مع رابط للمحلات التجارية موضحة أدناه في BOM.

الخطوة 2: الأسلاك

الأسلاك
الأسلاك
الأسلاك
الأسلاك

لقد استخدمت فريتزينج من أجل الأسلاك للحصول على نظرة عامة لطيفة حول كيفية إجراء الأسلاك الخاصة بي. أنا بنفسي استخدمت GrovePi + لـ 2 من مستشعراتي. إذا كنت تخطط للقيام بذلك بدون GrovePi + ، فاتبع مخطط Fritzing. أجهزة الاستشعار لا تعمل من أجلك ، حاول استخدام دبابيس مختلفة.

يمكنك العثور على ملف Fritzing أدناه.

الخطوة 3: قاعدة البيانات باستخدام MySQL

قاعدة البيانات باستخدام MySQL
قاعدة البيانات باستخدام MySQL

كانت إحدى أهم المهام الأساسية التي كان علينا تنفيذها هي الاتصال بقاعدة بيانات MySQL.

في كل مرة يحصل فيها المستشعر على قراءات أو ضوء يضيء ، سترى هذه التغييرات في قاعدة البيانات.

ثم ترسل قاعدة البيانات هذه البيانات إلى موقع الويب حتى يتمكن المستخدم من رؤيتها هناك أيضًا.

يمكنك العثور أدناه على ملف.xml الخاص بي حيث يمكنك الحصول على نظرة عامة حول كيفية عمل قاعدة البيانات ،

ولكن عليك أولاً تثبيت MySQL والقارورة على Raspberry Pi.

تم ترميز المستشعرات من خلال pycharm ، لذا تأكد من تثبيتها أيضًا (على جهاز الكمبيوتر الخاص بك).

تحتاج أولاً إلى التحقق من التحديثات وتثبيت الحزم ، مثل هذا:

sudo apt-get update && sudo apt-get Upgrade

sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3

الآن سنستخدم بيئة افتراضية:

me @ my-rpi: ~ python3 -m pip install --upgrade pip setuptools wheel virtualenvme @ my-rpi: ~ $ mkdir project1 && cd project1 me @ my-rpi: ~ / project1 $ python3 -m venv - system- حزم الموقع env me @ my-rpi: ~ / project1 $ source env / bin / activ (env) me @ my-rpi: ~ / project1 $ python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib

يجب أن يخبرك أن خدمة mariadb نشطة.

الآن ، في pycharm ، انتقل إلى VCS> استيراد من التحكم في الإصدار> GitHub en clone

ثم قم بتكوين تهيئة النشر للدليل الذي قمت بإنشائه للتو ، على سبيل المثال. / home / me / project1.

بعد الانتهاء من ذلك ، انتقل إلى إعدادات المترجم الفوري وقم بتكوين البيئة الافتراضية التي أنشأتها للتو ، على سبيل المثال. / home / me / project / env / bin / python. يجب ملء رسم خرائط المسار أيضًا.

إذا فعلت كل هذا ، يجب أن تكون قاعدة البيانات قيد التشغيل بالفعل.

sudo systemctl حالة mysql

نحتاج الآن إلى إنشاء مستخدمين لقاعدة البيانات الخاصة بنا ، مثل:

سودو ماريادب

إنشاء مستخدم 'project-admin' @ 'localhost' المُحدد بواسطة 'adminpassword' ؛ إنشاء مستخدم "مشروع ويب" @ "مضيف محلي" تم تحديده بواسطة "كلمة مرور الويب" ؛ إنشاء مستخدم "project-sensor" @ "localhost" الذي تم تحديده بواسطة "sensorpassword" ؛ مشروع إنشاء قاعدة بيانات ؛

منح جميع الامتيازات في project. * إلى "project-admin" @ "localhost" مع GRANT OPTION ؛ GRANT SELECT ، INSERT ، UPDATE ، DELETE ON project. * TO "project-web" @ "localhost" ؛ منح الاختيار والإدراج والتحديث والحذف في المشروع. * إلى "مستشعر المشروع" @ "localhost" ؛ امتيازات التنظيف ؛

الآن لرؤية قاعدة البيانات الخاصة بنا في pycharm ، يتعين علينا إجراء اتصال.

يمكننا القيام بذلك عن طريق الذهاب إلى View> Tool Windows> Database والنقر فوق الزر الأخضر "plus".

مصدر البيانات> MySQL وانقر (إن وجد) على زر تنزيل برنامج التشغيل المنبثق.

ثم انتقل إلى SSH / SSL وتحقق من SSH. املأ المضيف / المستخدم / كلمة المرور لـ pi واستخدم المنفذ 22 إذا لم يتم ملؤه بعد.

إذا كنت تريد أن تتذكر pycharm كلمة المرور الخاصة بك ، فحدد مربع الاختيار "تذكر كلمة المرور".

في علامة التبويب "عام" ، قم بملء المضيف المحلي ، والمشروع في قاعدة البيانات ، واستخدم مسؤول المشروع بكلمة المرور لتتمكن من اختبار الاتصال.

لجعل قاعدة البيانات الآن قابلة للاستخدام ، تحتاج إلى تشغيل.sql الذي أضعه أدناه. حاول استخدام خيار الاستيراد ، إذا لم تتمكن من استيراد ملف تفريغ ، فيجب عليك إضافة الجداول يدويًا.

بعد الانتهاء من ذلك ، تحتاج إلى العثور على دليل conf مع ملفي الخدمة. هناك قم بتغيير كل سبك تجده مع اسم المستخدم الذي تستخدمه على بي الخاص بك. أيضًا ، يجب أن تكون المجموعة عبارة عن بيانات www.

الخطوة التالية هي بدء تشغيل هذه الخدمات على بي الخاص بك ، مثل:

sudo cp conf / project - *. service / etc / systemd / system /

تحميل برنامج sudo systemctl daemon-reload

بدء مشروع sudo systemctl- *

مشروع حالة sudo systemctl- *

يجب أن ترى خدمتين نشطتين عندما يسير كل شيء وفقًا للخطة.

الخطوة الأخيرة هي تفعيل nginx.

تحقق أولاً من وجود apache2 على pi ، إذا كان لديك هذا مثبتًا ، فاحذفه أو قم بتعطيله.

في ملف nginx ، عليك أولاً تغيير uwsgi_pass ، ثم تشغيل هذه الأوامر.

sudo cp conf / nginx / etc / nginx / sites-available / project

sudo rm / etc / nginx / sites-enabled / default

sudo ln -s / etc / nginx / sites-available / project1 / etc / nginx / sites-enabled / project

أعد تشغيل sudo systemctl nginx.service

sudo systemctl status nginx.service

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

يمكنك تمكين الخدمات بحيث يتم تشغيلها تلقائيًا عند بدء تشغيل pi.

عندما تفعل كل ذلك ، تأكد من وضع منزل واحد على الأقل بعنوان في قاعدة البيانات. يمكنك القيام بذلك بإدخال بسيط في ملف.

الخطوة 4: التشفير

الترميز
الترميز
الترميز
الترميز

يمكنك تنزيل الكود عبر Github:

github.com/NMCT-S2-Project-I/project-i-Tib …

يتم تضمين رمز المستشعرات في ملف sensor.py.

لا تنس تغيير اسمي إلى اسمك (أو اسم المستخدم الذي تستخدمه في pi الخاص بك) في ملفات الخدمة حتى يتمكنوا من العمل بشكل صحيح ووضع الكود الخاص بي في الملفات الموجودة بالفعل في Pycharm الخاص بك.

الخطوة الخامسة: السكن

الإسكان
الإسكان
الإسكان
الإسكان
الإسكان
الإسكان
الإسكان
الإسكان

لقد قمت برسم سريع لكيفية رغبتك في منزلي ، ولكن يمكن أن يبدو منزلك مختلفًا تمامًا. عليك فقط التأكد من أن لديك كل شيء حتى تتمكن المؤازرة من فتح وإغلاق النافذة.

لقد استخدمت بشكل أساسي مثقابًا صغيرًا ومنشارًا لقطع الخشب. لقد تأكدت أيضًا من أن الجدران كانت سميكة بدرجة كافية حتى أتمكن من وضع المؤازرة الخاصة بي داخلها.

عندما تنتهي من التصميم الخاص بك وتكون المؤازرة في مكانها ، ما عليك سوى توصيل المستشعرات ووضع pi داخل المنزل وأنت على استعداد للذهاب.

كما ذكرت من قبل ، يمكن أن يبدو منزلك تمامًا مثل منزلي ، ما عليك سوى توفير مساحة للنافذة والنافذة.

أخيرًا ، لقد انتهيت من المشروع. آمل أن يكون هذا الدليل واضحًا بدرجة كافية حتى تتمكن أيضًا من إنشاء منزل ذكي رائع كما فعلت.

حظا سعيدا.

موصى به: