Intel и Mail.Ru Group приглашают всех желающих принять участие в хакатоне, посвященном интернету вещей. Хакатон пройдет в московcком офисе Mail.Ru Group 30–31 июля 2016 года.
Интернет вещей не только дарит новые возможности, но и ставит новые задачи. Сегодня мы привыкли отвечать на вопросы, как хранить данные, какой протокол лучше выбрать и т. д. Но уже завтра к этим вопросам добавятся другие: какие данные собирать, как их считать, отображать, синхронизировать, как удаленно контролировать устройство, как сделать отказоустойчивое решение из кластера IoT-устройств.
Над подобными вопросами мы и приглашаем вас подумать на хакатоне: найти уникальные способы решения задач промышленности, бизнеса и повседневной жизни, используя платформы Intel Edison и Tarantool. А мы обеспечим все условия и возможности для создания чего-то нового!
Что нужно для участия?
Главное — это идея IoT-решения, которую вы готовы реализовать, или прототип, который можно доработать. Вам не нужно знать, как готовить Intel Edison или Tarantool, — этому мы научим.
Каждой команде будет предоставлен комплект разработчика Intel IoT Dev Kit, включающий плату Intel Edison и набор сенсоров Grove Starter Kit Plus. Основной язык разработки — Lua, запущенный из-под Tarantool.
Чтобы зарегистрироваться, заполните форму. За две недели до мероприятия команды с наиболее интересными проектами получат приглашение на email.
Призы
Команды, представившие лучшие идеи и реализацию, получат от компании Intel подарочные карты Visa:
- 1 место — 100 тыс. руб.
- 2 место — 50 тыс. руб.
- 3 место — 30 тыс. руб.
Каждая команда, занявшая призовое место, также получит плату Intel Edison и набор сенсоров Grove Starter Kit Plus.
O Tarantool
Tarantool — это универсальная IoT-платформа, которая представляет собой СУБД общего назначения с сервером приложений внутри. Tarantool предназначен для работы как на IoT-устройствах, так и в облаке, обеспечивая надежную синхронизацию между ними в обе стороны. Основная отличительная особенность Tarantool — то, что он очень нетребователен к ресурсам. Может работать на одном ядре процессора, даже очень медленном. Может работать начиная с нескольких мегабайтов памяти. Может хранить данные на медленном и ненадежном флеше, не убивая его при этом постоянными перезаписями (потому что Tarantool их вообще не делает). При этом он надежно сохраняет каждую транзакцию на диск или флеш. Tarantool Fibers идеально ложатся на логику работы с PIN, UART и т. п.
Для упрощения жизни мы сделали биндинг MRAA в Lua — на момент анонса готовится pull request. Lua binding лежит в моем репозитории, документация в процессе создания, любые вопросы по MRAA задавайте тут, в личку, на GH.
Кроме того, Tarantool умеет реплицировать все транзакции как между IoT-устройствами, так и в облако (на удаленный Tarantool, запущенный на серверах в дата-центре). Причем это master — master репликация в обе стороны. При необходимости вы можете высылать данные с локального Tarantool — прямо с устройства — куда угодно, в том числе в Твиттер, минуя облако.
Разрабатывая с использованием Tarantool как локальной платформы на IoT-устройствах, вы получаете одинаковое состояние системы на всех устройствах и на центральном сервере. Причем каждое устройство работает независимо с текущей копией данных даже при моргающем или неработающем доступе к интернету (при восстановлении доступа все данные моментально реплицируются в обе стороны). Кроме того, при отсутствии подключения к интернету вы можете реплицировать данные между устройствами через Bluetooth посредством Tarantool.
Только представьте: ваши устройства всегда синхронны по данным, даже если нет доступа к интернету. Удалившись друг от друга, они на время рассинхронизируются, но при сближении вновь синхронизируются.
И вишенка на торте: написав функцию на Lua, вы моментально можете превратить ее в сервис внутри Tarantool. Вам нет необходимости локально ставить никакие серверы приложений. Ну и самое замечательное: так как Tarantool — это application server, вы можете поставить любую из имеющихся моделей прямо на устройство, к примеру http, pg и т. п., — и это все можно сделать в одно действие. А если вы установите еще и nginx с Tarantool-модулем в облако, то получите также REST API поверх Tarantool, а значит, сможете моментально автоматически получать данные с устройств.
Таким образом, Tarantool — настоящая мощная IoT-платформа для разработки полноценных и быстро работающих локальных приложений с полной синхронизацией между устройствами и центральным сервером и с почти полной независимостью от доступа к интернету.
Oб Edison
Intel Edison — это мощный модуль в компактном исполнении. CPU — двухъядерный Intel Atom 500 МГц, MCU — Intel Quark 100 МГц, 4 Гб флеш-памяти, 1 ГБ оперативки, может питаться от батареек или аккумуляторов, оснащен беспроводными интерфейсами (Wi-Fi и Bluetooth 4.0). Про работу с этой платой и проекты на ее основе написано много статей. Для начала советуем ознакомиться с этими материалами:
- Практикум «Intel IoT». Edison — могучая «кроха»
- Используем встроенный микроконтроллер в Intel Edison
- Библиотека MRAA для работы с платами Intel Edison и Intel Galileo
- Ингредиенты IoT-деликатесов быстрого приготовления: Intel Edison + Intel XDK + JavaScript + Grove Kit
- Кушать подано, садитесь подключать, пожалуйста
Tarantool + Edison
Мощный Edison и нетребовательный к ресурсам Tarantool создают идеальную связку для разработчиков, и, что самое главное, связка Edison + Tarantool позволяет разрабатывать быстро.
Для примера я и мой коллега решили пройти весь путь сами, так сказать, сделать свой «Hello, world». И вот что получилось: прототип системы безопасности. Как это было: с помощью Tarantool мы решили объединить устройство(а) и облако или другие устройства в кластер. После часовой дискуссии идея родилась сама: создадим распределенную систему безопасности. Коротко о проекте. Собираем с N устройств уровень света, уровень шума и т. д. Все эти показатели доставляются в облако. Если какой-то показатель больше X, то устройство начинает пищать и моргать. X должен настраиваться динамически, через WebGUI. Весь обмен данными происходит с помощью асинхронной master — master репликации. На это было потрачено часов шесть. И да, это прототип, не откалиброванный и т. п.
Ближе к дате проведения все участники получат дополнительные технические инструкции, чтобы быть полностью готовыми к хакатону. Также мы будем регулярно публиковать обучающие видео и материалы по Intel Edison, Yocto Linux и Tarantool в блоге Mail.Ru Group на Хабрахабре, Google-группе Tarantool и в группе Tarantool на Facebook.
Следите за новостями и готовьте интересные идеи!