فهرست مطالب:

Magicbit خود را به Thingsboard وصل کنید: 3 مرحله
Magicbit خود را به Thingsboard وصل کنید: 3 مرحله

تصویری: Magicbit خود را به Thingsboard وصل کنید: 3 مرحله

تصویری: Magicbit خود را به Thingsboard وصل کنید: 3 مرحله
تصویری: راه اندازی ThingsBoard و پایش داده های محیطی با میکروپایتون 2024, سپتامبر
Anonim
Magicbit خود را به Thingsboard وصل کنید
Magicbit خود را به Thingsboard وصل کنید

در این پروژه ما قصد داریم داده هایی را از سنسورهای متصل به magicbit ارسال کنیم که می توانیم آنها را به صورت تصویری روی صفحه نمایش نمایش دهیم.

تدارکات:

  • Magicbit
  • سنسور دما و رطوبت DHT11 (4 پین)

مرحله 1: داستان

داستان
داستان
داستان
داستان
داستان
داستان
داستان
داستان

معرفی

ThingsBoard یک پلتفرم منبع باز در سمت سرور است که به شما امکان می دهد دستگاه های اینترنت اشیا را کنترل و کنترل کنید. این برنامه هم برای استفاده شخصی و هم برای تجارت رایگان است و می توانید آن را در هر مکانی مستقر کنید. اگر این اولین تجربه شما با این پلت فرم است ، توصیه می کنیم صفحه آنچه در صفحه صفحه و راهنمای شروع کار است را مرور کنید.

این برنامه نمونه به شما امکان می دهد داده های رطوبت/دما را از حسگر DHT11 با استفاده از دستگاه magicbit و رابط کاربری وب ThingsBoard نمایش دهید.

برنامه ای که بر روی دستگاه Magicbit اجرا می شود با استفاده از ThingsBoard Arduino SDK نوشته شده است که بسیار ساده و قابل درک است.

پس از تکمیل این نمونه/آموزش ، داده های حسگر خود را در داشبورد زیر مشاهده خواهید کرد.

از صفحه رسمی Thingsboard Demo دیدن کرده و ثبت نام کنید.

پس از ورود به سیستم در نوار سمت چپ ، دستگاه ها را مشاهده خواهید کرد. روی دستگاه ها کلیک کنید و دستگاه جدیدی اضافه کنید.

در برگه اعتبارنامه ، زبانه افزودن اعتبارنامه را علامت زده و از منوی کشویی Access Token را انتخاب کنید. یا می توانید رمز دسترسی خود را اضافه کنید یا برای ایجاد خودکار توکن خالی بگذارید.

دستگاه را با نام مستعار روی magicbit تنظیم کنید. به برگه داشبورد بروید و داشبورد را وارد کنید.

برای وارد کردن داشبورد مراحل زیر را در تصاویر دنبال کنید. فایل نمایشی JSON به نام "magicbit_temperature_humidity_demo_dashboard.json" را در پیوست ها پیدا کنید.

بیت جادویی خود را با ماژول DHT11 به شکل زیر به پین 33 وصل کنید.

در Arduino IDE کتابخانه های بالا را بارگیری کنید.

در زیر کد آردوینو است که از آن استفاده خواهید کرد.

توجه شما باید ثابتها و متغیرهای زیر را در طرح ویرایش کنید:

  • WIFI_AP - نام نقطه دسترسی شما
  • WIFI_PASSWORD - گذرواژه نقطه دسترسی
  • TOKEN - $ ACCESS_TOKEN از مرحله پیکربندی ThingsBoard.
  • THINGSBOARD_SERVER - آدرس ThingsBoard HOST/IP که در شبکه wifi شما قابل دسترسی است. اگر از سرور نمایشی زنده استفاده می کنید demo.thingsboard.io را مشخص کنید.

مرحله 2: کد آردوینو

#شامل // DHT برای کتابخانه کتابخانه#شامل // کنترل WiFi برای ESP32#شامل // ThingsBoard SDK#define 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.#define THINGSBOARD_SERVER "demo.thingsboard.io" // نرخ Baud برای سریال اشکال زدایی #deerine SERIAL_DEBUG_BAUD 115200 // Initialize ThingsBoard clientWiFiClient espClient؛ // Initialize ThingsBoard exampleThingsBoard tb (espClient)؛ // وضعیت وضعیت رادیو Wifi = WL_IDLE_STATUS؛ // مدت ارسال داده دما/رطوبت ؛ unsigned long millis_counter؛ void InitWiFi () {Serial.println ("اتصال به AP …")؛ // تلاش برای اتصال به شبکه WiFi WiFi.begin (WIFI_AP_NAME ، WIFI_PASSWORD) ؛ while (WiFi.status ()! = WL_CONNECTED) {تأخیر (500)؛ Serial.print (".") ؛ } Serial.println ("متصل به AP")؛} اتصال مجدد باطل () {// حلقه تا زمانی که دوباره وصل نشویم وضعیت = WiFi.status ()؛ if (وضعیت! = WL_CONNECTED) {WiFi.begin (WIFI_AP_NAME ، WIFI_PASSWORD) ؛ while (WiFi.status ()! = WL_CONNECTED) {تأخیر (500)؛ Serial.print (".") ؛ } Serial.println ("متصل به AP") ؛ }} // Set a applicationvoid setup () {// مقداردهی اولیه سریال برای اشکال زدایی Serial.begin (SERIAL_DEBUG_BAUD) ؛ WiFi.begin (WIFI_AP_NAME ، WIFI_PASSWORD) ؛ InitWiFi () ؛ // مقداردهی اولیه سنسور دما dht.begin ()؛} // حلقه loopvoid برنامه اصلی () {// در صورت نیاز درصورت نیاز مجدداً به WiFi متصل شوید (WiFi.status ()! = WL_CONNECTED) {اتصال مجدد ()؛ برگشت؛ } // در صورت نیاز در صورت نیاز (! tb.connected ()) {// به ThingsBoard Serial.print وصل شوید ("اتصال به:") ؛ Serial.print (THINGSBOARD_SERVER) ؛ Serial.print ("با رمز") ؛ Serial.println (TOKEN) ؛ if (! tb.connect (THINGSBOARD_SERVER، TOKEN)) {Serial.println ("اتصال ناموفق بود")؛ برگشت؛ }} // بررسی کنید آیا زمان ارسال دما و رطوبت DHT11 در زمان (millis ()-millis_counter> send_delay) {Serial.println ("ارسال داده ها …") است یا خیر. // تله متری جدید را با استفاده از MQTT در ThingsBoard بارگذاری می کند. // برای اطلاعات بیشتر به https://thingsboard.io/docs/reference/mqtt-api/#telemetry-upload-api // مراجعه کنید float h = dht.readHumidity ()؛ // دما را به صورت سانتیگراد (پیش فرض) بخوانید t = dht.readTemperature ()؛ if (isnan (h) || isnan (t)) {Serial.println ("از سنسور DHT خوانده نشد!") ؛ } else {Serial.print ("دما:")؛ Serial.print (t)؛ Serial.print ("رطوبت") ؛ Serial.println (h)؛ tb.sendTelemetryFloat ("دما" ، t) ؛ tb.sendTelemetryFloat ("رطوبت" ، ساعت) ؛ } millis_counter = millis ()؛ // reset millis counter} // پردازش پیامها tb.loop ()؛}

مرحله 3: تجسم داده ها

تجسم داده ها
تجسم داده ها

در سرور نمایشی زنده:

  • ورود: نام کاربری زنده (نمایشی) شما (ایمیل)
  • رمز عبور: گذرواژه نمایشی زنده شما

برای اطلاعات بیشتر در مورد نحوه دریافت حساب خود ، به صفحه نمایشی زنده مراجعه کنید.

به بخش "دستگاه ها" بروید و "Magicbit" را پیدا کنید ، جزئیات دستگاه را باز کرده و به برگه "آخرین تله متری" بروید. اگر همه چیز به درستی پیکربندی شده باشد ، باید بتوانید آخرین مقادیر "دما" و "رطوبت" را مشاهده کنید.

پس از آن ، بخش "Dashboard" را باز کرده سپس "magicbit_temperature_humidity_demo_dashboard" را پیدا کرده و باز کنید. در نتیجه ، نمودار سری زمانی را مشاهده خواهید کرد که سطح دما و رطوبت را نشان می دهد (مشابه تصویر داشبورد در مقدمه).

توصیه شده: