خواجه نصیرالدین طوسی
اسفند ۱۶, ۱۳۹۴۶ ژنراتور برتر انرژی پاک در ارتفاعات بلند
اسفند ۱۶, ۱۳۹۴تقریبا دو ماه از پایان نمایشگاه 2016 CES می گذرد و موضاعات اصلی این نمایشگاه، روز به روز روشن تر می شوند. اما به طرز عجیبی، بزرگترین زمینه مورد بحث سال یعنی اینترنت اشیا که در واقع کمبود یک تکنولوژی است و نیاز به آن به شدت حس می شود ، هنوز هم نتوانسته از آزمایشگاه خارج شود و وارد دنیای واقعی شود. تکنولوژی که هر چقدر دیرتر توسعه پیدا کند، استفاده از آن سخت تر می شود.
این نمایشگاه پر از صفحه نمایش ها و دستگاه های هوشمند بی معنی بود اما هیچ راهی برای آنکه آن ها را در کنار هم دیگر قرار داد وجود نداشت. سنسور ها همه جا هستند اما همه شان تنها دستگاه هایی منفرد هستند و نمی توانند بخشی از یک شبکه جامع باشند که دنیای پیرامون ما را تحت تاثیر قرار داده و اندازه گیری هایی را در اختیار ما قرار دهند که به کمک آن ها بتوانیم محیط اطراف خود را درک کرده و آن را کنترل کنیم.
اگرچه اقداماتی برای توسعه ارتباطات و استاندارد های مربوط به API در این زمینه مانند AllJoyn و Open Connectivity Foundation انجام شده است اما قسمت اصلی آن هنوز ساخته نشده است. این قسمت اصلی سرویسی است که به ما اجازه می دهد تا با تمام دستگاه های موجود در خانه کارکنیم.
برای مثال خانه ی خود ای را در نظر بگیرید در حال حاضر از چند دوربین امنیتی Arlo ، چند چراغ ال ای دی Greenwave، یک زنگ خطر آتشسوزی یک دستگاه اسپیکر Amazon Echo و یک سنسور آب و هوا و میزان آلودگی بهره می برد . همه این ها دستگاه هایی هوشمند هستند و همگی به اینترنت متصل هستند و هیچ کدام شباهت چندانی با یکدیگر ندارند و هر کدام از Zigbee یا wi-fi یا wi-fi کم مصرف استفاده می کنند. من می توانم یکی یا دوتا را از طریق سرویس های ابری نظیر IFTTT به یکدیگر متصل کنم اما استفاده از دستورات پیچیده اصلا امکان پذیر نیست. بعضی از این دستگاه ها مستقیما شبکه wi-fi متصل می شوند و بعضی دیگر از gateway های مخصوص به خود استفاده می کنند.
یک طراح نرم افزار، مهارت لازم برای پیدا کردن API های مناسب برای هر دستگاه و طراحی یک یا دو اپلیکیشن برای انجام چند کار ساده بین دستگاه ها را دارد . این کار به او اجازه می دهد تا اگر زنگ خطر آتش سوزی به کار افتاد، چراغ ها را روشن کنم یا سنسور ها را بررسی کند تا ببیند آیا هشدار آلودگی غیرمنتظره ای وجود داشته یا نه یا حتی از اَلکسا( دستیار صوتی آمازون) بخواهد وقتی یک فایل جدید مربوط به وبلاگش را در OneDrive باز می کند، نور اتاق را کم کند و یک موسیقی ملایم الکترونیک پخش کند.
او حتی ابزار و سخت افزار های زیادی برای استفاده دارد، از چند کامپیوترRaspberry Pi و مین برد Intel Galileos گرفته تا چند دستگاه سازگار با Arduinos و Arduino از چند تولید کننده مختلف که بعضی از آن ها دارای ارتباط وای فای و دیتای موبایل نیز می باشند. به علاوه ابزار های برنامه نویسی زیادی نیز وجود دارند که دارای زبان های برنامه نویسی مختلفی هستند و طوری طراحی شده اند که اجازه کار با ارتباطات پیامی غیر همزمان را نیز به او می دهند. این ابزار به او اجازه می دهند تا کدی را که برای در کنار هم قرار دادن دستگاه ها و سنسور ها و بقیه شبکه اینترنت در کنار هم ، لازم دارد بنویسد.
ساخت این کد نیز چندان دشوار نیست. با استفاده از یکی از پلتفرم های توسعه ای (IoT (Internet of things که Node-RED نام دارد، می توان این کار را انجام داد. این در واقع یک محیط برنامه نویسی نیمه بصری است که به شما اجازه می دهد تا ماژول های کد را drag and drop کنید و آن ها را با سایر ورودی ها و خروجی مرتبط کنید. همچنین این محیط می تواند چند API را برای ساخت یک نرم افزار بر پایه node.js با یکدیگر ترکیب کند. این نرم افزار می تواند بر روی یک کامپیوتر خانگی یا در cloud یا حتی در دستگاه هایی نظیر Raspberry Pi اجرا شود.
جهان در حال تولد IoT به ابزار های بیشتری نظیر Node-RED نیاز دارد. علاوه بر این به تجهیزات بیشتری نظیر Azure IoT framework برای کار بر روی داده ها در مقیاس بزرگ و یا AWS Lambda برای مدیریت فعالیت های های پیامی غیرهمزمان ، نیاز است. با توجه به این که ما در حال حاضر دارای چندین ابزار متمرکز بر روی IoT در پلتفرم های اصلی cloud داریم ، هیچ بهانه ای برای پر نکردن این جای خالی وجود ندارد.
پس چرا API ها و پروتکل ها باز نمی شوند؟ چرا ما باید برای برقراری ارتباط با دستگاه هایی که صاحبشان هستیم، مورد اعتماد تولیدکنندگان قرار بگیریم؟
متاسفانه، اغلب معماری ضعیف امنیتی، منجر به این نوع طرز فکر از جانب تولیدکنندگان می شود. طراحی دستگاه برای ایجاد امنیت، به وسیله مبهم بودن کارایی دقیق آن منجر به تنبلی می شود و اپلیکیشن های کنترل کننده شما تبدیل به مجموعه ای از نام های کاربری و کلمه عبور با کدهای پیچیده می شوند. این امر در مورد یک کنترل ساده چند چراغ LED که به یکدیگر شبکه شده بودند نیز کاملا مشهود است.
بسیار ناراحت کننده است که چنین اتفاقی باز هم تکرار می شود، زیرا بخش عمده ای از دو دهه گذشته ، صرف آموزش توسعه دهندگان نرم افزار های موبایل و کامپیوتر های خانگی شده است تا دیگر با این مشکل مواجه نشویم.
توسعه دهندگان API های IoT باید راهی پیدا کنند تا بتوان API های ایمنی را طراحی کرد که بتوان آن ها را به راحتی به صورت عمومی به اشتراک گذاشت. یکی از گزینه ها، استفاده از سطوح مختلف کارکرد برای گروه های مختلف کاربران است که احتمالا می توان این کار را با افزودن یک لایه کنترل کننده به API انجام داد.
پیدا کردن مسیری برای رسیدن به اینترنت اشیا سازگار با هم، زیاد سخت نیست. تنها باید به یاد داشته باشیم اشیا ما در حال حاضر نرم افزار ها هستند و درس هایی که در مورد ساخت سیستم های ایمن و سازگار با یکدیگر، آموختیم را بر روی این اشیا نرم افزاری اجرا کنیم. وقتی بتوانیم چنین مجموعه امن و سازگاری از اشیا را در کنار یکدیگر داشته باشیم، آنگاه می توانیم ساخت آن دنیای کامپیوتری به همراه محیط هوشمند اطراف آن که قولش را به شما داده بودم، را شروع کنیم.
منبع : ZDNet