ݺߣ

ݺߣShare a Scribd company logo
Григорий Ситнин Z-Wave.me
История вопроса
Форум “Apps4All” — 2013
Запуск Z-Wave.Me — 2010
Создание Z-Wave Alliance — 2005
Несколько знакомых названий
Sigma Designs, Dune HD, LG, Mitsumi,
Motorolla, NEC, Sharp, Technicolor,Verizon,
ZyXEL, D-Link...
...и ещё более 200
Почему Z-Wave?
Не требует ремонта для установки
Устройства хорошо выглядят
или не видны вовсе
Сертифицированная
в России частота 869MHz
Конкуренты
443MHz — тотальный vendor lock,
слабая маршрутизация
EnOcean — “набитая” частота 2.4MHz,
нет подтверждения доставки
ZigBee — стандарт только
до транспортного уровня
(несовместимость оборудования)
Контроллеры Z-Wave
Fibaro Home Center 2 — 27,500
MiCasa Verde Vera 3 — 12,500
MiCasa Verde Vera Lite — 7,900
Raspberry Pi + RaZberry — 6,600
Z-Way для Windows — 4,400
Z-Way для Windows
USB-стик и ПО, позволяющие сделать из
любого компьютера Z-Wave контроллер
(пт-с-с... секрет...) стик прекрасно работает
и на других платформах ;)
RaZberry
Полноценный контроллер домашней
автоматизации на базе Raspberry Pi,
оснащённый GPIO-модулем Z-Wave
...по лучшей цене
Самое интересное — внутри
3 публичных API
5 демонстрационных UI с открытым
кодом, в том числе, для iOS
Как устроена сеть Z-Wave
Ноль или больше контроллеров
До 232 устройств в одной сети
Большинство устройств —
ретрансляторы
Как “видно” устройства сети
1 физическое устройство (device)
1 и больше логических устройств (instance)
несколько классов команд
(command classes)
Дерево Z-Wave
JSON-дерево, содержащее актуальную
информацию о сети Z-Wave и доступное
из любого нашего API
{
"controller": {...}
"devices": {
"0": {
"instances": {
"0": {
"commandClasses": {
"64": {...}, ...
}
}, ...
}
}, ...
}
}
API #1 — JavaScript-движок
на базе v8
позволяет написать собственный движок
автоматизации и манипулировать деревом
Z-Wave напрямую
работает на контроллере
может управляться через API #2
API #2 — ZWaveAPI
REST-like API (http), экспортируещее дерево,
обновления к нему и позволяющее запускать
javascript-код, переданный “снаружи”, в том
числе, в виде callback-ов
http://host:8083/ZWaveAPI/*
API #2 — /ZWaveAPI
/Data/<0|$ts>
/Run/devices[$D].instances[$I].commandClasses[$C].<Get()|Set()>
/Run/
API #2 — Mini UI
http://github.com/Z-Wave-Me/z-way-mini-ui
Открытый код, использующий ZWaveAPI
Легко разобраться и начать
экспериментировать
API #3 — Z-Way Home
Automation Engine
Высокий уровень абстракции, практически
не связанный с “физикой” сети
Коммуникация через асинхронную
шину сообщений
Собственные сообщения разработчика
API #3 — Z-Way Home
Automation Engine
Сделан на базе API #1,
как пример собственного
скрипта автоматизации
Расширяемая открытая
модульная система
JavaScript
API #3 — Z-Way Home
Automation Engine
Постоянно пополняемая коллекция
работающих модулей-примеров
AutoOff, BatteryPolling, Cron...
API #3 — Z-Way Home
Automation Engine
AutomationController
EventLog
ZWaveGate
API #3 — Z-Way Home
Automation Engine
http://github.com/Z-Wave-Me/home-automation
Полностью открытый код
Пулл-реквесты и энтузиасты — Welcome!
Григорий Ситнин
JavaScript-архитектор
sitnin@z-wave.me
www.z-wave.me

More Related Content

Григорий Ситнин Z-Wave.me

  • 2. История вопроса Форум “Apps4All” — 2013 Запуск Z-Wave.Me — 2010 Создание Z-Wave Alliance — 2005
  • 3. Несколько знакомых названий Sigma Designs, Dune HD, LG, Mitsumi, Motorolla, NEC, Sharp, Technicolor,Verizon, ZyXEL, D-Link... ...и ещё более 200
  • 4. Почему Z-Wave? Не требует ремонта для установки Устройства хорошо выглядят или не видны вовсе Сертифицированная в России частота 869MHz
  • 5. Конкуренты 443MHz — тотальный vendor lock, слабая маршрутизация EnOcean — “набитая” частота 2.4MHz, нет подтверждения доставки ZigBee — стандарт только до транспортного уровня (несовместимость оборудования)
  • 6. Контроллеры Z-Wave Fibaro Home Center 2 — 27,500 MiCasa Verde Vera 3 — 12,500 MiCasa Verde Vera Lite — 7,900 Raspberry Pi + RaZberry — 6,600 Z-Way для Windows — 4,400
  • 7. Z-Way для Windows USB-стик и ПО, позволяющие сделать из любого компьютера Z-Wave контроллер (пт-с-с... секрет...) стик прекрасно работает и на других платформах ;)
  • 8. RaZberry Полноценный контроллер домашней автоматизации на базе Raspberry Pi, оснащённый GPIO-модулем Z-Wave ...по лучшей цене
  • 9. Самое интересное — внутри 3 публичных API 5 демонстрационных UI с открытым кодом, в том числе, для iOS
  • 10. Как устроена сеть Z-Wave Ноль или больше контроллеров До 232 устройств в одной сети Большинство устройств — ретрансляторы
  • 11. Как “видно” устройства сети 1 физическое устройство (device) 1 и больше логических устройств (instance) несколько классов команд (command classes)
  • 12. Дерево Z-Wave JSON-дерево, содержащее актуальную информацию о сети Z-Wave и доступное из любого нашего API
  • 13. { "controller": {...} "devices": { "0": { "instances": { "0": { "commandClasses": { "64": {...}, ... } }, ... } }, ... } }
  • 14. API #1 — JavaScript-движок на базе v8 позволяет написать собственный движок автоматизации и манипулировать деревом Z-Wave напрямую работает на контроллере может управляться через API #2
  • 15. API #2 — ZWaveAPI REST-like API (http), экспортируещее дерево, обновления к нему и позволяющее запускать javascript-код, переданный “снаружи”, в том числе, в виде callback-ов http://host:8083/ZWaveAPI/*
  • 16. API #2 — /ZWaveAPI /Data/<0|$ts> /Run/devices[$D].instances[$I].commandClasses[$C].<Get()|Set()> /Run/
  • 17. API #2 — Mini UI http://github.com/Z-Wave-Me/z-way-mini-ui Открытый код, использующий ZWaveAPI Легко разобраться и начать экспериментировать
  • 18. API #3 — Z-Way Home Automation Engine Высокий уровень абстракции, практически не связанный с “физикой” сети Коммуникация через асинхронную шину сообщений Собственные сообщения разработчика
  • 19. API #3 — Z-Way Home Automation Engine Сделан на базе API #1, как пример собственного скрипта автоматизации Расширяемая открытая модульная система JavaScript
  • 20. API #3 — Z-Way Home Automation Engine Постоянно пополняемая коллекция работающих модулей-примеров AutoOff, BatteryPolling, Cron...
  • 21. API #3 — Z-Way Home Automation Engine AutomationController EventLog ZWaveGate
  • 22. API #3 — Z-Way Home Automation Engine http://github.com/Z-Wave-Me/home-automation Полностью открытый код Пулл-реквесты и энтузиасты — Welcome!