**Постановка задачи**: Создание сложной автоматизированной системы на основе контроллера для управления различной периферией (электронные замки, двигателя, светодиодные ленты и прочая электроника). Создание данной системы потребовалась для **квест **комнаты, подобной [**этой**][1], но в городе **Хабаровск**. Наш квест в ином [сеттинге][2], но в целом имеет примерно тот же набор исполнительных механизмов: реле, замки, ленты, герконы и т.д. **Основные требования к системе:**
* **Надежность ** — при разработке сложных систем высока вероятность допустить трудно уловимые ошибки, чем больше код тем больше шанс пропустить ошибку и тем больше времени нужно на отладку, необходимо свести к минимуму вероятность некорректной работы.
* **Гибкость ** — возможность с минимальными временными затратами изменить логику работы
* **Функциональность ** — управление любым оборудованием и подключение любых сенсоров
![image][3] [Читать дальше →][4]
[1]:
http://geektimes.ru/post/264776/
[2]:
https://ru.wikipedia.org/wiki/Сеттинг
[3]:
https://habrastorage.org/getpro/habr/post_images/f8b/de4/970/f8bde49705cb630ec0ee5b53086aa5b4.png
[4]:
http://habrahabr.ru/post/269897/#habracut