Технології

Интернет всего: начало пути

0

previewЯ долго подбирал картинку для привлечения внимания для этой статьи. Обычно это явление иллюстрируют какими-то абстракциями в виде опоясанной информационными потоками планеты, или пазлами из обычных вещей, но опять-таки объединенными информационными потоками. И очень много всевозможных коллажей.

Но, на мой взгляд, лучше всего «Internet of everythings» иллюстрирует холодильник. Но не простой, а подключенный к интернету. И это ни разу не шутка.

А до написания сей статьи меня подвинули неоднократные появления в форуме тем на тему «умный дом». Впрочем, не только, разумеется, и не столько. На самом деле, я прикупил в китайском интернет-магазине игрушку-конструктор на Arduino побаловаться хардверным программингом и задумался, а куда эту штуку можно применить в реальной жизни. Но не просто в виде забавы для гиков, а в действительности данной нам в ощущениях. И как бы еще эти ощущения передавать в интернеты с целью наибольшего охвата наибольшей аудитории.

Разумеется, я и раньше слыхал о термине «Интернет-всего». Еще ранее, был вброс про «Интернет вещей» (Internet-of-things). Еще раньше была мечта об «умном доме» и все такое прочее.

Но коль скоро начались нешуточные холивары на форумах «У Нага», то очевидно, что тема интересная и горячая.

Давайте для начала поймем, что это за новое слово такое, ибо вокруг «облачных технологий» масса непонятностей и куча недодуманностей, хотя это всего лишь маркетинговая обертка для личностей с гуманитарным складом ума, которым трудно понять такие вещи, как «распределенные вычисления» и «виртуализация». Чего уж говорить про тонкий лед концептуальных умозрений в области «умной пыли» (smart dust — в кои-то веки, статья на русской Википедии лучше статьи на английском) или тот же «умный дом/город/страна» (ссылок на термины не дам — Гугл все знает).

Утверждается, что концепция «Интернет-вещей» впервые была озвучена в 1999 году, на презентации в Procter&Gamble, где этой небедной организации пытались впарить логистическую систему на RFID. По легенде один из сотрудников (утверждают, что это был некто Кевин Эштон) воскликнул: «Мы сможем подключить интернет к любой вещи! Это будет Интернет Вещей!». Собственно тут все и поехало, ибо, как известно, совершенно неважно, что там внутри, гораздо важнее, как ЭТО назовется.

Но термин прижился, и какое-то время вращался в кругах полностью упоротых гиков, пока не был произнесен на широкую публику основателем и главредом журнала Wired Кевином Келли (еще Кевин Келли известен как один из соавторов сценария фильма «Матрица», к сожалению, скончался в 2011 году). Это было на конференции TED Talk в 2007 году и имеется пруф-видео, которое я настоятельно рекомендую посмотреть, прежде чем начинать писать в комментариях «КГ/АМ»:

В общем, Келли в течение 5 000 дней прогнозирует появление физической связи между интернетом и окружающим физическим миром. Если посчитать, что 5000 дней, это 13,5 лет, а начало точки отсчета в 2007-ом,  то его предсказания должны исполниться как раз к 2020 году.

В видео есть, в том числе, отсылки и на другие  трендовые темы, о которых я пишу — и про RIP PSTN, и про Теле-еле-видение, и про… Впрочем, смотрите сами и делайте самостоятельные выводы. Может быть я не так уж и не прав в своих «предсказаниях», тем более, что научно исследуя предмет (придумывая всякую ерунду), я чаще опираюсь на исследования более умных людей (читаю то, что придумали другие).

И даже есть вот такая «дорожная карта» по развитию этих технологий:

Интересно то, что карта где-то даже попадает в реальность. С учетом того, что первоисточник на Википедии датирован 2008 годом, я считаю это очень хороший пример прогнозирования новых технологий.

Итак, идея «Интернета вещей» заключается в том, что существуют некие устройства, которые могут подключаться к Сети и передавать/принимать некие данные. Данные эти попадают в некое «облако», где творчески перерабатываются и получается информация годная к употреблению в реальной жизни. Некоторые «подключенные вещи» даже могут выполнять некие физические действия, простые и не очень. Звучит как бы просто, но сложнее придумать практическое применение в мирное время, которое, как оказалось, совсем небанальное. Например, очевидное «замерить температуру — > передать на сервер -> включить/выключить сообразное устройство», хоть и звучит просто, но нюанс в том, что это а) технически не так уж и просто и б) экономически бессмысленно.

И нужно для начала понять историю процесса по схеме.

Для начала была необходимость в оптимизации системы логистики и управления системой снабжения. На этом этапе никакие вещи к интернетам не подключали, но снабжали различными машиночитаемыми метками, от упомянутых RFID до штрих-кодов. Потом коды можно скармливать (через интернет, разумеется, иначе смысл слова теряется) программам учета и контроля. В особо продвинутых компаниях этот незамысловатый процесс позволял экономить/оптимизировать весьма ощутимые деньги. Этап был пройден и даже в России уже почти любая уважающая себя контора со складом имеет какой-нибудь 1С-склад и принтер штрих-кода.

Следующий заход, и мы в реальности пока в нем находимся (мир уже шагнул чуть дальше, в лице самой продвинутой в этом отношении — Южной Кореи), был связан с необходимостью сокращения затрат, связанных с опять учетом и контролем, но чуть шире истолкованном. Теперь подконнектили не только устройства чтения информации о вещах, но и собственно некоторые вещи с очевидным функционалом — камеры видеонаблюдения, например. Кроме того, появилась возможность дистанционно мониторить некоторые простые измеряемые физические параметры — температуру на промышленных объектах (холодильники-печи-рефрижераторы), состояние конкретного объекта (открыта/закрыта дверь) и т.п. Автоматизированные системы контроля и учета доступа (АСКУД), автоматизированные системы учета электроэнергии (АСКУЭ) — это тоже довольно примитивные примеры использования концепции «интернет вещей».

Третья волна подключения —  потребность в геолокационных сервисах. Всяческие системы мониторинга транспорта и навигации. Пример ясный и понятный. Уверен, что многие читатели используют навигационные программы в своих смартфонах и планшетах. Это самый, на мой взгляд, массовый пример применения концепции  IoT. И таких проектов стало появляться не просто много, а очень много — ибо модно, стильно, молодежно и можно освоить некоторое количество бюджетов из госзаказов и больших корпораций. Не могу сказать, что этого делать не нужно — очень даже нужно и полезно.

Но вот на подходе уже волна четвертая — «дистанционное присутствие», которое, считается, станет возможным благодаря миниатюризации и удешевлению встраиваемых процессоров. Опять-таки это всего лишь датчики и исполнительные устройства, но предполагается, что оные станут весьма доступны по цене и очень простыми технологически.

А следующий, последний обозримый этап —  возможность повсеместного создания сетей с ячеистой топологией, включающих в себя метки, датчики, средства измерения и управляющие устройства.

Про ячеистые сети, их развитие и применимость на практике пока оставим на следующую серию, а вот про дешевые устройства для «интернета вещей» можно чуть подробнее. Я ж с этого начал…

Но я постараюсь коротко, чтобы не утомлять «много букв» и оставить читателю место для фантазий, ограничусь лишь описанием идеи и покажу немного фото.

Итак, в китайском интернет-магазине микроконтроллер класса Arduino. Это не просто микропроцессор с обвязкой и компонентами ввода/вывода на плате, это целая платформа со множеством периферийных устройств, собственным языком программирования. Для тех, кто в курсе мое описание будет слишком занудным, а для тех.ю кто слышит о платформе в первый раз, рекомендую гуглить.

Вот именно этот экземпляр обошелся мне всего в 40 долларов. Для понимающих — нет, это недорого. 🙂 Я взял целый кит, куда входит собственно контроллер, две бредборды, рассыпуха компонентов, макетный шилд, какой-то пульт, батарейный отсек, соединительные провода и пластиковая коробочка. В общем, полный комплект для начинающих строителей интернетов вещей.

Комплект для IoT был бы неполный, если бы не предусмотрено было и средство коммуникации. В смысле, периферию, с помощью которой можно было бы подключить Ардуину в интернеты. Это не проблема — платформа, как я раньше уже писал, довольно развитая, и имеется масса способов подключиться любым способом, какой только придет в голову. Это делается с помощью специальных плат расширения — эти платы спроектированы таким образом, чтобы их можно было при необходимости расширять, добавляя в схему устройства новые компоненты. Подключаются просто на основную плату Ардуино с помощью штыревых разъёмов, и называются шилды (shields).

В ассортименте почти весь коммуникационный арсенал: есть ethernet, bluetooth и XBee  шилды. Есть сигнальные (просто проводами и придумывайте сами протокол) шилды. Есть и GSM платы. Я же выбрал плату с Wi-Fi:

Ценник у нее, правда, довольно высокий — 40 долларов. Но мне ж для экспериментов! 🙂

В сборе основная плата Ардуино и шилд выглядят так:

Собственно использование всего этого добра оказалось несложным — программируется через RS-232 (точнее, через «проброс» USB-to-Serial контроллер) с помощью встроенного языка программирования, который называется Processing — клон C++ «для самых маленьких». Среда программирования написана на Java, что позволяет запускать её на любых компьютерах (в данном случае на  Mac). В среде уже есть компилятор и простенький текстовый редактор. Собственно программы называются «скетчами». Да что я рассказываю — в сети есть куча материала по оной.

В общем, использование платформы оказалось довольно несложным к освоению — даже мой восьмилетний сын смог написать скетч «сигнал SOS» после примерно получаса объяснений и заготовки инициализации (это оказалось довольно трудно объяснить). Программа моргает означенный сигнал встроенным светодиодом. Я со своим полутехническим образованием разбирался два вечера со всем.

Сложнее получилось с Wi-Fi — нужно на довольно таки низком уровне провести процедуру инициализации шилда, и наладить поток приема-передачи данных. Поскольку микропроцессор ATmega328, используемый в системе имеет тактовую частоту всего-то в 16 МГц, то обработку сигнала нужно очень серьезно планировать. В общем, тут я немного застрял, но уверен справлюсь. Со временем.

И теперь пару слов о том, что я со всем этим добром планирую сделать, чтобы проиллюстрировать этот самый «интернет вещей».

Задумка следующая: к контроллеру хочу приделать исполнительный механизм в виде большого светодиодного дисплея. Собственно контроллер подключен к интернет-сервису, а сервис читает, например, Твиттер. Посылая конкретному аккаунту сообщения можно добиться, чтобы сервис передавал определенные символы микроконтроллеру, которые и отображаются на дисплее.

Технически это ТЗ вполне реализуемо — буду пробовать.

Остается только вопрос — ЗАЧЕМ? Какая от этого практическая польза?

Да никакой! 🙂

Это просто умозрительный кейс для демонстрации идеи — с помощью абсолютно интернетного сервиса можно управлять устройствами в реальной жизни. Вместо дисплея можно, например, управлять мощностью кондиционера в присутственном помещении — собрать твиты от всех присутствующих, с желаемой температурой в градусах Цельсия, да и вычислить среднее. Чем освободить от споров и пререканий большое количество людей. Электронная демократия, если хотите.

Есть и другие менее/более сложные способы использования решения. И более практичные. Собственно, подумать о таковых и предлагается читателям. У кого фантазия самая безумная, тот и победил! 🙂

Ну, и в заключение, обещанный холодильник, подключенный к интернету:

{youtube}uY3xaPypi8Y{/youtube}

http://nag.ru

Comments

Leave a reply