ما الذي يجب أن نبنيه إنترنت الأشياء؟ إنترنت الأشياء الخاص بك على الأمازون في يوم واحد

للبدء في التعامل مع منصات إنترنت الأشياء (Internet of Things) ، توقفت بسبب عدم وجود جهاز إنترنت الأشياء الذي سيكون متوافقًا مع البروتوكولات وأساليب الوصول. ولكن عندما أدركت أنه يمكنك استخدام هاتف ذكي عادي كجهاز ، استغرق تنفيذ سلسلة العمل يومًا واحدًا.

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

مثل هذا النظام ، بالطبع ، يحمل قيمة عملية قليلة ، لكنه يسمح لك بفهم كيفية عمل كل شيء:

صورة

لماذا منصة الأمازون إنترنت الأشياء؟ ولماذا تحتاج إلى فهم كيفية عمل منصات إنترنت الأشياء؟

M2M - إنترنت الأشياء - إنترنت الأشياء


هناك المزيد والمزيد من أجهزة إنترنت الأشياء في العالم ، تتحدث كل من الوكالات التحليلية والإحصاءات العالمية عن هذا.

يمكننا أن نرى بوضوح أن المزيد والمزيد من الأنظمة متصلة بالإنترنت ويتم التحكم فيها تلقائيًا أو بواسطة أشخاص: منازل ذكية ، سيارات ، أجهزة يمكن ارتداؤها. والآن يتحدثون ليس فقط عن إنترنت الأشياء ، ولكن أيضًا عن إنترنت الأشياء (Internet of Everything) ، لأن لا تستخدم الأجهزة التي تتصل بالمنصات فقط في الأنظمة الصناعية ، ولكن أيضًا من قِبل الأشخاص.

لذلك ، نحن بحاجة إلى فهم مبادئ العمل بأنفسنا ، على الأقل حتى نفهم كيف يمكنك استخدام أجهزتك بفعالية أو ما هي حدود وفروق الأمان.

لماذا الأمازون؟


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

لماذا الهاتف الذكي وليس بعض IoT Starter Kit؟


عند الفحص الدقيق ، يحاكي الهاتف الذكي جهاز إنترنت الأشياء جيدًا:

  • لديها نظام Linux لتشغيل التطبيقات ؛
  • يوجد اتصال محمول بالإنترنت ؛
  • باستخدام البرنامج ، يمكنك محاكاة قراءات أجهزة الاستشعار.

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

اسمحوا لي أن أتخطى القسم بالمعايير والتحليلات وبحوث التسويق - في نهاية المقال ، سأقدم بعض الروابط ذات الصلة. أنا متحمس لفعل شيء مثير للاهتمام)

AWS IoT Platform


ترسم أمازون مخططًا واضحًا إلى حد ما لمنصتها:

صورة

هنا ، بشكل عام ، كل شيء واضح:

  • (1) هناك أجهزة تتفاعل مع منصة IoT باستخدام SDK.
  • (2) ترسل الأجهزة رسائل يتم التحقق منها بواسطة خدمة المصادقة والترخيص.
  • (3) تصل الرسائل إلى Device Gateway باستخدام بروتوكولات مختلفة ، ثم انتقل إلى معالج القواعد (4.1) ويتم نسخها (4.2) إلى Device Shadows.
  • (4.2) ظلال الجهاز هي أزواج رقمية تخزن الحالة الحالية للأجهزة المتوفرة دائمًا للتطبيقات. من ناحية أخرى ، في حالة عدم وجود اتصال بالجهاز ، ينفذ Device Shadow أوامر التحكم من التطبيقات ، وعند إعادة الاتصال ، يقوم بمزامنة الحالة الحالية مع الجهاز.
  • (4.1) وفقًا للبيانات المستلمة ، يقوم معالج القواعد بإجراءات محددة مسبقًا (5.1) ، على سبيل المثال ، يحفظ البيانات في قاعدة البيانات ، يرسل رسائل نصية قصيرة أو إخطار البريد الإلكتروني ، يستدعي HTTP API ، يرسل البيانات إلى نظام التحليلات ، إلخ.
  • (5.2) تستخدم التطبيقات هذه البيانات للتحكم في الأجهزة وإدارتها باستخدام واجهة برمجة تطبيقات AWS (6)
  • يتم تخزين المعلومات على جميع الأجهزة على منصة AWS IoT (7).

نبدأ في فهم ، المخطط معقد قليلاً:

صورة

تظهر:

وظائف - تنفيذ الإجراءات القياسية على الأجهزة ، على سبيل المثال ، تثبيت التطبيقات ، تحديث البرامج الثابتة ، إعادة تشغيل الأجهزة ، إلخ.
الموضوعات هي جوهر بروتوكول MQTT. يتم إرسال الرسائل من أجهزة إنترنت الأشياء إلى مواضيع محددة.
أدوار IAM - مستخدمو AWS نيابةً عن من يتم تنفيذ القواعد والذين لديهم حق الوصول إلى موارد AWS اللازمة.

القواعد تتكون من:

  • مرشح - مرشح الرسالة للمعالجة. تعيين كاستعلام SQL.
  • الإجراء - الإجراء المطلوب تنفيذه.
  • دور - واحد أو أكثر من أدوار IAM.

شهادة - يتم تحميلها على جهاز إنترنت الأشياء ، مع مصادقة المساعدة الخاصة بالأجهزة على نظام AWS. تتكون من:

  • شهادة جهاز X.509
  • المفتاح الخاص
  • شهادة الجذر AWS

السياسة - يتم إرفاق السياسات بالشهادات التي تحدد الإجراءات التي يمكن للجهاز القيام بها. سياسات تجيز الأجهزة.
تفاصيل خدمات AWS التي تتلقى معلومات من منصة IoT: خدمة الإشعارات التحليلات ، DB ، SNS.

نحن توصيل الجهاز


لن أقدم تعليمات كاملة حول توصيل جهاز IoT بمنصة Amazon: الشروع في العمل مع AWS IoT . ولكن لفهم نطاق المهمة ، سأذكر الخطوات التي يجب اتخاذها حتى يعمل المخطط:

  • قم بإنشاء جهاز my-iot-dev على النظام الأساسي
  • نحصل على شهادة الجهاز X.509 ، المفتاح الخاص ، المفتاح العمومي
  • الحصول على شهادة الجذر لمنصة AWS (Root CA لـ AWS IoT)
  • قم بإنشاء سياسة my-iot-dev-policy. بالنسبة إلى العروض التوضيحية الخاصة بنا ، نسمح بجميع الإجراءات: iot: *

صورة

  • أرفق سياسة بشهادة
  • قم بإرفاق الشهادة بالجهاز
  • نتيجةً لذلك ، تلقينا شهادة مع الجهاز والسياسة:

صورة

  • إنشاء قاعدة. ستتصل القاعدة بخدمة إعلام AWS SNS (خدمة الإشعارات البسيطة) لإرسال بريد إلكتروني. لذلك ، يجب أولاً إنشاء موضوع في AWS SNS (موضوع my-iot-dev-sns):

صورة

  • الآن نقوم بتهيئة ما سيقوم به هذا الموضوع بالضبط عند تلقي البيانات. للقيام بذلك ، قم بإنشاء اشتراك في الموضوع (اشترك في موضوع Amazon SNS) ، وأدخل عنوان البريد الإلكتروني الوجهة ، وانتظر خطاب التحقق ، وأكد البريد الإلكتروني.

صورة

أنشئ الآن القاعدة نفسها (my_iot_dev_rule) ، والتي ستدعو الموضوع الذي تم إنشاؤه:

  • Filter: SELECT * FROM 'my / dev-topic' - يتم تشغيل الفلتر عند تلقي أي رسالة في الموضوع باسم 'my / dev-topic' ؛
  • الإجراء: إرسال رسالة إلى موضوع SNS الذي تم إنشاؤه مسبقًا "arn: aws: sns: eu-central-1: 1219xxx34064: my-iot-dev-sns-topic"؛
  • دور IAM: إنشاء دور my-dev-بدور الوصول إلى موضوعات SNS.

صورة

  • يتم إنشاء جميع الكيانات المنطقية لجهازنا. الآن يمكنك اختبار أن المخطط يعمل من الناحية النظرية. للقيام بذلك ، تمتلك AWS أداة اختبار تتيح لك إرسال واستقبال رسائل مشابهة للأجهزة الحقيقية. نطلقه ونشترك في الموضوع (my / dev-topic) ونرسل "Hello World!" رد:

صورة

  • نتحقق من أن الرسالة "Hello World!" قد وصلت وخلص إلى أن الدائرة تعمل.

تكوين الهاتف الذكي


لقد حان الوقت لتهيئة جهاز إنترنت الأشياء ، والذي سيكون هاتفي الذكي. للقيام بذلك ، استخدم تعليمات AWS SDK JavaScript . لتحويل الهاتف الذكي إلى جهاز إنترنت الأشياء ، تحتاج إلى:

  • نسخ إلى الجهاز: المفتاح الخاص وشهادات X.509 و "Root CA for AWS" ؛
  • تثبيت Node.js و npm package manager ؛
  • تثبيت AWS SDK ؛
  • تثبيت وتشغيل برنامج الاختبار.

في حالتنا ، سيكون كل شيء أسهل قليلاً ، لأن أضع الشهادات و AWS SDK وبرنامج الاختبار على GitHub ويمكنك فقط استنساخ مستودع IoT-Sensors . إذا أراد شخص ما استخدام برنامج الاختبار الخاص بي ، فسيتعين عليه وضع شهاداته في دليل / IoT / certs والكتابة في ملف / server / src / services / IoT-AOI-Server الفعلي لـ Rest API Endpoint الفعلي للجهاز:

device = deviceModule({ … host: 'a2lqo1xxx4zydi-ats.iot.eu-central-1.amazonaws.com', … }) 

يتم أخذ Rest API Endpoint من إعدادات الجهاز:

صورة

إذا كنت ترغب في تجربة شيء قياسي ، فيمكنك استخدام برامج الاختبار من AWS SDK.

Android هو نفس Linux ، ولكن مع حدوده ، لذلك لتشغيل تطبيقات JS ، تحتاج إلى تثبيت محطة طرفية خاصة ، على سبيل المثال ، Termux .

للتطوير الأولي لـ Termux ، يوجد عدد من المقالات ، على سبيل المثال: تشغيل تطبيق NodeJS على Android . ولكن بشكل عام ، بعد تثبيت Termux ، تحتاج إلى تنفيذ بعض الأوامر السحرية فقط:

 git clone https://github.com/AlexeySushkov/IoT-Sensors.git 

تركيب الخادم


 cd ~/IoT-Sensors/server npm install npm start 

إذا سارت الأمور على ما يرام ، فسيظهر الخط في الجهاز:
بدأ الخادم على المنفذ: 8081

يعيش يبدو مثل هذا:

صورة

تثبيت العميل


 cd ~/IoT-Sensors/client npm install npm run serve 

إذا سارت الأمور على ما يرام ، فسيظهر الخط في الجهاز:
التطبيق يعمل في الميناء: 8080

بعد ذلك ، في متصفح الهاتف الذكي ، أدخل: http: // localhost: 8080

وسيظهر تطبيق اختبار على الشاشة:

صورة

اضغط على زر "INIT DEV". هذا يصادق ويصدق جهاز إنترنت الأشياء على منصة AWS IoT. إذا نجحت ، تصبح الحالة "Init OK".

بعد ذلك ، ندخل قيم مجسات درجة الحرارة والرطوبة والضغط ، على سبيل المثال:
درجة الحرارة: 23
الرطوبة: 65
الضغط: 787

واضغط على زر "إرسال البيانات".

صورة

بعد ذلك ، يضيف التطبيق طابعًا زمنيًا ويرسل البيانات في شكل رسائل MQTT إلى الموضوع "my / dev-topic". يتلقى النظام الأساسي لـ IoT رسالة ويقوم بتنشيط قاعدة ترسل رسالة إلى خدمة إعلام AWS SNS ، والتي ترسل رسالة بريد إلكتروني تحتوي على البيانات المستلمة بتنسيق JSON:

 {"time":"Mon, 30 Sep 2019 13:54:52 GMT", "temperature":"23", "humidity":"65", "pressure":"787"} 

إذا تم إرسال الرسالة بنجاح ، فستتغير الحالة إلى: "نشر موافق" ويتم إرسال بريد إلكتروني إلى البريد:

صورة

يحتوي نظام AWS IoT على نظام مراقبة يُظهر عدد الاتصالات والرسائل من أجهزة إنترنت الأشياء والإحصاءات المتعلقة بالبروتوكولات وأنواع الرسائل وما إلى ذلك:

صورة

حتى الآن كل شيء يعمل من أجل حقيقي!

استنتاج


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

الأجهزة

  • كيف تتم إضافة الأجهزة إلى النظام؟
  • كيف يتم ضمان مصادقة الجهاز والترخيص؟
  • هل يحدث تشفير البيانات المرسلة إلى النظام الأساسي؟

منصة

  • كيف يتم حماية المفاتيح والشهادات على المنصة؟
  • كيف يتم تشكيل القواعد؟
  • ما الإجراءات التي يمكن أن تتبعها القواعد؟
  • كيف تتم مراقبة الأجهزة وإدارتها؟
  • هل هناك أي ظلال (الزوجي الرقمي) من الأجهزة على النظام الأساسي؟
  • ما هي التقارير والتحليلات المتاحة؟

تفاعل

  • ما البروتوكولات المستخدمة لتوصيل الأجهزة؟
  • كيف يتم تفاعل التطبيقات مع الجهاز؟
  • كيف يتم اختبار منطق التفاعل؟

كما وعدت ، سأقدم بعض الروابط ذات الصلة بالمعايير والتحليلات:

معايير إنترنت الأشياء


والمثير للدهشة أن عمالقة التقييس ( ISO / IEC و IEEE و ITU-T ) قد فقدوا الاهتمام في إنترنت الأشياء بعد عام 2016. إنهم ، بالطبع ، يفعلون شيئًا ما ، لكن بطريقة ما دون وميض). أصدرت NIST أيضًا دراسة شبكات الأشياء ، ولكن بعد عام 2016 ، لم يكن هناك شيء أكثر إثارة للاهتمام.

تبدو معاهد الاتصالات السلكية واللاسلكية أفضل ، وهذا ليس مفاجئًا منذ ذلك الحين دون الاتصال ، إنترنت الأشياء ليس إنترنت الأشياء. TM-Forum ، تحت مظلته ، يجمع حالات ومشاريع IoE والنظم الإيكولوجية الرقمية ، ETSI أسهل وانضم إلى OneM2M .

والآن نأتي إلى منظمتين تم تشكيلهما مؤخرًا نسبيًا ، ولكنهما حددنا بالفعل الاتجاه العالمي لتطوير إنترنت الأشياء:

OneM2M

OneM2M هي جمعية لمنظمات التقييس وشركات الاتصالات والمصنعين من مختلف البلدان. لديهم العشرات من الوثائق ذات الصلة في المجال العام التي تسخن الروح مع النماذج المعمارية والرسوم البيانية الوظيفية .

لجنة التحقيق المستقلة

IIC (اتحاد الإنترنت الصناعي) - وهي منظمة لتوحيد معايير الإنترنت الصناعية للأشياء - وهي بشكل أساسي جهات تصنيع البرامج والأجهزة . كما يطلقون أبنية مرجعهم. بشكل عام ، هناك حيث أن ننظر إلى العالم المثالي! )

تحليلات إنترنت الأشياء


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



إنها البداية فقط!

Source: https://habr.com/ru/post/ar472216/


All Articles