...

четверг, 6 марта 2014 г.

Как мы доводили умную розетку до уровня массового продукта

Продолжаю рассказывать про разработку железа у нас. Итак, розетка. Умеет включаться и выключаться по команде, имеет датчик температуры.

Ситуация опять на первый взгляд достаточно простая: есть готовое устройство, в целом понятно, как оно работает — но на массовый рынок оно не вышло. Слишком сложное, непонятное и хлопотливое в обычном использовании для человека без IT-образования. Да и стоит довольно много. Хочется удобнее, проще, понятнее и дешевле.




Серийная модель в разборе. Основные вещи: корпус, сама розетка, плата контроля напряжения с конденсатором, плата с контроллером, радиомодуль с антенной, SIM-слот.


В отличие от трекера, где нам пришлось очень много работать с железом, розетки у нашего партнёра-производителя уже были «в форме» и, в целом, отлично себя показали. Основные проблемы крылись в ПО, причём как низкоуровневом, так и высокоуровневом.


Сеть розеток




Конечно, сразу захотелось избавиться от SMS-канала. Обычные розетки отправляют и принимают SMS сами. Это не очень надёжно и довольно дорого для владельца. Значит, мы совершенно со спокойной совестью удешевляем использование за счёт применения GPRS. Это уже режет затраты для владельца почти втрое.

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


То есть введением промежуточного сервера-посредника мы добились сразу трёх важных эффектов:



  • Розетка стала дешевле в эксплуатации (мы смогли обозначить фиксированные 99 рублей в месяц вместо непонятных затрат).

  • Мы получили возможность «накручивать» любые скрипты поверх железа без модификации этого железа.

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




Важным фактором перехода с SMS-отправки с самой розетки до GPRS-связи с сервером стало ещё и то, что при использовании большого количества устройств в многолетней перспективе (года через три-четыре, когда их, возможно, будет сотни тысяч на район), мы создадим проблему перегрузки SMS-канала. На рынке был и вариант GPRS-розетки, но по стоимости покупки и эксплуатации получалось почти в два раза выше, чем хотели мы.

Функционал ПО




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

Итак, мы вынесли почти всю логику на сервер. Сервер умеет следующие вещи:



  • Отдаёт команды розетке, убеждается, что розетка отработала. Аналогично — для других прямых команд.

  • Реализован интерфейс создания расписания и реализация отправки команд по наступлению заданного времени.

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




Интерфейс настройки расписания и скриптов




Лог температуры в нашем офисе.


Тесты




Что продукт станет востребован, мы с радостью поняли почти сразу. Дело в том, что первым пользователем устройства стал наш программист WEB-интерфейса, который не раздумывая воткнул одну перед своим сервером. Как он объяснил — это самый простой способ удалённо его перезагрузить.

Все бета-тестеры сразу вспоминали про свои дачи. После пары слов про то, что хорошо бы получить идеи использования, связанные с термодатчиком, в программу тестирования неожиданно ворвался сразу директор нашего филиала. «У меня в прошлом году на даче замёрзли трубы — давайте прототип» — и взял одно устройство. Он же стал самым активным бета-тестером, потому что трубы на даче его волновали довольно сильно. Постоянно писал примечания, объяснял, что именно хочется поменять в интерфейсе и так далее.


Ближе к зиме мы поставили прототипы у себя в офисе и настроили на включение обогревателей за 1 час до начала рабочего дня. Оказалось очень удобным — тепло, и никакого лишнего расхода энергии на ночь. Есть пара моментов — стиральная машина вряд ли включится по подаче питания, так как большая часть моделей имеет свой программатор и требует дополнительного ручного нажатия на кнопки для старта. Также, например, ведут себя интеллектуальные нагреватели (с пультом управления).


Смотрели и на краш-тесты — розетка должна переживать аварийные ситуации и сообщать об этом. Соответственно, в финал вошли следующие функции:



  • Защита от короткого замыкания обеспечивается стабилитронами.

  • При любой нештатной потенциально опасной ситуации розетка размыкает цепь (на входе питания).

  • Энергии после отключения питания хватает на 15 секунд работы радиомодуля и платы. Поскольку GPRS-сессия открыта постоянно, этого времени вполне хватает на отправку аварийного сигнала на сервер, чтобы он уведомил владельца о проблеме.




Учитывая, что мы всё равно работаем с термодатчиком, пользователи попросили собирать график температуры в личном кабинете. Это было совсем просто, но очень интересно.

Итог




Стоимость устройства — 2700 рублей, абонплата — 99 рублей в месяц (туда входит неограниченное количество SMS-оповещений).


  • Мощность подключаемых приборов: до 3 кВт.

  • Нагрузка на выходе: до 16А – постоянная нагрузка, до 70А – кратковременная нагрузка.

  • Собственное потребление: 110-180mA.

  • Автономная работа на конденсаторе 15 секунд.

  • Защита от короткого замыкания.


Вот что мы получили от юзабилистов:



В целом — продукт очень понятен и с технической стороны нареканий не имеет. Тем не менее, обычным пользователям освоить его с первой попытки затруднительно. Главные шаги – нужно дорабатывать web-интерфейс. Мы уже после этих результатов поправили инструкцию по установке, изменили немного интерфейс, реализовав пошаговую регистрацию, и свели всё управление на одну вкладку. Пользователям понравилось больше. Также мы решили не делать управление устройством через IVR, а планируем делать мобильные приложения вместо этого.


P.S. Розетка сейчас продаётся в Петербурге и Калинингаде, в ближайшее время — по всему Северо-Западному региону.


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий