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

تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org: 4 خطوات
تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org: 4 خطوات

فيديو: تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org: 4 خطوات

فيديو: تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org: 4 خطوات
فيديو: charts اختصار الرسوم البيانية فى الاكسل 2024, يوليو
Anonim
تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org
تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org
تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org
تسجيل البيانات ورسم رسم بياني عبر الإنترنت باستخدام NodeMCU و MySQL و PHP و Chartjs.org

يصف هذا Instructable كيف يمكننا استخدام لوحة Node MCU لجمع البيانات من أجهزة استشعار متعددة ، وإرسال هذه البيانات إلى ملف PHP مستضاف والذي يضيف البيانات بعد ذلك إلى قاعدة بيانات MySQL. يمكن بعد ذلك عرض البيانات عبر الإنترنت كرسم بياني باستخدام chart.js.

ستكون المعرفة الأساسية بـ PHP و MySQL مطلوبة لهذا المشروع وستحتاج إلى الوصول إلى استضافة الويب مع هذه الإعدادات لتتمكن من إنشاء وعرض الرسوم البيانية الخاصة بك. أفترض أيضًا أن لديك معرفة أساسية باستخدام لوحة Node MCU وتحميل الرسومات عليها. (أستخدم Arduino IDE لهذا)

الخطوة 1: بناء الدائرة

بناء الدائرة
بناء الدائرة
بناء الدائرة
بناء الدائرة
بناء الدائرة
بناء الدائرة

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

الخطوة 2: قم بتحرير وتحميل Sketch إلى Node MCU

استخدم هذا الملف المرفق.ino. ستحتاج إلى تعديل هذا باستخدام اسم شبكة WiFi وكلمة المرور الخاصة بك حتى تتمكن Node MCU من الاتصال بشبكتك الخاصة.

في الجزء السفلي من هذا الرسم التخطيطي للسطر "تأخير (60000) ؛" يعطي تأخيرًا دقيقًا بين قراءات المستشعر ولكن يمكن تعديله ليناسب متطلباتك الخاصة. أوصي بترك 10 ثوانٍ على الأقل للسماح بالاتصال بملف "updater.php" في كل مرة.

سيكون عليك أيضًا تعديل المسار إلى المكان الذي ستستضيف فيه ملفي.php وملفي جافا سكريبت المطلوبين. يمكنك تنزيلها في الخطوة التالية.

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

قم بإنشاء قاعدة بيانات MySql الخاصة بك. قم بإنشاء جدول يسمى "temp_light" (يمكنك تغيير هذا ولكن ستحتاج إلى تحرير ملفي php لتعكس أي تغييرات تقوم بها). أعط الجدول أربعة حقول. حقل زيادة تلقائي أساسي. حقل عدد صحيح يسمى "temp" ، وحقل عدد صحيح يسمى "light" وحقل يسمى "date_time" والذي سيكون طابعًا زمنيًا وقيمة افتراضية "CURRENT_TIMESTAMP"

الآن قم بتنزيل ملف zip المرفق وفك ضغطه. سيعطيك هذا ملفي php ومجلد يسمى "scripts" يحتوي على ملفات.js التي حصلت عليها من chartjs.org. لا يلزم تحرير ملفي.js ويجب استضافة مجلد "البرامج النصية" في نفس الموقع مثل ملفي php. سيحتاج كل من ملفي php إلى التحرير باستخدام اسم قاعدة البيانات الخاص بك وكلمة المرور والمضيف I. P. عنوان.

في ملف index.php ، سترى السطر 50: $ Adjust_temp = ($ temp * 0.0623) ؛

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

استضف الآن ملفات php ومجلد "scripts" الذي يحتوي على ملفي js معًا في نفس الدليل. تصفح إلى هذا الدليل وسترى الرسم البياني الخاص بك مع البيانات المرسلة من لوحة Node MCU الخاصة بك.

الخطوة 4: النتيجة النهائية

لقد صنعت هذا المشروع في الأصل منذ حوالي عامين ، لكنني لم أتمكن من كتابة تعليمات حوله حتى الآن. يمكنك رؤية الرسم البياني الذي تم إنشاؤه بواسطة الاختبار الخاص بي هنا:

الارتفاع الكبير في الرسم البياني هو المكان الذي تشرق فيه الشمس عبر النافذة على جهازي الاستشعار وكان التراجع البطيء مرة أخرى مع خروج الشمس ببطء عن الأنظار.

موصى به: