Сегодня мы поговорим о том, как была создана современная система мониторинга умного дома, управляющая входными и гаражными воротами.
Эта система — пример того, как идея из мира Интернета вещей превращается в работающий прототип, который, в свою очередь, становится полноценным продуктом, пригодным для массового производства и использования в реальной жизни.
Причем за счет использования удобных и доступных инструментов создания рабочих IoT-макетов все это происходит очень быстро.
Здесь мы также поделимся пошаговой методологией, применимой к работе над любыми решениями Интернета вещей.
В нашем случае для создания концептуальной модели используются Intel IoT Development Kit и Grove IoT Commercial Developer Kit.
Как только модель показывает, что конструкция соответствует ожиданиям, готовый продукт создается с использованием таких технологий, как Intel IoT Gateway, Intel IoT Gateway Software Suite, Intel XDK IoT Edition, IBM Bluemix и готовых компонентов.
Если описать наш проект в двух словах, то получится, что сенсорная система собирает информацию о входных и гаражных воротах, данные передаются на шлюз, а оттуда в облако для хранения и анализа.
Кроме того, в проекте реализовано несколько приложений, возможности которых основаны на облачных данных.
В частности, это система администрирования и мобильное приложение для конечных пользователей.
▍IoT в умном доме
В идеале Интернет вещей — это среда, в которой к Интернету подключено практически все, что может представлять хоть малейший интерес для того, кто использует «вещи».Этот интерес может выражаться в умении управлять «вещью» и узнавать ее состояние.
Причем сделать это можно где угодно и когда угодно.
Наши дома занимают особое место в концепции IoT. Это неудивительно.
Дом – центр жизни человека и вполне естественно, что ему необходимо постоянное чувство уверенности в том, что дома все хорошо.
Современные технологии играют очень важную роль в поддержании такого доверия; раньше, до IoT, об этом можно было только мечтать.
Например, у каждого иногда возникает навязчивая мысль, от которой практически невозможно избавиться, если она возникла: «Я запер дверьЭ» Самое неприятное здесь то, что эта мысль обычно приходит тогда, когда нет возможности узнать, заперта ли дверь.
Как было бы удобно в такой момент найти на экране смартфона значок «Проверить дверь»… И это только один пример.
Многие из нас вполне готовы купить и установить у себя дома систему, с помощью которой узнать, заперта ли дверь, будет так же легко, как проверить электронную почту.
Хотя на рынке доступно множество решений для умного дома, эта область только начинает развиваться.
В результате, например, может возникнуть несовместимость продуктов и компонентов разных производителей.
Intel обнаружила, что одним из критериев успеха в создании решений для умного дома является использование стандартизированных открытых платформ.
Такой подход позволяет легко создавать интеллектуальные устройства, подключенные к облаку, которые можно использовать в любом месте дома для мониторинга и управления самыми разными объектами.
Более того, такие продукты и услуги имеют значительный коммерческий потенциал.
▍О подходе к созданию проекта
Компания Intel организовала исследование, о котором мы сейчас поговорим, с целью выявить особенности разработки систем для умного дома.Во многом идеологическим вдохновением для этого проекта послужила существующая решение для умного дома от Yoga Systems .
В материале, который доступен по ссылке, можно найти рассказ о ходе работы над проектом.
Оно начинается с общего описания структурированной методологии, разделенной на несколько этапов.
Затем дается подробное описание выполняемых работ на каждом этапе.
Если вы чувствуете, что подобная методика будет вам полезна, вы можете воспользоваться нашей историей, чтобы проследить за каждым этапом, который прошла команда разработчиков Intel от идеи до готового IoT-проекта для умного дома.
И, что, возможно, более важно, все это можно обобщить и применить к другим проектам.
Intel предлагает всем использовать описанную здесь методологию работы для реализации собственных IoT-проектов.
Надо сказать, что хотя мы и затрагиваем здесь многие технические особенности, основная цель данного материала — показать на достаточно высоком уровне методологию и процесс разработки.
Если вам нужна дополнительная техническая информация, Здесь Вы можете найти пошаговое руководство по созданию прототипа системы умного дома, о которой мы поговорим.
Кроме, Здесь репозиторий GitHub, где вы можете просмотреть код и документацию.
▍Методология
По своей сути разработка для IoT — это бесконечные инновации и множество совершенно разных проектов, которые добавляют интеллекта невероятному количеству «вещей»: от очень простых до сложных систем; от привычного всем, до совершенно экзотического.Но, несмотря на такое разнообразие, каждый проект так или иначе создается с учетом опыта, накопленного IoT-индустрией.
Опыт и практика позволяют выявить общие элементы при создании разных IoT-проектов.
Чтобы воспользоваться этими общими чертами аналогичных проектов и повысить шансы на успех при создании новых, компания Intel разработала структурированный подход к разработке IoT-решений.
Этот подход представляет собой шестиэтапную модель работы.
Это позволяет проекту пройти путь от идеи до готового продукта, пригодного для коммерческого использования.
Предлагаемая здесь модель разработана таким образом, чтобы ее можно было легко адаптировать к потребностям любого проекта Интернета вещей.
▍Начальные фазы (1-3)
Первые три этапа предлагаемой методологии представляют собой исследования.Они сосредоточены на генерации идей и оценке способности проекта решить свою проблему.
По большому счету все это подготовка к созданию успешного коммерческого продукта.
В связи с этим на этих этапах работы важную роль играет мозговой штурм и проверка работоспособности концепции проекта.
О том, чтобы заниматься развитием, следуя определенным проверенным решениям и четким планам, пока речи не идет.
Быстрое прототипирование на этом этапе упрощается с помощью комплекта коммерческого разработчика Grove IoT. В этот комплект входят Intel NUC, пакет программного обеспечения Intel IoT Gateway и стартовый комплект Grove Plus (от Seed).
В нашем проекте также используется плата Arduino 101. Эту плату, особенно за пределами США, часто называют «Genuino 101», в дальнейшем мы будем называть ее «Arduino 101».
Фаза №1
Первым шагом в создании продукта Интернета вещей является определение существующей проблемы, которую этот продукт решит, или потенциальной возможности на рынке, пустой ниши, которую можно заполнить.Документация на этом этапе должна описывать проблему, ценность решения (как для конечного пользователя, так и для организаций, которые будут участвовать в производстве и внедрении), а также описание ограничений концепции.
Документация также должна содержать информацию об ожидаемых трудностях и ограничениях процесса реализации проекта.
Этап №2
Здесь вам необходимо разработать модель проверки концепции, которая покажет, способен ли продукт решить поставленную перед ним задачу.Первоначальный проект должен описывать практический подход к созданию продукта, включая аппаратное, программное обеспечение и сетевые элементы.
При этом необходимо учитывать все возможные трудности и ограничения реализации проекта, выявленные на первом этапе работы.
При этом, поскольку физической реализации системы пока нет, необходимо учитывать, что некоторые узкие места решения можно увидеть только на работающем прототипе.
На этом этапе необходимо обратить внимание на такие факторы, как стоимость и уровень безопасности решения.
Этап №3
На этом этапе создается и дорабатывается макет для проверки функциональности идеи.Этот физический прототип основан на решениях, принятых на втором этапе.
При необходимости на этом этапе в проект вносятся изменения, которые также документируются.
Изменения, основанные на недостатках и дополнительных возможностях, выявленных в результате тестирования, также должны быть документированы.
▍Заключительные этапы (4 – 6)
Последние три этапа, включенные в эту методологию, завершаются только после того, как будет принято решение о том, что продукт необходимо довести до стадии производства.Таким образом, здесь приоритетом является повышение стабильности, безопасности и управляемости продукта, подготовка к серийному производству и монетизация проекта для реализации его коммерческого потенциала.
На заключительных этапах работы переходят к использованию серийных компонентов, например, датчиков.
То же самое касается и таких частей системы, как шлюзы Интернета вещей.
Здесь оформляется документация и фиксируется окончательный набор характеристик продукта.
Этап № 4
На данном этапе они создают стабильную бета-версию.После того как было доказано, что проект способен эффективно решить поставленную перед ним задачу, было решено, что он пойдет в серийное производство, и был создан вариант проекта, ориентированный на готовое изделие и предназначенный для доработки конструкции.
.
Производство этой версии потребует значительных инвестиций ресурсов, в том числе серийных датчиков и других компонентов, а также IoT-шлюзов.
Этап №5
Здесь оцениваются возможности продукта и расширяется его функционал.Готовая бета-версия тестируется на корректность работы в соответствии с заданными параметрами.
В ходе тестирования команда разработчиков также выявляет дополнительные возможности и функции продукта, которые в него внедряются, чтобы сделать его более надежным и повысить его ценность для конечных пользователей.
Этап №6
В конце проект дорабатывается и переходит на стадию производства.Как только решено, что продукт обладает всеми необходимыми возможностями, команда совершенствует его, расширяя возможности управления, показатели безопасности, оптимизируя модель по маркетинговым соображениям и эффективности производства.
Также на этом этапе завершается работа над пользовательским интерфейсом.
Задачи, выполняемые на этом этапе, включают окончательное планирование способов продвижения и продажи продукта перед переходом к полномасштабному производству.
Рассмотрим применение предложенной модели работы над IoT-проектами на примере нашей системы.
Пример применения методологии разработки IoT-проектов
▍Этап №1: Определение потенциала проекта
Основная команда Intel, инициировавшая проект, решила, что умный дом является подходящей основой для возможного решения Интернета вещей, которое могло бы продемонстрировать возможности Интернета вещей и проиллюстрировать применение методологии проекта, описанной выше.Эта группа определила набор навыков будущих членов расширенной команды, которые, скорее всего, понадобятся во время разработки.
Эти навыки включают управление проектами, программирование, работу с облачными платформами и документацию.
На основании перечня необходимых навыков основная команда сформировала полноценную проектную команду.
В его состав в основном входили сотрудники Intel, но были включены и некоторые другие специалисты.
Это было сделано для того, чтобы дополнить экспертный потенциал команды.
Первой задачей всей команды дизайнеров была оценка потенциала конструкции как основы для первоначального прототипа.
Основной потенциальной возможностью, выявленной в данном случае, стала интеграция программных систем управления и сигнализации, связанных с определенными функциями системы «умный дом».
А именно, было решено сосредоточить внимание на следующих объектах:
- Входная дверь .
Система в физической модели может отпирать и запирать дверь и сообщать, заперта ли дверь или нет, а также закрыта она или открыта.
- Дверной звонок .
При нажатии кнопки дверного звонка на модели в административном приложении и в мобильном приложении отображается оповещение.
- Гаражная дверь .
Пользователь может отправлять команды из мобильного приложения на подъем и опускание ворот гаража.
Кроме того, мобильное приложение может отображать информацию о ходе открытия и закрытия двери, а также предупреждать пользователя, когда дверь не может закрыться.
Эти данные, с одной стороны, очень просты, но с другой стороны, они важны, так как именно на них базируется работа всей системы, и именно они позволяют решить основную задачу проект.
Двойственность между простотой этой первичной информации и ее важностью лежит в основе коммерческой ценности разработанной системы.
Датчики собирают и отправляют информацию в облако, чтобы обеспечить хранение и анализ информации, а также удаленный безопасный доступ к системе.
В результате пользователь может просматривать уведомления о событиях и состоянии различных элементов умного дома, перечисленных выше.
Кроме того, команда определила возможности дальнейшего расширения решения, которое было определено как выходящее за рамки проекта.
В их число вошли предложения по удаленному управлению как для домашних, так и для коммерческих пользователей, включая интеграцию в существующие системы безопасности.
▍Этап №2: Разработка модели для проверки концепции.
Команда решила, что проект должен быть основан на легкодоступных компонентах и технологиях, чтобы он, как практический пример, был максимально полезен сообществу разработчиков.
В результате были выбраны следующие комплекты: Grove IoT Commercial Developer Kit, Intel IoT Developer Kit, Пакет программного обеспечения Intel IoT Gateway .
Кроме того, было решено использовать широко доступные и бесплатные или недорогие программные технологии, используя бесплатное программное обеспечение с открытым исходным кодом (СОПО), где это возможно.
Чтобы ускорить прохождение проекта через стадию прототипа и снизить трудоемкость работ, было решено построить ту часть системы, которая должна располагаться в доме, в виде стендовой модели.
Предполагалось включить вычислительную платформу и датчики, не включая в прототип реалистичную модель умного дома, хотя такая модель будет создана и протестирована на следующих этапах проекта.
Выбор оборудования для прототипа
Для использования в прототипе был выбран компьютер малого форм-фактора Intel NUC Kit DE3815TYKHE. Данная система отличается надежностью и высокой производительностью.Кроме того, команда посчитала, что, будучи одной из новейших аппаратных платформ Intel, предназначенных для сферы IoT, этот компьютер подойдет не только для этой версии проекта, но и для его возможных будущих реализаций.
Intel NUC построен на базе процессора Intel Atom E3815 с пассивной системой охлаждения, оснащен 4 ГБ встроенной флэш-памяти (при необходимости к ней можно подключить SATA-накопители), а также множеством портов ввода-вывода.
Intel NUC — компьютер, который, будучи очень компактным устройством, поддерживающим расширение возможностей, обеспечивает функциональность на уровне традиционного настольного ПК.
Компьютерный комплект Intel NUC DE3815TYKHE и плата Arduino 101
Чтобы упростить процесс взаимодействия с датчиками, команда воспользовалась разработками экосистемы Arduino.
В частности, было решено использовать платформу Arduino 101. Благодаря ему NUC может взаимодействовать с платами расширения для Arduino, кроме того, такой выбор соответствует духу проекта, направленному на максимальное использование открытых технологий.
Текущая версия проекта не использует Bluetooth, но Arduino 101 оснащен модулем Bluetooth, поэтому было отмечено, что эта возможность может быть использована в будущих версиях проекта.
Вот характеристики компьютера и платы, использованных для создания прототипа:
Характеристика | Комплект Intel NUC DE3815TYKHE | Ардуино 101 |
Процессор/микроконтроллер | Процессор Intel Atom E3815 (кэш 512 КБ, 1,46 ГГц) | Вычислительный модуль Intel Curie, 32 МГц |
Память | 8 ГБ DDR3L-1066 SODIMM (максимум) | Флеш-память 196 КБ 24 КБ статической оперативной памяти |
Сетевые возможности/порты ввода/вывода | Встроенный сетевой адаптер 10/100/1000 Мбит/с.
|
14 цифровых и 6 аналоговых выходов |
Размеры | 190 мм х 116 мм х 40 мм | 68,6 мм х 53,4 мм |
Спецификация | Полная спецификация | Полная спецификация |
Что касается датчиков и других компонентов, необходимых для создания прототипа, то они взяты из Grove Starter Kit for Arduino (производства Seed Studio), который основан на Grove Starter Kit Plus, используемом в Grove IoT Commercial Developer Kit.
Этот комплект можно приобрести по доступной цене, а поскольку он содержит заранее выбранный набор компонентов, его использование сокращает усилия, необходимые для выбора и приобретения материалов для прототипов IoT.
Выбор датчиков и других компонентов для прототипа (подробнее об этом ниже) был продиктован необходимостью сбора следующих ключевых данных, жизненно важных для работы проекта.
- Состояние входной двери: заперта или нет, закрыта или открыта.
- Статус гаражных ворот: закрыта или открыта, заперта или разблокирована.
- События: нажатие на дверной звонок, входная дверь заперта и разблокирована, входная дверь открывается и закрывается, дверь гаража открывается и закрывается, дверь гаража запирается.
Спецификация прототипа программного обеспечения
В качестве операционной системы для вычислительных устройств, использованных в прототипе, команда выбрала Yocto Linux, а также пакет программного обеспечения IoT Gateway.
Yocto Linux соответствует целям проекта по использованию бесплатного программного обеспечения с открытым исходным кодом, он предлагает высокий уровень гибкости, а также надежный контроль исходного кода и возможность создавать собственные сборки встраиваемых операционных систем с учетом потребностей конкретного проекта.
С другой стороны, Intel IoT Gateway Software Suite предоставляет готовую реализацию ОС без необходимости дополнительной настройки.
Кроме того, эта система предоставляет функциональные возможности Node-RED для нужд разработки.
Команда сочла такое сочетание факторов чрезвычайно полезным, и в конечном итоге в качестве ОС шлюза для прототипа был выбран пакет программного обеспечения Intel IoT Gateway Software Suite. В рамках проекта было решено разработать следующие приложения:
- Приложение управления , который будет работать в модели умного дома, собирать показания датчиков и обрабатывать операции электромеханической части решения (например, открытие и закрытие гаражных ворот), он также отвечает за обмен данными с пользователем (через административные и мобильные приложения) и с облаком.
- Административное приложение , предназначенный для работы на компьютере или планшете.
Он предоставляет подробный обзор того, что происходит в умном доме, включая информацию о событиях и состояниях объектов.
Он также предоставит доступ к журналам, облачным данным и аналитике.
- Мобильное приложение Предназначен для смартфонов и других мобильных устройств.
Оно даст пользователю возможность открывать и закрывать ворота гаража, а также наблюдать, что именно происходит с дверью: открывается, закрывается или запирается.
▍Этап №3. Создание и доработка прототипа
Концептуальный прототип был создан с использованием комплекта Intel NUC DE3815TYKHE, платы Arduino 101 и Grove Starter Kit Plus IoT Edition.Опытный образец Прототип был построен как настольная модель, не связанная с механическими объектами, такими как двери.
Команда проекта решила, что на данном этапе работы в этом нет необходимости.
Вместо этого, например, для имитации запирания и отпирания двери использовался датчик угла поворота, шаговый двигатель символизировал гаражную дверь, а обычная кнопка играла роль дверного звонка, который будет присутствовать в полноценной модели умного дома.
Вот список материалов, используемых на данном этапе работы.
Основная система:
- Комплект Intel NUC DE3815TYKHE .
- Ардуино 101 .
- Кабель USB A-B для подключения платы Arduino 101 к NUC.
- Базовый щит V2 (базовая плата расширения).
- Шестеренчатый шаговый двигатель с водителем (шаговый двигатель с платой управления).
- Кнопочный модуль (кнопочный модуль).
- Модуль сенсорного датчика (модуль сенсорного датчика).
- Модуль датчика освещенности (модуль датчика освещенности).
- Модуль поворотного датчика (модуль датчика угла поворота).
- Красный светодиод (красный светодиод).
- ЖК-дисплей с модулем RGB-подсветки (ЖК-дисплей с цветной подсветкой).
- Модуль зуммера (зуммер).
Приложение управления, использованное в прототипе, было написано на JavaScript. Он подключается к IBM Bluemix и обменивается данными с облаком.
Приложения, административные и мобильные, также обмениваются данными с облаком для поддержки функций системы.
К ним относятся открытие и закрытие ворот гаража, запирание и разблокировка входной двери, а также отправка уведомлений о таких событиях, как дверной звонок.
Мобильное приложение также написано на JS и предназначено для веб-браузеров.
Это было сделано для того, чтобы избежать необходимости переноса приложения на несколько мобильных платформ.
Средой разработки, используемой для создания программного обеспечения для этого решения, является Intel XDK IoT Edition, которая входит в комплект коммерческого разработчика Grove IoT. Кроме того, его можно скачать бесплатно.
Здесь .
XDK позволяет разработчикам создавать, запускать и отлаживать приложения Node.js непосредственно на платформах на базе архитектуры Intel, включая комплект Intel NUC DE3815TYKHE. Эта среда также поддерживает Node-RED.
Для работы с портами ввода-вывода на NUC необходимо использовать библиотеку MRAA C/C++, которая предоставляет инструменты для взаимодействия с JavaScript и Python для работы с другими платформами.
Он обеспечивает структурированную и хорошо продуманную API , где имена и нумерация портов соответствуют оборудованию.
Кроме того, при разработке программного обеспечения для данного решения использовался протокол Firmata, который позволяет организовать взаимодействие программного обеспечения со средой разработки Arduino, используя возможности аппаратной абстракции Arduino.
Libmraa улучшает программный контроль ввода-вывода на NUC, упрощая процесс сбора показателей датчиков.
UPM предоставляет вызовы специальных функций, которые используются для доступа к датчикам.
Прототип умного дома включает в себя кнопку активации гаражной двери, кнопку и зуммер дверного звонка, сенсорный датчик для определения того, открыта или закрыта входная дверь, датчик угла поворота для имитации отпирания и запирания входной двери, а также ЖК-дисплей с цветной подсветкой.
который показывает, закрыты или открыты гараж и входные двери.
Кроме того, когда звонит дверной звонок, на дисплее появляется сообщение.
Прототип включает в себя светодиоды, которые используются для отображения информации о том, закрыта или открыта дверь гаража.
Прототип приложения, работающий на Node.js, собирает данные датчиков и отображает информацию на ЖК-дисплее.
Если на дисплее отображается сообщение «Дверь открыта», загорается зеленый светодиод.
При появлении сообщения о том, что дверь закрыта (Door Close), загорается красный светодиод.
Кроме того, приложение может управлять шаговым двигателем для открытия и закрытия гаражных ворот, хотя для простоты эта функция не реализована в прототипе.
▍Этап №4. Создание стабильной бета-версии
После того как прототип, позволивший нам доказать работоспособность концепции проекта, был готов, команда убедилась, что его функционал достаточен для реализации готового продукта на его основе.В проекте на данном этапе его разработки можно выделить следующие основные части:
- Физическая модель дома , построенный в уменьшенном масштабе.
Он включает в себя функциональные части, используемые в решении, а именно дверной звонок, входную дверь, гаражную дверь и сопутствующие системы.
- Шлюз на базе архитектуры Intel, которая можно найти на открытом рынке.
Установлено собственное программное обеспечение.
- Клиентское приложение , написанный на JavaScript. Он используется для управления решением в целом, для создания и работы с облачной аналитикой.
- Облачная часть системы , на основе IBM Bluemix. Помимо прочего, Bluemix позволяет собирать информацию об особенностях решения и на ее основе оптимизировать его.
Выбор бета-компонентов
Первым шагом на этом этапе является выбор компонентов, которые будут использоваться в готовом продукте.
Подготовка модели умного дома
Поскольку команда остановилась на варианте создания прототипа в виде модели, было решено построить масштабную модель дома и смонтировать на ней все необходимое.Для создания модели команда наняла стороннего специалиста с соответствующим опытом.
Вот первоначальная спецификация модели умного дома и ее эскиз.
Эскиз модели умного дома
Модель дома выполнена в масштабе 1/12 из фанеры, армированной металлическими вставками.
Размер модели около метра в каждом измерении.
Крыша и двери сделаны съемными, чтобы во время испытаний было удобно работать с установленными внутри приборами.
Вот основные компоненты модели, которые нас интересуют:
- Входная дверь который открывается и закрывается вручную.
Он оснащен датчиками Intel, которые позволяют ему определять, открыта или закрыта дверь.
На двери также есть рабочая кнопка дверного звонка.
- Гаражная дверь с автоматическим открытием и закрытием.
При этом используются шаговые двигатели и датчики, чтобы определить, находится ли дверь в полностью открытом или полностью закрытом положении.
Также имеется пластиковый стопор, который помогает предотвратить повреждение, если дверь заперта.
В их число входил выбор готовых датчиков, шлюза на базе архитектуры Intel, облачного сервиса для хранения и анализа данных, а также программных технологий для клиентского приложения.
Выбор датчиков и других компонентов
Ниже приведен список имеющихся в продаже датчиков и сопутствующих компонентов, которые заменяют соответствующие части системы, ранее взятые из стартового комплекта Grove.- Интернет вещей шлюз Шлюз Интернета вещей Dell iSeries Wyse 3290.
- USB-кабель A – Micro USB B для подключения контроллера I2C/GPIO к шлюзу.
- Источник питания , 12 В, 10 А, которое используется для питания системы.
- Сплиттер для цепей постоянного тока (1 – 2), что позволяет питать шлюз и датчики от одного источника постоянного тока.
- Логический преобразователь (двунаправленный адаптер), который позволяет осуществлять преобразование между двумя разными
-
Пкanywhere
19 Dec, 24 -
Некоторые Факты О Планшете Google Android
19 Dec, 24 -
Праздники, Которые Отмечает Яндекс
19 Dec, 24 -
Как Началась Жизнь
19 Dec, 24 -
Apple Избавится От Посредников В России
19 Dec, 24 -
Создана Программа Для «Разгона» Интеллекта
19 Dec, 24