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

قم بتوصيل Magicbit بـ Thingsboard: 3 خطوات
قم بتوصيل Magicbit بـ Thingsboard: 3 خطوات

فيديو: قم بتوصيل Magicbit بـ Thingsboard: 3 خطوات

فيديو: قم بتوصيل Magicbit بـ Thingsboard: 3 خطوات
فيديو: Connect Your WisGateOS2 LoRaWAN Gateways To AWS IoT Core 2024, يونيو
Anonim
قم بتوصيل Magicbit الخاص بك إلى Thingsboard
قم بتوصيل Magicbit الخاص بك إلى Thingsboard

في هذا المشروع ، سنرسل البيانات من أجهزة الاستشعار المتصلة بـ 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" وافتحه. نتيجةً لذلك ، سترى مخططًا لسلسلة زمنية يعرض درجة الحرارة ومستوى الرطوبة (على غرار صورة لوحة القيادة في المقدمة).

موصى به: