اینترنت اشیا IOT

معرفی ۴ پلتفرم اینترنت اشیا و راهنمای انتخاب برای پروژه‌ها

iot-platform-for-internet-of-things-digispark
نوشته شده توسط اروند طباطبایی

در مبحث اینترنت اشیا با تکنولوی‌ها و سخت افزارهای مختلفی در ارتباط هستیم. قبل از اینکه راجع به انتخاب پلتفرم توضیح بدهم، لازم است بدانیم که پلتفرم چیست. سناریو را به این صورت در نظر می‌گیریم. سنسورها از طریق یک برد امبدد مانند آردوینو یا ESP8266 اطلاعات را از محیط دریافت می‌کنند. این اطلاعات به تنهایی کاربردی ندارند. در ابتدای امر بایستی به سرور منتقل شوند. پس از آن در سرور ذخیره شوند، سپس اقدامات تحلیل و visualization روی آن‌ها صورت گیرد. عملیات دسته بندی و دریافت اطلاعات از سنسورها و سخت افزارها توسط پلتفرم صورت می‌گیرد. چند پلتفرم کاربردی در حوزه اینترنت اشیا را معرفی خواهم کرد. در ادامه با مرجع تخصصی آموزش اینترنت اشیا به زبان فارسی، دیجی اسپارک همراه باشید.

 


پلفترم اینترنت اشیا IoT Platform


پلتفرم مجموعه‌ای از خدمات مورد نیاز برای پیاده سازی اینترنت اشیا می‌باشد. بازار پلتفرم‌ها در حال حاضر مشابه بازار موتورهای جستجو در دهه ۹۰ میلادی است. رقابت زیاد و بازار نوپا یکی از دلایل این تشبیه است. بنابراین با توجه به امکانات امروزی، بی دلیل نیست اگر هر روز و هر ماه شاهد پلتفرم‌های جدید باشبم. به صورت کلی پلتفرم اینترنت اشیا IoT Platform نقش بسیار مهمی در معماری اینترنت اشیا دارد. یک سناریو اجرا شده از اینترنت اشیا را در نظر بگیرید، دستگاه‌های متصل شده به همدیگر، اطلاعاتشان را روی پلتفرم بر بستری ابری ارسال می‌کنند. پلتفرم IoT اطلاعات را (معمولا در فضای ابری) ذخیره کرده و از آن‌ها جهت ایجاد نمودار استفاده می‌کند. به عبارت دیگر، یک سرویس ابری اینترنت اشیا مانند PaaS عمل می‌کنند. اگر معنی این عبارت را نمی‌دانید، در بخش نظرات همین پست سوال بپرسید. این PaaS سرویس‌های کاربردی مهمی را ارایه می‌دهد. از جمله امکان ارتباط سخت افزارها به یک سرویس ابری مشترک جهت تحلیل و بررسی اطلاعات می‌باشد.

 


نیازهای پلتفرم IoT Platform


از نطر من به صورت عمومی یک پلتفرم اینترنت اشیا باید حداقل امکانات زیر را ارایه بدهد.

  • دریافت اطلاعات
  • تبدیل و انتقال اطلاعات
  • امکان ساخت داشبوردهای مختلف
  • امکان تعریف قوانین پایه در معماری IoT
  • مدیریت سخت افزارها از جمله انواع بردها
  • تضمین امنیت در تبادل و ذخیره اطلاعات دریافتی
  • سازگاری با انواع پلتفرم‌ها جهت تبادل و دریافت اطلاعات

 

درک هر کدام از این بخش‌ها نیازمند دانستن پیش نیازهای دیگری خواهد بود. کلیه این موارد در دوره بوت کمپ اینترنت اشیا معرفی و توضیح داده خواهند شد. در بخش اول منظور از دریافت اطلاعات توسط پلتفرم اینترنت اشیا، امکان دریافت اطلاعات از انواع بردها می‌باشد. بردهایی از جمله آردوینو Arduino یا رزبری پای Raspberry Pi یا برد ESP8266 و… مد نظر می‌باشند. در ادامه چند پلتفرم ساده جهت ایجاد پروژه‌های اینترنت اشیا را معرفی می‌کنم. ترتیب اولویت هم در این خصوص وجود ندارد.

 


معرفی چند پلتفرم IoT Platform


پلتفرم Google IoT Cloud

پلتفرم اینترنت اشیا گوگل - دیجی اسپارک

این پلتفرم یکی از جذاب‌ترین و پرکاربردترین پلتفرم IoT می‌باشد. گوگل یکی از بزرگترین شرکت‌ها در دنیای دیجیتال می‌باشد. بدون شک تمامی سرویس‌های گوگل کاربردی بوده و سرعت به روزرسانی بسیار زیادی دارند. ابزارهای گسترده زیادی در این پلتفرم برای مدیریت سمت سخت افزار و سمت سرور ارایه می‌شوند. دستگاه‌های متصل شده به این پلتفرم از سرویس Pub/Sub جهت انتشار اطلاعات می‌توانند استفاده کنند. نقطه قوت در پلتفرم Google IoT Cloud امکان استفاده از دیگر سرویس‌ها قدرتمند گوگل در این پلتفرم می‌باشد. از جمله سرویس BigQuery که منحصرا برای تحلیل دیتاهای حجیم طراحی شده است. حتی امکان افزودن یادگیری ماشینی به این اطلاعات هم وجود دارد. همانند دیگر سرویس‌های گوگل هم این سرویس دارای مخازن اطلاعاتی کاربردی از جمله فیلم و متن می‌باشد. دلایل زیادی برای استفاده از یک سرویس کامل و حرفه‌ای وجود دارند. ولی متاسفانه این سرویس کاربردی هم همانند سرویس‌های کاربردی دیگری از جمله Google Business هم در ایران کارایی نخواهند داشت.

 

پلتفرم AWS IoT Core

پلتفرم اینترنت اشیا AWS IoT Core آمازون - دیجی اسپارک

پلتفرم اینترنت اشیا بربستر سرویس ابری آمازون می‌باشد. سرویس AWS یک سرویس ابری بسیار کاربردی از سمت آمازون می‌باشد. هسته پلتفرم اینترنت اشیا آمازون به این بستر پایبند می‌باشد. مهم‌ترین نقطه قوت این پلتفرم اینترنت اشیا IoT Platform تضمین امنیت پروژه‌های IoT میباشد. علت آن هم مشخص است، سرویس ابری AWS کاملا براین حوزه تسلط دارد. امکان دریافت اطلاعات از انواع سخت افزارهای متصل شده به این سرویس و اعمال فعالیت‌های Real-time روی آن‌ها، یکی دیگر از نقاط قوت این سرویس می‌باشد. سرویس‌های ارایه شده از پلتفرم AWS IoT Core  به شرح زیر می‌باشد.

  • پشتیبانی از RTOS که یک سیستم عامل برای بردهای امبدد می‌باشد.
  • پشتیبانی از AWS Greengrass که یک نرم افزار سبک جهت اجرای فرآیندهای محاسباتی سمت سخت افزار میباشد.
  • پشتیبانی از AWS IoT Analytics که یک سرویس پیشرفته تحلیل دیتا می‌باشد.
  • پشتیبانی از AWS IoT device management که یک سرویس کاربردی جهت ساده سازی ارتباط و مدیریت سخت افزارها میباشد. مخصوصا وقتی تعداد دستگاه‌ها زیاد باشد.
  • پشتیبانی از AWS IoT Core به عبارتی هسته اصلی این پلتفرم می‌باشد. امکان برقراری ارتباط با پلتفرم ابری را فراهم می‌کند.

 

پلتفرم Artik Cloud

پلتفرم اینترنت اشیا atrik cloud سامسونگ - دیجی اسپارک

پلتفرم اینترنت اشیا Artik Cloud توسط سامسونگ ایجاد شده است. نکته جالب در خصوص روال کار این پلتفرم، امکان ارتباط بین سخت افزارها و ارتباط آن‌ها با سرویس ابری می‌باشد. نقطه قوت آن هم در سرعت تنظیم کردن و تبادل اطلاعات بین سخت افزارهای مختلف و پلتفرم ابری می‌باشد. همچین دارای بخشی جهت ایجاد ارتباط با پلتفرم‌های دیگر را دارد. همانطور که در دوره اسپارکرینار هم توضیح دادم، یکی از نکاتی که باعث پیشرفت پلتفرم‌ها می‌شود. امکان سازگار سازی با یکدیگر می‌باشد. به این چند روش امکان دریافت اطلاعات از سنسورهای مختلف و تجمیع سازی آن‌ها در پلتفرم اینترنت اشیا سامسونگ Artik Cloud فراهم می‌شود. در آخر هم این پلتفرم با ارایه SDK امکان ساده سازی فرایند توسعه را در اختیار کاربران قرار می‌دهد.

 

پلتفرم Microsoft Azure IoT

پلتفرم اینترنت اشیا microsoft azure - دیجی اسپارک

پیرو ادعای مایکروسافت این پلتفرم یکی از قوی‌ترین پلتفرم‌های اینترنت اشیا می‌باشد. نمی‌دانم چرا، ولی مایکروسافت اعلام کرده که این پلتفرم امکان برقراری ارتباط دو طرفه بین سخت افزارها و پلتفرم Azure وجود دارد! کار بسیار مهم پلتفرم همین موضوع می‌باشد. البته اعلام کرده که این فرایند با پروتکل‌های استاندارد صورت می‌گیرد! ولی نکته مثبت این پلتفرم پشتیبانی از تصدیق سخت افزاری است. این مورد به امنیت پلتفرم Microsoft Azure IoT مایکروسافت کمک می‌کند. مانند دیگر پلتفرم‌های اینترنت اشیا، Azure هم فرایندها را ساده می‌کند.

 


جمع بندی پلتفرم اینترنت اشیا IoT


در کل از هر گوشه و کناری پلتفرم اینترنت اشیا متولد شده است. هر کدام با ویژگی‌های خاص و البته تمرکز بر بخشی از بازار در حال جمع آوری کاربر و اطلاعات هستند. از آنجایی که این بازار با سرعت بسیار زیادی در حال رشد می‌باشد. همچنین گردش مالی بسیاری هم در این حوزه وجود دارد که روز به روز بیشتر هم خواهد شد. طبیعتا پلتفرم‌های مختلف زیر نظر سازمان و شرکت‌ها خاص در حال ارایه خدمات جهت جمع آوری اطلاعات و جمع آوری کاربران می‌باشند. سرمایه گذاری‌های زیادی در این حوزه روی استارتاپ‌ها صورت گرفته و بازهم در حال رشد می‌باشد. کلام آخر اینکه جهش در این حوزه فقط با ایجاد پلتفرم صورت نمی‌گیرد. جهش در حوزه IoT با حضور اسپارکرها صورت خواهد گرفت.

 

 

درباره نویسنده

اروند طباطبایی

بنیانگذار دیجی اسپارک: اولین مرجع تخصصی امبدد سیستم به زبان فارسی / کارشناس سئو و تولید محتوا

هرچه می آموزم میبینم که خیلی کم آموختم. علاقه به رباتیک و تکنولوژی دارم. امیدوارم بتونم دانشی را که آموخته‌ام، به روش‌های مختلفی به کاربران علاقمند منتقل کنم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۲۸ دیدگاه

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

    • با سلام
      از توجه شما سپاسگزارم. پلتفرم بخش نرم افزاری جهت ایجاد ارتباط بین سخت افزارها و سنسورها میباشد. به عبارتی بخش بسیار مهم IoT میباشد که مدیریت و سناریو کاربردی را از طریق آن تعریف میکنیم. سپس دیتاهای جمع آوری شده را روی آن به صورت تصویری میتوانیم مشاهده کنیم.

  • من میخوام فرق بین Paas و Saas رو بدونیم همچنین اگر اطلاعاتی دارید در خصوص پلتفرم kuzzle و همچنین پلتفرم firebase میشه لطف کنید تفاوتشون رو بهم بگین؟ میخوام بدونم کدومشون بهتره

    • با سلام
      سرویس Paas مخفف Platform as a service به معنی سرویس پلتفرمی است. و Saas مخفف software as a service به معنی سرویس نرم افزاری است. در سرویس Paas دسترسی به یک پلتفرم در بستر شبکه فراهم میشود. مثلا دسترسی به یک پلتفرم خاص در بستر وب در سرویس Saas دسترسی به یک نرم افزار در بستر شبکه فراهم می‌شود. مثلا یک شرکتی که نرم افزار حسابداری ارایه میدهد، این نرم افزار را اگر در بستر وب به صورت SaaS ارایه کند. دیگر لازم نیست روی هر سیستم، نرم افزار به صورت مجزا نصب شود. از طریق سرور و بستر اینترنت قابل دسترسی خواهد بود.
      در خصوص بخش دوم سوال شما، این دو پلتفرمی که معرفی کرده‌اید، در خصوص بک اند برای اپلیکیشن‌های تحت وب و موبایل کاربرد دارند. اما اخیرا پلتفرم Kuzzle با ارایه پروتکل‌های انتقالی اینترنت اشیا سعی کرده که در این حوزه‌ هم فعالیت کند.

  • سلام خدا قوت
    من می خواستم یک سنسور رطوبت سنج بزارم و با استفاده از اون یک شیر برقی رو خاموش وروشن کنم برد کنترل کننده هم ESP است مهم تر از همه اینکه قابلیت کنترل توی بستر اینترنت رو داشته باشه کدوم یکی از این پلتفرم ها جوابگو خواهد بود و بهترین گزینه هست و اگه در مورد ساخت این پروژه هم راهنمایی کنید ممنون میشم

    • با سلام
      برای این منظور هیچ کدام از این پلتفرم‌ها مناسب نیستند. به این دلیل که امکان ارتباط از داخل ایران با این سرویس‌ها فراهم نمیباشد. ولی میتوانید از پلتفرم‌های رایگان دیگر مانند ThingSpeak استفاده کنید.

    • با سلام
      از سرویس‌های معرفی شده در این آموزش فقط سرویس Azure از ایران در دسترس است. الباقی همگی دسترسی را بسته‌اند. ولی در کل انتخاب‌های دیگری هم وجود دارد.

  • سلام
    من قبلا پرداخت انجام دادم و لینک گروه رو دانلود کردم
    الان متاسفانه لینک رو گم کردم
    باید چیکار کنم؟

  • با سلام
    پلتفرم aws مثل thingsboard امکان دانلود سرور ندارد که بتوان در کامپیوتر نصب شود ؟

  • سلام. میخواستم اطلاعات شتاب سنج موجود در یک گوشی هوشمند رو در طی چند روز کاری یک کارگر ساختمانی جمع آوری کنم و بعدش اقدام به تحلیل این داده ها کنم (مثلاً با SVM). و بعد نتایج رو به یک گوشی هوشمند دیگر ارسال کنم. ممنون میشم اگه کمک کنید:
    اولاً بنظرتون تفاوت سنسور شتاب سنج گوشی هوشمند با سنسور شتاب سنج جدا زیاد است؟
    دوم از چه پلتفرمی استفاده کنم و آیا اصلاً لازمه استفاده از پلتفرم یا راه جایگزینی پیشنهاد میدین؟
    سوم اینکه بنظرتون از چه روش تحلیل داده ای استفاده کنم؟
    خیلی ممنون

  • سلام. بسیار ممنون از مطالب خوبتون

    سوالم اینه، در ارتباطات ساده، مثلا بین آردوینو و ماژول وای فای، یا بین rfid با آردوینو پلتفرم کدوم بخش میشه ؟

    • با سلام و تشکر از شما
      پلتفرم ارتباطی با این موارد ندارد. در حقیقت اگر بخواهیم اطلاعات سنسورهای متصل به برد آردوینو را ذخیره سازی کنیم، از پلتفرم استفاده می‌کنیم. بخشی از سناریو اینترنت اشیا است.

  • سلام وقت شما بخیر
    بنده میخواستم از طریق دیتای موبایل و با کمک ماژول های esp و برد آردینو از راه دور(یعنی خودم تو یه شهر باشم و برد یه شهر دیگه) برد مربوطه را کنترل کنم و دستورات را ارسال یا دریافت کنم
    راه پیشنهادی شما چست؟