كيفية تشغيل Grafana مع DeviceHive

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

البيانات

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

يمكن استخدام كلا هذين الكيانين لرسم مخططات أو عرض نص ثابت أو مقياس أو جدول أو أي مكونات Grafana أخرى. سننشئ في هذه المقالة إعلامات باستخدام برنامج DeviceHive الثابت الخاص بشريحة ESP8266. تسمح هذه البرامج الثابتة للرقاقة بالاتصال مباشرةً بخادم DeviceHive باستخدام البروتوكول الخاص به ولديه الكثير من الأوامر الموثقة التي يمكن إصدارها من جانب الخادم.

إنشاء إعلامات باستخدام البرامج الثابتة ESP8266

تتوفر الثنائيات للبرنامج الثابت DeviceHive هنا. قم بتنزيل أحدث إصدار وفلاش هذه البرامج الثابتة على الشريحة الخاصة بك. يحتوي أرشيف الإصدار على وثائق حول كيفية القيام بذلك ، ولكن إذا كان لديك لوحة تشبه nodemcu ، فأنت تحتاج فقط إلى توصيل اللوحة عبر كابل microUSB بالكمبيوتر وتشغيل "esp-flasher" المستخدم من أرشيف الإصدار لـ نظام التشغيل الخاص بك وانتظر حتى تومض اللوحة. بعد وميض اللوحة ، هناك حاجة لتهيئة الشريحة التي يجب أن تستخدمها شبكة Wi-Fi وخادم DeviceHive وبيانات الاعتماد. هناك طريقتان للقيام بذلك: استخدام محطة تشبه posix مع استخدام "esp-terminal" أو لاسلكيًا كما هو موضح هنا.

تتوفر خدمة ملعب مجانية ، والتي يمكن استخدامها مجانًا لتجربة خادم DeviceHive. بعد توصيل الشريحة الخاصة بك بالخادم أو الملعب الخاص بك ، انتقل إلى لوحة إدارة الخادم ، وابحث عن جهاز ESP8266 في قائمة الأجهزة وأصدر أمر "adc / int" مع المعلمات ‘{" 0 ": 500} '.

يؤدي هذا الأمر إلى قيام esp8266 بالإبلاغ عن كل 500 مللي ثانية من الجهد الكهربي لإدخال ADC # 0 (يحتوي ESP8266 فقط). بعد التبديل إلى "الإشعارات" ، يجب أن تكون هناك شاشة مثل:

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

تثبيت المكون الإضافي DeviceHive Grafana على Grafana

يمكن استخدام Grafana كخدمة محلية أو كخدمة مستضافة. لتثبيت Grafana محليًا ، يرجى الرجوع إلى "الوثائق الرسمية. تركيب جرافانا ".

يمكنك العثور على كيفية تثبيت المكونات الإضافية في "الوثائق الرسمية. تثبيت البرنامج المساعد ".

لتثبيت مصدر بيانات DeviceHive عبر grafana-cli ، يمكنك استخدام الأمر التالي:

تقوم الإضافات $ grafana-cli بتثبيت مصدر بيانات devicehive-devicehive

إذا كنت ترغب في تثبيت المكون الإضافي يدويًا ، فيجب عليك تنفيذ الخطوات التالية:

المتطلبات الأساسية ، يجب تثبيت هذه الحزم:

  • غرافانا> = 4.6
  • NodeJs> = 8 (اختياري)
  • NPM> = 5 (اختياري)
  • Grunt (npm install -g grunt) (اختياري)

كما يجب أن يكون لديك أذونات لنسخ البيانات إلى مجلد الإضافات (يمكنك تعيينها في grafana.ini في المسارات> الإضافات).

  1. استنساخ هذا الريبو إلى مجلد الإضافات - git clone https://github.com/devicehive/devicehive-grafana-datasource.git؛
  2. الخطوات التالية اختيارية (في حالة الرغبة في إعادة إنشاء رمز مصادر مصدر البيانات):
    2.1 الذهاب إلى مجلد - CD devicehive-grafana-datasource ؛
    2.2 تثبيت جميع الحزم - تثبيت npm ؛
    2.3 بناء البرنامج المساعد - بناء تشغيل npm؛
  3. أعد تشغيل خادم Grafana
  4. فتح غرافانا في المتصفح.
  5. افتح القائمة الجانبية بالنقر فوق أيقونة Grafana في الرأس العلوي ؛
  6. في القائمة الجانبية ، انقر فوق مصادر البيانات ؛
  7. انقر على + إضافة مصدر البيانات في الرأس العلوي ؛
  8. حدد DeviceHive من القائمة المنسدلة "النوع" ؛
  9. تكوين مصدر البيانات.

بعد التثبيت ، ستتمكن من رؤية مكون مصدر بيانات DeviceHive في قائمة المكونات الإضافية المثبتة (انظر الصورة أدناه).

مضيفا جرافانا مصدر البيانات

لإضافة مصدر بيانات DeviceHive ، يجب عليك تنفيذ الخطوات التالية:

  1. افتح القائمة الجانبية بالنقر فوق أيقونة Grafana في الرأس العلوي ؛
  2. في القائمة الجانبية ، انقر فوق مصادر البيانات ؛
  3. انقر على + إضافة مصدر البيانات في الرأس العلوي ؛
  4. حدد DeviceHive من القائمة المنسدلة "النوع" ؛

ننظر إلى الصورة أدناه:

لتكوين مصدر بيانات DeviceHive ، يجب عليك ملء الحقول التالية:

عنوان URL الخاص بالخادم (هو المسار إلى خادم DeviceHive WebSocket. بالنسبة للملعب هذا هو ws: //playground.devicehive.com/api/websocket)
معرف الجهاز (المعرف الفريد لجهاز DeviceHive)
تسجيل الدخول / كلمة المرور أو AccessToken - أوراق اعتماد لتمرير المصادقة

أيضًا ، يمكنك تحديد RefreshToken للتحديث التلقائي في AccessToken

في الصورة أدناه ، يمكنك ملاحظة سير عمل التكوين:

بعد إضافة مصدر بيانات DeviceHive وتكوينه ، يجب أن يكون موجودًا في قائمة مصدر البيانات كما في الصورة أدناه:

إنشاء لوحة معلومات جديدة

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

في هذه المقالة سوف نعرض أمثلة على لوحة Graph ، لذلك ، انقر فوق الزر Graph:

بعد ذلك ، ستتمكن من رؤية المخطط الخطي على لوحة القيادة:

عرض الإخطارات / الأوامر مع الرسم البياني Grafana

الإشعارات والأوامر هي كيانات DeviceHive:
الأوامر: تمثل رسالة أرسلها العملاء للأجهزة
الإخطار: يمثل رسالة مرسلة بواسطة الأجهزة للعملاء

تبعًا للإعدادات الافتراضية ، توفر رسالة الإعلام أو الأوامر الحقل المسمى "المعلمات" الذي يمكن للمستخدم من خلاله تمرير بياناته الخاصة.

في بداية هذه المقالة ، قمنا بتكوين جهاز ESP8266 لإرسال إشعارات مع البيانات التي تمثل الحالة على التماثلية رقم 0 للرقاقة. في الصورة أدناه ، يمكنك ملاحظة كيفية تكوين لوحة الرسم البياني Grafana لجعلها تظهر البيانات على المخطط الخطي:

عرض التعليقات التوضيحية على الرسم البياني لـ Grafana

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

توضح الصورة أدناه كيفية تكوين التعليقات التوضيحية التي يدعمها مصدر بيانات DeviceHive.

ضبط الرسم البياني المتقدم

بعد النقر على زر "إضافة محول" ، ستتمكن من تحديد محول.
المحول هو الوظيفة البسيطة التي تحول القيمة بطريقة ما.

في الوقت الحالي ، تدعم مصادر بيانات DeviceHive الأنواع التالية من المحولات:

  • النطاق - يتضاعف حسب قيمة معينة
  • إزاحة - يضيف قيمة معينة
  • محول وحدة - يحول القيمة بين وحدات مختلفة من أنواع القياس المذكورة أدناه:
  • درجة الحرارة (‘c '- Celsius ،' f '- فهرنهايت ،‘ k' - Kelvin)
  • الطول ('متر' - متر ، 'ميل' - ميل ، 'يارد' - الفناء ، 'قدم' - قدم ، 'بوصة' - بوصة
  • الوزن ("كيلوغرام" - كيلوغرام ، "رطل" - الجنيه ، "أوقية" - أوقية)
  • المجلد ('لتر' - لتر ، 'جال' - جالون ، 'نقطة' - نصف لتر)

يظهر مثال على هذه الوظيفة في الصورة أدناه.

خاتمة

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

كتب بالتعاون مع ايجور ترامبوفيتسكي ، مطور أول في DeviceHive.