جدول المحتويات:
فيديو: قم بتوصيل Magicbit بـ Thingsboard: 3 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:36
في هذا المشروع ، سنرسل البيانات من أجهزة الاستشعار المتصلة بـ magicbit والتي يمكننا عرضها بصريًا على لوحة الأشياء.
اللوازم:
- ماجيكبيت
- مستشعر درجة الحرارة والرطوبة DHT11 (4 دبابيس)
الخطوة 1: القصة
مقدمة
إن ThingsBoard عبارة عن نظام أساسي مفتوح المصدر من جانب الخادم يسمح لك بمراقبة أجهزة إنترنت الأشياء والتحكم فيها. إنه مجاني للاستخدام الشخصي والتجاري ويمكنك نشره في أي مكان. إذا كانت هذه هي تجربتك الأولى مع النظام الأساسي ، فإننا نوصي بمراجعة صفحة ما هي الأشياء ودليل البدء.
سيسمح لك هذا التطبيق النموذجي بعرض بيانات الرطوبة / درجة الحرارة من مستشعر DHT11 باستخدام جهاز magicbit وواجهة ويب ThingsBoard.
تمت كتابة التطبيق الذي يعمل على جهاز Magicbit باستخدام ThingsBoard Arduino SDK وهو بسيط جدًا وسهل الفهم.
بمجرد إكمال هذا النموذج / البرنامج التعليمي ، سترى بيانات المستشعر على لوحة المعلومات التالية.
قم بزيارة الصفحة الرسمية لـ Thingsboard Demo وقم بالتسجيل.
بعد تسجيل الدخول في الشريط الجانبي الأيسر سترى الأجهزة. انقر فوق الأجهزة وأضف جهازًا جديدًا.
في علامة تبويب بيانات الاعتماد ، حدد علامة التبويب إضافة بيانات اعتماد واختر رمز الوصول من المربع المنسدل. يمكنك إما إضافة رمز الوصول الخاص بك أو تركه فارغًا لإنشاء رمز مميز تلقائيًا.
اضبط الجهاز على magicbit في الاسم المستعار. انتقل إلى علامة التبويب لوحة القيادة واستيراد لوحة القيادة.
اتبع الخطوات التالية في الصور لاستيراد لوحة القيادة. ابحث عن ملف JSON التجريبي المسمى "magicbit_temperature_humidity_demo_dashboard.json" في المرفقات.
قم بتوصيل بتك السحري بوحدة DHT11 على النحو التالي إلى الرقم 33.
في Arduino IDE ، قم بتنزيل المكتبات أعلاه.
ما يلي هو كود Arduino الذي ستستخدمه.
ملاحظة أنت بحاجة إلى تحرير الثوابت والمتغيرات التالية في الرسم التخطيطي:
- WIFI_AP - اسم نقطة الوصول الخاصة بك
- WIFI_PASSWORD - كلمة مرور نقطة الوصول
- TOKEN - خطوة تكوين $ ACCESS_TOKEN من ThingsBoard.
- THINGSBOARD_SERVER - عنوان ThingsBoard HOST / IP الذي يمكن الوصول إليه داخل شبكة wifi الخاصة بك. حدد demo.thingsboard.io إذا كنت تستخدم خادمًا تجريبيًا مباشرًا.
الخطوة 2: كود اردوينو
#include // DHT for Library library # include // WiFi control for ESP32 # include // ThingsBoard SDK # حدد DHTPIN 33 // ما هو الدبوس الرقمي الذي نرتبط به # حدد DHTTYPE DHT11 // DHT 11DHT dht (DHTPIN ، DHTTYPE) ؛ // الماكرو المساعد لحساب حجم المصفوفة # حدد COUNT_OF (x) ((sizeof (x) / sizeof (0 [x])) / ((size_t) (! (sizeof (x)٪ sizeof (0 [x]))))) // نقطة وصول WiFi # حدد WIFI_AP_NAME "4G" // "WIFI_AP" // كلمة مرور WiFi # حدد WIFI_PASSWORD "nevergiveup" // "WIFI_PASSWORD" // راجع https://thingsboard.io/docs/getting- start-guides / helloworld /// لفهم كيفية الحصول على رمز وصول # عرّف TOKEN "XZjQ26r9XJcsNkWGuASY" // "TOKEN" // مثيل خادم ThingsBoard. # عرّف THINGSBOARD_SERVER "demo.thingsboard.io" // معدل الباود لتصحيح الأخطاء التسلسلي #define SERIAL_DEBUG_BAUD 115200 // Initialize ThingsBoard clientWiFiClient espClient؛ // Initialize ThingsBoard مثيلThingsBoard tb (espClient)؛ // حالة وضع راديو Wifi = WL_IDLE_STATUS؛ // فترة إرسال بيانات درجة الحرارة / الرطوبة.int send_delay = 2000 ؛ millis_counter طويل بدون توقيع؛ باطل InitWiFi () {Serial.println ("الاتصال بـ AP …") ؛ // محاولة الاتصال بشبكة WiFi WiFi.begin (WIFI_AP_NAME ، WIFI_PASSWORD) ؛ while (WiFi.status ()! = WL_CONNECTED) {delay (500) ؛ Serial.print (".") ؛ } Serial.println ("متصل بـ AP") ؛} إعادة الاتصال باطل () {// Loop حتى نعيد الاتصال بالحالة = WiFi.status () ؛ إذا (الحالة! = WL_CONNECTED) {WiFi.begin (WIFI_AP_NAME ، WIFI_PASSWORD) ؛ while (WiFi.status ()! = WL_CONNECTED) {delay (500) ؛ Serial.print (".") ؛ } Serial.println ("متصل بـ AP") ؛ }} // إعداد applicationvoid setup () {// تهيئة المسلسل لتصحيح أخطاء Serial.begin (SERIAL_DEBUG_BAUD) ؛ WiFi.begin (WIFI_AP_NAME ، WIFI_PASSWORD) ؛ InitWiFi () ، // تهيئة مستشعر درجة الحرارة dht.begin () ؛} // حلقة حلقة التطبيق الرئيسية () {// أعد الاتصال بشبكة WiFi ، إذا لزم الأمر إذا (WiFi.status ()! = WL_CONNECTED) {إعادة الاتصال () ؛ إرجاع؛ } // أعد الاتصال بـ ThingsBoard ، إذا لزم الأمر إذا (! tb.connected ()) {// Connect to the ThingsBoard Serial.print ("Connecting to:")؛ Serial.print (THINGSBOARD_SERVER) ، Serial.print ("مع رمز مميز") ؛ Serial.println (رمز مميز) ؛ if (! tb.connect (THINGSBOARD_SERVER، TOKEN)) {Serial.println ("فشل الاتصال")؛ إرجاع؛ }} // تحقق مما إذا كان الوقت قد حان لإرسال درجة حرارة ورطوبة DHT11 إذا كان (millis () - millis_counter> send_delay) {Serial.println ("Sending data…")؛ // يحمّل القياس عن بُعد الجديد إلى ThingsBoard باستخدام MQTT. // راجع https://thingsboard.io/docs/reference/mqtt-api/#telemetry-upload-api // لمزيد من التفاصيل float h = dht.readHumidity () ؛ // قراءة درجة الحرارة على أنها مئوية (الافتراضي) float t = dht.readTemperature () ؛ if (isnan (h) || isnan (t)) {Serial.println ("Failed to read from DHT sensor!")؛ } else {Serial.print ("درجة الحرارة:")؛ Serial.print (t) ؛ Serial.print ("الرطوبة") ؛ Serial.println (ح) ؛ tb.sendTelemetryFloat ("درجة الحرارة" ، ر) ؛ tb.send قياس المسافة الطافية ("الرطوبة" ، ح) ؛ } millis_counter = مللي () ؛ // reset millis counter} // معالجة الرسائل tb.loop ()؛}
الخطوة 3: تصور البيانات
في الخادم التجريبي المباشر:
- تسجيل الدخول: اسم المستخدم التجريبي المباشر (البريد الإلكتروني)
- كلمة المرور: كلمة المرور التجريبية الحية
انظر الصفحة التجريبية الحية لمزيد من التفاصيل حول كيفية الحصول على حسابك.
انتقل إلى قسم "الأجهزة" وحدد موقع Magicbit ، وافتح تفاصيل الجهاز وانتقل إلى علامة التبويب "أحدث قياس عن بُعد". إذا تم تكوين كل شيء بشكل صحيح ، يجب أن تكون قادرًا على رؤية أحدث قيم "درجة الحرارة" و "الرطوبة".
بعد ذلك ، افتح قسم "Dashboards" ثم حدد موقع "magicbit_temperature_humidity_demo_dashboard" وافتحه. نتيجةً لذلك ، سترى مخططًا لسلسلة زمنية يعرض درجة الحرارة ومستوى الرطوبة (على غرار صورة لوحة القيادة في المقدمة).
موصى به:
قم بتوصيل Arduino Uno بـ ESP8266: 9 خطوات
قم بتوصيل Arduino Uno بـ ESP8266: مرحبًا! أنت على وشك قراءة دليل تفصيلي حول كيفية توصيل Arduino Uno بالإنترنت بنجاح باستخدام ESP8266 (ESP-01). إنه أيضًا أول برنامج Instructable لي على الإطلاق ، لذا احمل معي من فضلك! دعني أبدأ بالقول إن ESP8266 هو
قم بتوصيل وتشغيل شاشة مستشعر ثاني أكسيد الكربون مع NodeMCU / ESP8266 للمدارس ورياض الأطفال أو منزلك: 7 خطوات
قم بتوصيل وتشغيل شاشة مستشعر ثاني أكسيد الكربون مع NodeMCU / ESP8266 للمدارس أو رياض الأطفال أو منزلك: سأوضح لك كيفية إنشاء المكونات بسرعة & أمبير ؛ قم بتشغيل مستشعر CO2 حيث سيتم توصيل جميع عناصر المشروع بأسلاك DuPont. لن يكون هناك سوى 5 نقاط تحتاج إلى لحام ، لأنني لم أقم باللحام قبل هذا المشروع على الإطلاق
قم بتوصيل وتعديل الحلول المتصلة الخاصة بك باستخدام الهولوغرام نوفا و Ubidots: 9 خطوات
قم بتوصيل وتعديل حلولك المتصلة باستخدام الهولوغرام نوفا وأوبيدوتس: استخدم الهولوغرام نوفا لتعديل البنية التحتية. قم بإعداد الهولوغرام نوفا باستخدام Raspberry Pi لإرسال بيانات (درجة الحرارة) إلى Ubidots. في الدليل التالي ، سوف يوضح Ubidots كيفية إعداد صورة ثلاثية الأبعاد Nova باستخدام Raspberry Pi وعرض te
الشروع في العمل مع واجهة مستشعر I2C ؟؟ - قم بتوصيل MMA8451 باستخدام ESP32s: 8 خطوات
الشروع في العمل مع واجهة مستشعر I2C ؟؟ - واجهة MMA8451 الخاصة بك باستخدام ESP32s: في هذا البرنامج التعليمي ، ستتعلم كل شيء عن كيفية بدء تشغيل جهاز I2C (مقياس التسارع) وتوصيله والحصول عليه مع وحدة التحكم (Arduino ، ESP32 ، ESP8266 ، ESP12 NodeMCU)
قم بتوصيل RevPi Core + RevPi DIO بـ Ubidots: 8 خطوات
قم بتوصيل RevPi Core + RevPi DIO الخاص بك بـ Ubidots: Revolution Pi هو جهاز كمبيوتر صناعي مفتوح وقياسي ودائم يعتمد على Raspberry Pi مع تلبية معيار EN61131-2. مجهزة بوحدة حساب Raspberry Pi ، يمكن توسيع قاعدة RevPi الأساسية بسلاسة باستخدام