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

IDC2018IOT نظام مراقبة وأطعمة الحيوانات الأليفة المتصلة: 7 خطوات
IDC2018IOT نظام مراقبة وأطعمة الحيوانات الأليفة المتصلة: 7 خطوات

فيديو: IDC2018IOT نظام مراقبة وأطعمة الحيوانات الأليفة المتصلة: 7 خطوات

فيديو: IDC2018IOT نظام مراقبة وأطعمة الحيوانات الأليفة المتصلة: 7 خطوات
فيديو: 10 اطعمة تساعد على انجاب أطفال ذكور 2024, يوليو
Anonim
Image
Image
IDC2018IOT نظام مراقبة وأطعمة الحيوانات الأليفة المتصلة
IDC2018IOT نظام مراقبة وأطعمة الحيوانات الأليفة المتصلة

مقدمة

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

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

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

معلومات عنا

تومر ميمون وجلعاد رام وألون شبرونج ثلاثة طلاب متحمسين لعلوم الكمبيوتر في مركز الأبحاث الدولي في هيرزيليا. هذا هو أول مشروع Instructables لدينا كجزء من ورشة عمل IoT - نأمل أن تجده ممتعًا وممتعًا في بنائه!

الخطوة الأولى: فهم العمارة:

فهم العمارة
فهم العمارة
فهم العمارة
فهم العمارة

يمكننا تقسيم هذا النظام إلى قسمين رئيسيين:

  1. قنوات البيانات الواردة:

    • مستشعر المياه - أخذ عينات من مستويات المياه داخل وعاء الحيوانات الأليفة ، ويتم نقل البيانات من وحدة Node-MCU إلى خادم Blynk ويتم تقديمها أخيرًا عبر لوحة معلومات الحيوانات الأليفة.
    • مستشعر السونار - أخذ عينات من محتوى حاوية الطعام ، يتم نقل البيانات من وحدة Arduino (مع امتداد درع Ethernet) إلى خادم Blynk ويتم تقديمها أخيرًا عبر Pet Dashboard.
    • وحدة كاميرا Pi - عينات باستمرار من إطارات منطقة الحيوانات الأليفة ، يستضيف Pi خادمه الخاص الذي يوفر تغذية حية للوحة تحكم الحيوانات الأليفة.
  2. تدفق الأوامر:

    • زر التغذية (لوحة القيادة) - تحديث قيمة دبوس افتراضية من خلال Blynk ، يتم تشغيل الوظيفة ذات الصلة على لوحة Arduino ، ثم تتحرك المؤازرة للسماح للطعام بالمرور عبر الغطاء.
    • Give Water (Dashboard) - يقوم بتحديث قيمة الدبوس الافتراضية بشكل نشط من خلال Blynk ، ويتم تشغيل الوظيفة ذات الصلة على لوحة Node-MCU ، ويتم تبديل التتابع إلى ON ، وستبدأ مضخة المياه في تدفق المياه إلى وعاء الحيوان الأليف.
    • تغذية الحيوانات الأليفة الحية (لوحة القيادة) - مضمنة في لوحة القيادة ، وتقدم بيانات حية عبر خادم القارورة الذي يعمل على جهاز Pi.

الخطوة 2: قائمة الأجزاء

قائمة الأجزاء
قائمة الأجزاء
قائمة الأجزاء
قائمة الأجزاء
قائمة الأجزاء
قائمة الأجزاء

لبدء العمل على هذا النظام ، ستحتاج إلى الأجزاء التالية (أو ما شابه):

  1. بدني:

    • حاوية الطعام: استخدمنا أنبوبًا صناعيًا ذو وجهين مقاس 45 سم ، اشتريناه من متجر منزلي. من المهم أن يكون لديك مخرجان. واحد لقياس المحتوى ، والمخرج الثاني لآلية الفتح / الإغلاق.
    • شريط لاصق: للحفاظ على الأشياء معًا ؛)
    • أسلاك العبور: كلما كان الأمر أكثر مرحًا ، من الجيد دائمًا الحصول على بعض الإضافات إذا حدث خطأ ما.
    • كابل إيثرنت: لتوصيل Arduino (مع درع إيثرنت) بالإنترنت.
    • علبة البستنة: تستخدم كوعاء للمياه ومضخة المياه.
    • أنبوب ماء قصير: متصل بالمضخة ويصب الماء في وعاء الحيوان الأليف.
  2. المستشعرات:

    • مستشعر مستوى الماء من WINGONEER: قم بقياس مستويات المياه داخل وعاء الحيوان الأليف.
    • مستشعر السونار - يقيس مسافة مستوى الطعام من الغطاء العلوي داخل الحاوية.
    • TONGLING Relay: يسمح لنا بتشغيل / إيقاف تشغيل مضخة المياه التي تقوم بتدفق المياه.
    • وحدة الكاميرا Pi: متصلة بجهاز Raspberry Pi ، وتقوم ببث صور منطقة الحيوانات الأليفة.
    • مضاعفات عامة: قفل وفتح حاوية الطعام.
  3. الأجهزة / اللوحات الإلكترونية:

    • Arduino Uno: يتحكم في تنفيذ وحدة حاوية الطعام.
    • Arduino Ethernet Shield: يوفر اتصال إنترنت بلوحنا.
    • NodeMCU (ESP-8266): يتحكم في وحدة المياه ، سواء لقياس أو صب الماء. هذه اللوحة لديها القدرة على الاتصال عبر WiFi.
    • Raspberry Pi 3 - يستضيف خادم الكاميرا ويوفر تغذية حية للوحة معلومات الحيوانات الأليفة.
    • مضخة المياه الغاطسة VicTsing 80 GPH: تقوم بتدفق المياه من علبة البستنة إلى الوعاء ، جنبًا إلى جنب مع أنبوب الماء.

الخطوة 3: توصيل الأسلاك ووضع الأشياء معًا

الأسلاك ووضع الأشياء معًا
الأسلاك ووضع الأشياء معًا
الأسلاك ووضع الأشياء معًا
الأسلاك ووضع الأشياء معًا
الأسلاك ووضع الأشياء معًا
الأسلاك ووضع الأشياء معًا

الأسلاك

قبل أن نبدأ ، يوصى بوضع Arduino / Node-MCU على لوح توصيل لتسهيل تجميع جميع الأسلاك معًا ووضعها في أي مكان مادي. بالإضافة إلى ذلك ، يوصى باستخدام الأسلاك الطويلة لمنع الأخطاء الناتجة عن فصل الكابل. لقد قدمنا لك مخططًا للأسلاك لوحدة Node-MCU (وحدة المياه) و Arduino (وحدة الغذاء).

  1. وحدة الغذاء (اردوينو):

    • مستشعر السونار:

      • GND (أسود) = GND
      • VCC (أحمر) = 5 فولت
      • مثلث (أرجواني) = 3
      • صدى (أزرق) = 4
    • المؤازرة:

      • GND (أسود) = GND
      • VCC (أحمر) = 5 فولت
      • الإشارة (أصفر) = 9
  2. وحدة المياه (العقدة):

    • مستشعر مستوى الماء:

      • S (أزرق) = A0
      • + (أحمر) = 3 ضد 3
      • - (أسود) = GND
    • مرحل (موصل كهربائيًا بمضخة المياه):

      • IN (أصفر) = D1
      • VCC (أحمر) = فين
      • GND (أسود) = GND
  3. وحدة الكاميرا (Pi):

    • مستشعر الكاميرا:

      • قم بالاتصال بمنفذ الكاميرا الفردي Pi (كابل التدفق)
      • إذا كنت تسعى إلى معرفة المزيد حول Pi مع وحدة الكاميرا - Link

تجميع الأجزاء معًا

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

  1. وحدة الغذاء (Arduino): الحاوية مستقيمة جدًا للأمام ، وسنركز على صناعة الغطاءين.

    • الغطاء العلوي: قم بقطع فتحتين في الغطاء حتى يتلاءم مستشعر السونار (انظر الصورة المرفقة).
    • الغطاء السفلي + الآلية: ابدأ بأخذ أحد المرفقات البلاستيكية (المزودة بمستشعر مؤازر) وقم ببناء شكل "مطرقة ثقيلة" باستخدام شريط لاصق / عصي خشبية (استخدمنا الشريط فقط). بعد ذلك ، قم بإرفاقه المؤازرة. الآن ، نحتاج إلى فتحتين على الغطاء نفسه. يجب أن يسمح الأول للماكينة أن تتلاءم مع الآلية التي أنشأناها في "الجانب الداخلي" للغطاء. اقطع ثقبًا آخر بناءً على جانب "رأس المطرقة" الذي صنعته. بهذه الطريقة ، عندما يتم فتح المؤازرة ، فإن ذيل المطرقة سوف يكتسح الطعام باتجاه المخرج ويمنع القطع الكبيرة من الالتصاق معًا.
  2. وحدة المياه (Node-MCU): ما عليك سوى توصيل أنبوب الماء بمضخة المياه ، ووضعه الآن داخل علبة البستنة (تأكد من عدم وضع الجزء الخطأ مع التتابع والأسلاك الكهربائية داخل الماء).
  3. وحدة الكاميرا: كل ما عليك فعله هو وضع Pi مع وحدة الكاميرا في مكان من اختيارك.

الخطوة 4: إعداد Blynk

إعداد Blynk
إعداد Blynk
إعداد Blynk
إعداد Blynk

تستند جميع القدرات البعيدة في هذا المشروع إلى Blynk. توفر لنا هذه الخدمة بشكل أساسي خادم ويب مجاني وواجهة برمجة تطبيقات RESTful للتواصل مع أجهزة Arduino / Node-MCU الخاصة بنا عبر الإنترنت باستخدام بروتوكول HTTP. يسمح لنا Blynk بتحديد المسامير الافتراضية ، والتي سيتم استخدامها كعنوان لتنفيذ وظائف محددة تتعلق بسكب الماء وتغذية وأخذ عينات من أجهزة الاستشعار المختلفة (لقد قمنا بهذا الجزء من أجلك ، كل ما عليك القيام به هو الحصول على رمز التطبيق الخاص بك ، الذي سيتم شرحه بعد ذلك).

كيفية الحصول على رمز المصادقة الخاص بي Blynk

  1. قم بتنزيل تطبيق Blynk عبر AppStore / PlayStore لجهازك المحمول.
  2. اشترك في هذه الخدمة (الاستخدام مجاني).
  3. ابدأ مشروعًا جديدًا ، تأكد من تحديد الجهاز الصحيح (في حالتنا ESP8266).
  4. بعد الإنشاء ، سيتم إرسال بريد إلكتروني يحتوي على رمز AUTHENTICATION TOKEN - احفظ الرمز المميز للخطوات التالية.

ملاحظة: يمكن استخدام Blynk بالكامل عبر التطبيق ، لكننا قررنا تنفيذ لوحة القيادة المخصصة الخاصة بنا.

أخيرًا ، للمتابعة إلى الخطوة التالية ، يجب عليك تنزيل مكتبة Blynk وتثبيتها - الرابط (انتقل إلى الجزء 3)

الخطوة 5: تكوين حاوية الطعام ومضخة المياه والكاميرا الحية

تكوين حاوية الطعام ومضخة المياه والكاميرا الحية
تكوين حاوية الطعام ومضخة المياه والكاميرا الحية
تكوين حاوية الطعام ومضخة المياه والكاميرا الحية
تكوين حاوية الطعام ومضخة المياه والكاميرا الحية

في هذه المرحلة ، انتهينا من تجميع جميع الأجزاء معًا وحصلنا على blynkAuthAppToken (انظر الخطوة 3).

قدمنا لك كل الكود الذي تحتاجه لتشغيل هذا المشروع ، كل ما عليك فعله هو تغيير بعض المتغيرات في الكود ، مما سيجعله نظامك الخاص.

بادئ ذي بدء ، ابدأ بتنزيل Arduino IDE (إذا لم تقم بذلك بعد) - الرابط

حاوية طعام اردوينو

  1. قم بإعداد IDE على لوحة Arduino: Tools -> Board -> Arduino / Genuino Uno
  2. تأكد من تثبيت هذه المكتبات: Sketch -> Include Library -> Manage Libraries

    ريلاي (بواسطة رافائيل)

  3. افتح ملف رسم PetFeeder.ino ، وقم بتكوين المعلمات التالية (انظر الصورة المرفقة للحصول على المساعدة):

    المصادقة = "REPLACE_WITH_YOUR_BLYNK_TOKEN" ؛

  4. قم بتجميع وتحميل المخطط على جهاز Arduino الخاص بك.

وحدة المياه Node-MCU

  1. قم بإعداد IDE على لوحة Node-MCU:

    راجع الجزء الأول من هذا الدليل للحصول على شرح مفصل

  2. تأكد من تثبيت هذه المكتبات: Sketch -> Include Library -> Manage Libraries

    مدير WiFi (بواسطة tzapu)

  3. افتح ملف رسم PetFeeder.ino ، وقم بتكوين المعلمات التالية (انظر الصورة المرفقة للحصول على المساعدة):

    • المصادقة = "REPLACE_WITH_YOUR_BLYNK_TOKEN" ؛
    • ssid = "YOUR_WIFI_SSID" ؛ // هو في الأساس اسم شبكة WiFi الخاصة بك
    • اجتياز = "YOUR_WIFI_PASSWORD" ؛ // إذا لم يكن لديك كلمة مرور ، فاستخدم سلسلة فارغة ""
  4. قم بتجميع وتحميل المخطط على جهاز Node-MCU الخاص بك.

وحدة الكاميرا الحية Pi

  1. قم بتوصيل وحدة كاميرا بي
  2. قم بتشغيل "sudo raspi-config" واضبط خيار "الكاميرا" على تمكين.
  3. اختبر الكاميرا باستخدام أمر "raspistill" لالتقاط صورة

    r aspistill -o image.jpg

  4. تعيين خادم Flask كاميرا الويب:

    • قم بتثبيت جميع المتطلبات باستخدام pip install-r requirements.txt
    • استخدم python لتشغيل camera_server.py
    • تحقق من ذلك على 127.0.0.1:5000/video_feed
  5. قم بتعيين خادم الويب Flask للتشغيل عند التشغيل:

    • أضف السطر التالي إلى /etc/rc.local (قبل سطر الخروج):

      python / camera_server.py

الخطوة السادسة: كيفية استخدام لوحة التحكم

كيفية استخدام لوحة التحكم
كيفية استخدام لوحة التحكم

اقامة

هذا الجزء بسيط إلى حد ما ، كل ما عليك فعله هو إدراج "رمز التطبيق blynk" في ملف "index.js" على النحو التالي:

const blynkToken = "YOUR_BLYNK_APP_TOKEN" // استخدم نفس الرمز المميز من الخطوات السابقة.

إستعمال

  1. افتح لوحة القيادة بالنقر المزدوج على ملف "index.html".
  2. ستقوم لوحة القيادة بتجربة النظام تلقائيًا كل 10 دقائق.
  3. يمكن اتخاذ تدابير المياه وحاويات الطعام يدويًا.
  4. يتم استخدام أزرار "أعط الماء" و "العلف" لتزويد حيوانك الأليف بالطعام والماء.
  5. سيعرض الجزء السفلي من لوحة القيادة البث المباشر من وحدة الكاميرا إذا اتبعت إرشادات الخطوة السابقة بعناية.

ملاحظة: إذا كنت ترغب في تخصيص عدد المرات التي تفتح فيها حاوية الطعام عند التغذية ، افتح ملف "index.js" وقم بتغيير "القيمة" في السطر التالي من "3" إلى أي رقم من اختيارك:

إحضار (baseURL + '/ update / V1؟ value = 3') ؛

الخطوة السابعة: التحديات والحدود والخطط المستقبلية

التحديات

كانت التحديات الرئيسية التي واجهتنا في هذا المشروع تتعلق بتصميم آلية فتح / إغلاق حاوية الطعام وإنشاء رمز متزامن ثابت للتحكم في وحدة الغذاء وقياسها. أعتقد أننا جربنا ما لا يقل عن 4 إصدارات مختلفة حتى نشعر بالرضا. كان الشاغل الرئيسي هو الطعام الذي يسد الخروج. من أجل منع ذلك ، اخترنا تصميم Sledge-Hammer ، وبهذه الطريقة عندما نفتح الحاوية ، فإن ذيل "المطرقة" يكتسح الطعام باتجاه المخرج. علاوة على ذلك ، فإن استخدام أنبوب من جانبين جعل حياتنا أسهل بكثير أثناء بناء حاوية الطعام. هذا الكائن مثالي لوضع آلية الخروج على جانب واحد ، ومستشعر المسافة على الجانب الآخر لقياس محتواه.

حدود

في هذه المرحلة من المشروع ، توجد قيود قليلة على النظام:

  1. إنها ليست آلية بالكامل ، مما يعني أن تغذية المياه وسكبها يتم يدويًا عبر لوحة تحكم المراقبة دون أي جدولة ذكية (يمكن إضافتها في المستقبل أو تنفيذها بواسطتك!).
  2. تعمل لوحة القيادة محليًا من الكمبيوتر المحمول الخاص بك ، من أجل تسهيل الوصول إليها ، يمكن استضافتها على منصات شائعة مثل "Heroku".
  3. استخدمنا وحدة كاميرا بسيطة للغاية ، يمكن استبدالها بوحدة أكثر تعقيدًا لتمكين جودة صورة أفضل وإمكانية إضافة قناة اتصال مع حيوانك الأليف (باستخدام مكبر صوت).

خطط مستقبلية

إذا كان لدينا الوقت والميزانية لمواصلة تطوير هذا النظام ، فلدينا بعض الأفكار والجدول الزمني المحتمل في الاعتبار:

  1. إضافة نظام جدولة أوتوماتيكي لتغذية الحيوانات الأليفة - 2 ~ 3 أيام عمل.
  2. إنشاء موقع ويب لتمكين مستخدمي نظامنا من إنشاء لوحة تحكم مخصصة يتم استضافتها عبر الإنترنت ويمكن الوصول إليها من أي جهاز متصل - من شهر إلى شهرين من العمل.
  3. العمل على إصدار صناعي لهذا النظام ، مما يمكّن المزيد من أصحاب الحيوانات الأليفة من التحكم والتواصل بشكل أفضل مع حيواناتهم الأليفة عبر الإنترنت ، كان لدينا الكثير من الاهتمام من الأصدقاء الذين رأوا نتيجة هذا Instructable. لذلك ، إذا كان لديك شغف بالوقت للانتقال بالمشروع إلى المستوى التالي - فلديك الدعم الكامل!

نأمل أن تكون قد استمتعت بقراءة (ونأمل في بناء!) هذا المشروع:)

موصى به: