Open Source и беспроводные сенсорные сети у вас дома

в 17:34, , рубрики: diy или сделай сам, embedded systems, internet of things, linux, open source, метки: , , ,

Открытый код проникает везде — начав с небольшого количества энтузиастов лет 30-40 назад, захватил затем множество интернет серверов, а в не столь отдалённом прошлом вторгся на десктопы больших компаний. И совсем уж недавно попал в руки огромных толп пользователей с помощью Google и платформы Android.

Не так заметно, что лишь малая часть встроенных систем обходится сейчас без участия открытого кода. Системы управления автомобилем (телематика и прочее), развлекательные терминалы в салонах самолётов и другие, иногда напрочь лишённые пользовательского интерфейса системы строятся на базе Linux и его младших братьев, работающих в реальном времени.

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

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

Open Source и беспроводные сенсорные сети у вас дома

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

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

Каждый сенсор Flexibity управляется собственным микроконтроллером на базе процессора ARM MC13224V, который включает также приёмопередатчик по протоколу IEEE 802.15.4. Несколько лет назад поверх него можно было использовать ZigBee, однако широкого использования ZigBee не получил, ибо стандарт не полностью свободный и переходить на него производители большого смысла не видели.

Однако недавно IETF принял спецификацию 6LoWPAN (IPv6 for Wireless Personal Area Networks) и активно работает над спецификацией ROLL (Routing over Lossy Low Power Networks). Это делает возможным использовать для сенсорных коммуникаций обычный IPv6. Каждый сенсор может поддерживать собственный веб сервер либо выполнять передачу данных посредством обычных HTTP запросов. Да, кстати сенсоры Flexibity работают на базе Contiki OS, а в качестве роутера может выступать устройство на OpenWRT или обычный комп.

Перспективы у приложений на базе прозрачно подключаемых и интернет беспроводных сенсорных сетей самые блестящие во многих областях. Однако меня лично более всего интересует возможность вовлечения людей в научные исследования, касающиеся поведения, образа жизни и здоровья. Дело в том, что по основному направлению деятельности я пишу кандидатскую на тему ранней автоматизированной диагностики нервных расстройств и мне нужны данные для исследований. Которые, как я надеюсь, могут быть любезно предоставлены пользователями сенсоров Flexibity ;)

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

Да, ещё одно — весь проект пока разрабатывается на энтузиазме двух человек и какие либо значительные средства в него не вкладывались. Планируем осенью выйти на Kickstarter, похожий проект Ninja Blocks был там недавно довольно успешен!

Автор: junt

* - обязательные к заполнению поля