Умный дом под windows

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

image

В итоге получилась система, сочетающая включение/выключение света как с помощью выключателей, так и через интернет — с помощью кнопок на веб-страничке.
Как это получилось — читайте под катом.

Составляем план

Для начала я, побегав с рулеткой и бумажкой по дому, нарисовал план квартиры, а затем построил 3D модель квартиры в программе SweetHome 3D. Не скажу, что получилось идеально, но представление о квартире дает. Кому интересно, вот

фейл

файл проекта.
План был красиво отрендерен, и несколько часов мы с женой

отбирали друг у друга мышку

думали, где какой выключатель должен стоять, и чем управлять. Большим плюсом была возможность управления одной лампой с нескольких выключателей, поэтому было решено отойти от стандартной модели «одна комната — один выключатель» и расположить выключатели в тех местах, в которых человек проводит большую часть времени — около компьютера, кровати и дивана :)

Если интересно, вот план

image

И рендер

image

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

image

Некоторые пояснения к картинке. Светильники и нагрузки обозначены красными надписями, управляющие элементы — синими.
Свет кухни и пульт №1 — это как раз то, о чем я рассказывал в предыдущем топике.

image

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

image

Вентилятор, хоть и не является освещением, все равно отмечен на плане — он управляется диммируемым блоком(на максимальной мощности слишком шумит).

А теперь мы попробуем со всей этой фигней взлететь

Для претворения этого дерзкого плана в жизнь нам понадобится…

image

Много-много коробочек. Точнее, не их, а их содержимого:

image

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

image

Внутри — диск с программой и сам передатчик.

image

Само-собой, надо разобрать.

image

Внутри — Attiny45 в качестве USB-интерфеса, и PIC12F675:

image

Адаптер определяется как HID-устройство, поэтому работает без драйверов(точнее с системными). Конечно, без программы не обойтись, но для линукса это определенно плюс, никакого kldload noolite.so. :)
Еще — карманный пульт-передатчик.

image

С 4 кнопками, 1 из которых служит для привязки-отвязки(D), 2 — включения-выключения и регулировки яркости(A,B), и еще одна — сценарная().

image

Кстати, с пультом очень удобно проверять работу при подключении всего этого добра, потому что настенный выключатель не так удобно таскать в кармане, и кнопка привязки не такая удобная.
Разберем, для чего необходимо выкрутить 3 винта на обратной стороне:

image

И аккуратно разделяем его на две половинки:

image

Вот плата поближе:

image

Контроллер — PIC16F630.

image

Все остальное без изменений, разве что добавился новый тип выключателей(слева) — с тремя сценарными кнопками.

image

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

image

Устанавливаем

Вместо диммера вентилятора(да-да, с моими любимыми клеммами):

image

И закрываем розеткой:

image

В разрез провода освещения:

image

Провода выключатели соединяем между собой и замуровываем в стену — они нам больше не понадобятся.
Блок временно приклеиваем к потолку термоклеем.

image

Не обращайте внимания на потолок — у меня уже год вялотекущий ремонт, как только закончу ванну — там будет натяжной потолок.
Правда, силовой блок придется перенести куда-нибудь, потому что для настройки нужен физический доступ.
Еще один — в люстру в зале:

image

И блок — в настенный светильник, это будет ночник:

image

После этого настала очередь выключателей. Тот, который на кухне — вы уже видели.

image

В зале, над диваном:

image

Еще один — около компьютера, чтобы не вставать лишний раз:

image

Около кровати:

image

И около ванной:

image

Последний выключатель занял свое место на входной двери:

image

Как оказалось, очень удобно, выходя из квартиры — выключить все освещение, чтобы оно не светилось зря, а приходя обратно — с порога включить на кухне и в зале — чтобы не бродить в потемках с пакетами.
Сервер(полуживой x120e без клавиатуры) занял свое почетное место в ящике тумбы (потому что шумит зело):

image

Управляем с компьютера

Скачиваем и устанавливаем программу для управления контроллером. Втыкаем в компьютер адаптер управления.
Запускаем программу, нажимаем кнопку настройки, и привязываем каналы к силовым блокам. На самом деле наоборот — привязываем силовые блоки к каналам — в память блоков записывается уникальный адрес адаптера, для того, чтобы он не спутал его с адаптером соседа.

image

Процедура проста — нажимаем кнопку на силовом блоке, нажимаем «Привязка» в программе, после того как светодиод на блоке начал мигать быстро — подтверждает привязку еще раз нажав на кнопку блока, и выходим из режима привязки — нажимаем кнопку еще раз. Повторяем для всех блоков. Это надо сделать один раз, и при смене компьютера делать не надо — настройки сохраняются в силовых блоках. Максимальное число каналов — 8 штук.

image

Однако, такое управление с компьютера недостаточно функционально, и подходит, пожалуй, только для управления нагрузками — светотехникой, например. Ну, там, включить стробоскоп, выключить световую голову, включить прожектор, включить подсветку сцены, выключить световую заливку, включить лазер. Но не для умного дома — кому захочется каждый раз подходить к компьютеру, включать программу и тыкать мышкой?
Для нормального применения в умном доме разработчики предлагают открытое API(для windows — запуск программы с параметром -api, для остальных операционных систем — передача посылок напрямую HID-устройству).
А в качестве красивой панели управления — можно использовать проект MajorDoMo (о нем уже писали на хабре, а сам разработчик присутсвует на хабре — Jey).

Установка MajorDoMo и настройка в качестве панели управления для Windows

Установка MajorDoMo и настройка в качестве панели управления для Windows

Идем на страницу загрузки, и скачиваем последнюю версию системы. Устанавливаем (надеюсь, эта стадия вопросов не вызовет).
После запуска MajorDoMo (Пуск-Программы-MajorDoMo или c:/_majordomo/start.bat, кстати, внесите его сразу в автозапуск — сам запускаться не будет) переходим в браузере на страничку системы — localhost или по ip адресу, у меня это 192.168.1.104. В верхнем углу нажимаем на ссылку «Панель управления», заходим под стандартным логином admin/admin.
В панели управления заходим в раздел сценарии(слева, в блоке «Обьекты»), и создаем новый сценарий(если у вас несколько блоков, то можно сначала создать категорию для сценариев — Категории — Добавить категорию).
Называем его, допустим, hall_light, выбираем ранее созданную категорию, а в коде пишем следующее:

if ($params['VALUE']) {
 safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -on_ch5');
   sleep(1);
} else {
 safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -off_ch5');
   sleep(1);
} 

Согласно описанию команд программы управления — ключ api указывает на то, что программа запускается без графического интерфейса, ключи on_ch5 и off_ch5 — соответственно, включение и выключение нагрузки на 5 канале. Еще есть ключ sw_ch5 — он переключает состояние нагрузки, т.е. была включена — выключится, и наоборот.

image

Сохраняем сценарий, нажав кнопку «Добавить» под окном редактора. Создаем сценарии для всех каналов, которыми хотим управлять.
Переходим в пункт «Меню управления»

image

Нажимаем «добавить новый раздел», обзываем его как-нибудь, внизу жмем «добавить».

image

Страница перегружается, появляется вот такая менюшка, там же, внизу страницы. Добавляем новый дочерний пункт, обзываем его, в пункте «Тип» выбираем «Выключатель», а в пункте «Сценарий» — тот сценарий, который мы создали на предыдущем шаге. Сохраняем. Создаем выключатели для всех сценариев (для этого удобно пользоваться кнопкой «клонировать»).

Переходим в основной интерфейс, заходим в созданный раздел и видим сбоку удобную менюшку с переключателями. Ее же можно увидеть, если перейти по адресу localhost/menu.html

image

Управление в Linux

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

Собираем программу управления:

sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev
cd /tmp
wget https://raw.github.com/pythonchik/nooLite/master/nooLite.c
gcc nooLite.c -o noolite -lusb-1.0 
sudo cp /tmp/noolite /usr/local/bin/
sudo chmod +x /usr/local/bin/noolite 

Взято вот тут.

Управлять вот так:

sudo noolite -api -on_ch 5 # Включить 5 канал
sudo noolite -api -off_ch 5 # Выключить 5 канал
sudo noolite -api -sw_ch 1 # Сменить состояние 1 канала
sudo noolite -api -set_ch 2 30 # Установить мощность второго канала в 30%

Конечно, первые пару раз логинится по ssh на сервер для того, чтобы выключить свет консольной командой прикольно, но

жена не оценила

душа требует чего-то простого. Сделаем веб-морду. Ну, скорее веб-мордочку.

Код на php, который умеет принимать три параметра и запускать программу управления:

<?
$channel=($_GET['channel']);
$command="-".($_GET['command'])."_ch";
$level=($_GET['level']);
exec("noolite -api $command $channel $level");
?>

Создаем файл в корне веб-сервера, обзываем его index.php, копируем в него вышеприведенные строки, а ниже — ссылки, которые будут исполнять роль кнопок.

<a href="?channel=5&command=on" >Включить основной свет</a>
<a href="?channel=5&command=off" >Выключить основной свет</a> 

Добавляем CSS по вкусу. Получается что-то такое:

image

Скучный код


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>NooLite control panel</title>

<style type="text/css">
.light {
    -moz-box-shadow:inset 0px 1px 0px 0px #ffffff;
    -webkit-box-shadow:inset 0px 1px 0px 0px #ffffff;
    box-shadow:inset 0px 1px 0px 0px #ffffff;
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ededed), color-stop(1, #dfdfdf) );
    background:-moz-linear-gradient( center top, #ededed 5%, #dfdfdf 100% );
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dfdfdf');
    background-color:#ededed;
    border:2px solid #dcdcdc;
    display:inline-block;
    color:#8a8a8a;
    width:200px
    min-width: 200px
    font-family:arial;
    font-size:14px;
    font-weight:bold;
    padding:7px;
    text-decoration:none;
}.light:hover {
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #dfdfdf), color-stop(1, #ededed) );
    background:-moz-linear-gradient( center top, #dfdfdf 5%, #ededed 100% );
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dfdfdf', endColorstr='#ededed');
    background-color:#dfdfdf;
}.light:active {
    position:relative;
    top:1px;
}


.dark {
    -moz-box-shadow:inset 0px 1px 0px 0px #dedede;
    -webkit-box-shadow:inset 0px 1px 0px 0px #dedede;
    box-shadow:inset 0px 1px 0px 0px #dedede;
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #969496), color-stop(1, #a5a6a3) );
    background:-moz-linear-gradient( center top, #969496 5%, #a5a6a3 100% );
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#969496', endColorstr='#a5a6a3');
    background-color:#969496;
    border:2px solid #bebfbd;
    color:#ffffff;
    width:200px
    font-family:arial;
    font-size:14px;
    font-weight:bold;
    padding:7px;
    text-decoration:none;
}.dark:hover {
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #a5a6a3), color-stop(1, #969496) );
    background:-moz-linear-gradient( center top, #a5a6a3 5%, #969496 100% );
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#a5a6a3', endColorstr='#969496');
    background-color:#a5a6a3;
}.dark:active {
    position:relative;
    top:1px;
}

</style>
<head>
<body>
<h1>NooLite control light panel</h1>

<div>
<p><h3>Зал:</h3></p>
<p>
<a href="?channel=5&command=on" target="invisible" class="light">Включить основной свет</a>
<a href="?channel=5&command=off" target="invisible" class="dark">Выключить основной свет</a> 
</p>
<p><h3>Кухня:</h3></p>
<p>
<a href="?channel=3&command=on" target="invisible" class="light">Включить свет №1</a>
<a href="?channel=3&command=off" target="invisible" class="dark">Выключить свет №1</a> 
</p>
<p>
<a href="?channel=4&command=on" target="invisible" class="light">Включить свет №2</a>
<a href="?channel=4&command=off" target="invisible" class="dark">Выключить свет №2</a> 
</p>
<p><h3>Туалет:</h3></p>
<p>
<a href="?channel=2&command=on" target="invisible" class="light">Включить свет</a>
<a href="?channel=2&command=off" target="invisible" class="dark">Выключить свет</a> 
</p>
<p>
<a href="?channel=1&command=on" target="invisible" class="light">Включить вентиляцию</a>
<a href="?channel=1&command=off" target="invisible" class="dark">Выключить вентиляцию</a> 
</p>
<iframe name="invisible" style="border:0; width: 0; height: 0;"></iframe>


</body>
</html>

<?
$channel=($_GET['channel']);
$command="-".($_GET['command'])."_ch";
$level=($_GET['level']);
exec("noolite -api $command $channel $level");
?>

Теперь все отлично, но чего-то не хватает. Неудобство — то, что при таком использовании устройство, которое показывает страничку, обязательно должно находиться в домашней сети. А если это телефон, на котором выключен Wi-Fi?
Разблокировать, включить WiFI, дождаться включения, зайти на страничку, нажать кнопку, выключить WiFI…

Настраиваем доступ из интернета

Модифицируем немного код для того, чтобы нельзя было выполнить произвольный код, передав нужный GET-параметр.

Острожно, страшнейший быдлокод. Пишу на PHP второй раз в жизни

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

<?
if(isset($_GET['channel']) && $_GET['channel'] == '1'){
$channel=($_GET['channel']);
}
if(isset($_GET['channel']) && $_GET['channel'] == '2'){
$channel=($_GET['channel']);
}
if(isset($_GET['channel']) && $_GET['channel'] == '3'){
$channel=($_GET['channel']);
}
if(isset($_GET['channel']) && $_GET['channel'] == '4'){
$channel=($_GET['channel']);
}
if(isset($_GET['channel']) && $_GET['channel'] == '5'){
$channel=($_GET['channel']);
}

if(isset($_GET['command']) && $_GET['command'] == 'on'){
$command="-".($_GET['command'])."_ch";
}
if(isset($_GET['command']) && $_GET['command'] == 'off'){
$command="-".($_GET['command'])."_ch";
}
if(isset($_GET['command']) && $_GET['command'] == 'set'){
$command="-".($_GET['command'])."_ch";
}

if(isset($_GET['level']) && $_GET['level'] == '0'){
$level=($_GET['level']);
}
if(isset($_GET['level']) && $_GET['level'] == '20'){
$level=($_GET['level']);
}
if(isset($_GET['level']) && $_GET['level'] == '40'){
$level=($_GET['level']);
}
if(isset($_GET['level']) && $_GET['level'] == '60'){
$level=($_GET['level']);
}
if(isset($_GET['level']) && $_GET['level'] == '80'){
$level=($_GET['level']);
}
if(isset($_GET['level']) && $_GET['level'] == '100'){
$level=($_GET['level']);
}

exec("noolite -api $command $channel $level");

Остальная страница остается без изменений. Для дальнейшего нам потребуется любой сервер с белым IP, и возможностью доступа по SSH. Настраиваем проброс портов.
На внешнем сервере выполняем:

echo "GatewayPorts=yes" >>  /etc/ssh/sshd_config

На локальном сервере(в который подключен адаптер, и на котором веб-сервер слушает порт 80) выполняем:

ssh vvzvlad@servername -R 8080:localhost:80 

Теперь, открыв страницу http://servername:8080/ мы увидим ту же самую локальную страницу, доступную из интернета.Время срабатывания команды — около секунды.

Последний штрих — защищаемся от обрыва соединения(на локальном сервере):

cd ~/.ssh/
sudo ssh-keygen -t dsa #генерируем ключ для входа без пароля
scp id_dsa servername:~/.ssh/authorized_keys #копируем его на сервер
echo "PubkeyAuthentication yes" >> /etc/ssh/ssh_config
ssh servername -t echo "PubkeyAuthentication yes" >> /etc/ssh/ssh_config #разрешаем логин по ключу

И помещаем в автозапуск любым удобным вам способом:

autossh vvzvlad@servername -R 8080:localhost:80

Вообще, компьютер тут не нужен, для «управления через веб» хватит любого роутера с USB(благо, они все сейчас работают на линуксе). Делается абсолютно тоже самое — собирается програмка, пишется настраиваемый интерфейс(даже php не надо, можно вполне обойтись любым языком, или даже bash, исполняемым через CGI), и настраивается проброс порта на единый сервер(от него не требуется ничего, кроме как работать в качестве туннельного сервера и авторизовывать пользователя — чтобы по ошибке свет не выключали, набрав не тот адрес). Пользователь получает маленькое устройство без вентилятора, которое обеспечивает управление через веб-интерфейс в локальной сети, а при регистрации на сайте производителя — личную веб-страничку с авторизацией по паролю. Логинишся — и получаешь возможность управления нагрузками из любого места.

Пишем приложение для Android

Ну как, пишем. Ни строчки кода написано не было, не считая ссылок. Если это кому-то интересно, я лучше напишу отдельную статью, чем буду тут еще простыню делать. Коснусь только основных моментов:
Идем на beta.appinventor.mit.edu, создаем новое приложение. Закидываем в форму несколько кнопок, чтобы получилось нечто такое:

Не забываем добавить компонент Web. Жмем кнопку «Open in block editor». Скачиваем файл, запускаем его(нужна джава).
Перетаскиванием блоков по экрану и соединением их, добиваемся того, чтобы нажатие каждой кнопку приводило к запросу на соответствующий адрес. Как-то так:

Потом копируем программу на телефон(Package for phone — download to this computer). Запускаем.

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

Делаем световой будильник или управляемый ночник

Существует целый класс устройств, чье предназначение заключается в том, чтобы в определенное время плавно начать поднимать яркость светильника — световые будильники. Так как яркость лампы поднимается плавно, и в течении длительного времени (как правило, от 30 минут до часу), то яркий свет не бьет по глазам, а позволяет спокойно проснуться. Производит такие будильники, например, филипс. А мы чем хуже? Достаточно немного лишь написать небольшой скрипт.

Тоже не самый оптимальный код. Смотреть на свой страх и риск

#!/bin/bash
channel=8 #канал ночника
s=0
case $1 in
"inc")
i=0
e=100
[[ $4 == v ]] && echo Шагов: $[100/$3], Время работы $[$2*100/$3] секунд

while [ $i -lt $e ]
do
  noolite -api -set_ch $channel $i
  i=$[$i+$3]
  s=$[$s+1]
  sleep $2
  [[ $4 == v ]] && echo Шаг $s, текущая яркость: $i
done
[[ $4 == v ]] && echo Конец программы.
exit 1
;;
"dec")
i=100
e=0
[[ $4 == v ]] && echo Шагов: $[100/$3], Время работы $[$2*100/$3] секунд
while [ $i -ge $e ]
do
  noolite -api -set_ch $channel $i
  i=$[$i-$3]
  sleep $2
  s=$[$s+1]
  [[ $4 == v ]] && echo Шаг $s, текущая яркость: $i
done
[[ $4 == v ]] && echo Конец программы.
exit 1
;;
"help")
echo "noolite-candle [inc,dec] second step v"
echo "inc - постепенное увеличение яркости"
echo "dec - постепенное уменьшение яркости"
echo "second - промежуток между измениями яркости в секундах"
echo "step - шаг изменения яркости (1-100)"
echo "v - показывать отчет по каждому изменению"
echo "например noolite-candle inc 2 1 - увеличение яркости с 0 до 100 с шагом в 1(1,2,3,4...) каждые 2 секунды. Время работы 200(2*100) секунд."
exit 1
;;
*)
echo "Используйте параметр help для получения справки"
exit 1
;;
esac

Как им пользоваться — ясно из кода, или из встроенной справки, если запустить скрипт с параметром help.
Например, если нам надо проснуться в 9 утра, то его следует запустить в 8.30 с такими параметрами:

./noolite-candle inc 18 1 

Или в 7 утра, вот так:

./noolite-candle inc 36 1 

При такой команде яркость будет постепенно нарастать в течении часа.

Тут видны резкие изменения яркости, потому что была использована команда noolite-candle inc 1 10 — т.е. за один шаг яркость увеличивалась на 10%. Если принять за шаг 1%, то изменение яркости очень плавное.
И конечно, в качестве «ночника» может выступать сколько угодно светильников, или даже люстра, если в ней лампы накаливания или диммируемые энергосберегайки.

Плюсы

  • Стоимость

Всего было использовано:
1 адаптер для компьютера — PC118 — $50
5 силовых блока SL-111-200 (для обычных светильников) — $17,5*5
1 силовой блок SN-111-200 (для ночника) — $17,5
1 силовой блок ST-111-200 (для вентилятора) — $17,5
3 пульта управления PU-313-1 — $16,1*3
3 пульта управления PU-312-1 — $16,1*3
1 пульт-брелок PN313-1
Таким образом, затраты составили: 50+17.5*7+16.1*6=$270

Аналогичное по характеристикам электроника протокола X10, судя по расчетам на сайте (5 точек управления освещением, 2 точки с изменением яркости, управление с настенных беспроводных выключателей, управление с компьютера и телефона) обойдется в 24140 рублей.
Конечно, надо учесть еще стоимость компьютера-сервера, но, думаю, возможность найти старый компьютер или ноутбук проблем не составляет.
Как видно, решение получилось довольно бюджетное.

  • Легкость в установке и настройке

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

  • Одновременная работа двух систем

Вместе с полноценным управлением с компьютера сохранилась возможность выключать и включать свет обычными выключателями, расположенными на тех же местах.

  • Возможность установки без переделки и расширяемость

Нет необходимости долбить стены, прокладывать управляющую проводку, или вести питание для каждой точки к щитку. Конечно, решение не такое надежное и гибкое, как «классическая» система умного дома — когда все потребители в виде освещения и систем подключаются напрямую к управляемым реле, расположенным в щитке, а выключатели по слаботочной проводке эти самые реле коммутируют. Подробнее — можно прочитать тут и тут. Но зато оно и не такое трудоемкое и дорогое.
К тому же, не надо продумывать план идеально заранее — в любой момент легко добавить еще один выключатель или блок управления. Легко забрать с собой при переезде.

Минусы

  • Сенсорные выключатели

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

  • Отсутствие обратной связи

Так как блоки не имеют никакого передатчика, только приемник — сказать о своем состоянии они не могут. Соответственно, панель управления на компьютере не знает о текущем состоянии — включена или выключена нагрузка, что ограничивает применение.

  • Малые возможности настройки.

Я уже об этом писал. При использовании сценарных выключателей — приходится занимать 2 кнопки из 3 только под «выключение-включение». Я бы добавил вторую функцию(например, на жест от одного выключателя к другому, или на двойной клик), или увеличил бы количество выключателей.

Итоги

Отличное решение начального уровня для построение системы управление освещением и нагрузками. Такое вполне себе «конструктор для взрослых». Хочешь — светильники через интернет включай, хочешь — ночник управляемый делай, хочешь — умный дом с голосовыми командами и включением света по расписанию.
Мне нравится :)

Если у вас нет аккаунта на Хабрахабре, вы можете читать и комментировать наши статьи на сайте BoxOverview.com

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Что вы ожидаете от умного дома (можно выбрать несколько вариантов)?

66.95% Ручное управление освещением локально или удаленно557

77.76% Автоматическое управление освещением (включение света при входе в комнату, регулировка в зависимости от времени суток и тд)647

79.33% Автоматическое управление бытовыми системами (кондиционер, теплый пол, вентиляция, и т.д.)660

50.48% Удаленное или автоматическое управление бытовой техникой — стиральные машины, роботы-пылесосы, телевизоры, чайники, печки, микроволновки и т.д.420

84.01% Сигнализация и видеонаблюдение с удаленным доступом. Датчики протечек, газа, дыма, пожара, проникновения699

63.46% Лог событий, включая аудио- и видео-записи.528

43.27% Общение с человеком — голосовые команды и ответы на них360

46.03% Системы авторизации — замена ключам. Доступ в квартиру по RFID, отпечаткам пальцев, паролю.383

74.4% Данные использования воды, электричества, газа. Расчет потребления, прогнозы, отображение для пользователя, и передача информации в обслуживающую организацию619

Проголосовали 832 пользователя. Воздержались 133 пользователя.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

В каком направлении двигаться разработчикам?

37.21% Обратная связь — возможность узнать статус нагрузки307

15.88% Тактильно-приятные выключатели, с кнопкой131

18.18% Панель управления для локальной сети и интернета150

18.55% Датчики движения153

10.18% Датчики температуры84

Проголосовали 825 пользователей. Воздержались 167 пользователей.

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

Вне зависимости от вашей компетенции с использованием устройств на Android или iOS, мы решили, что приложение на Windows должно быть обязательно. Упор при разработке делался на максимальную интуитивность и легкость управлением «умного дома» людям любого возраста.

«Умный дом» на Windows способен:

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

Любой ваш компьютер или ноутбук на Windows подойдет для использования приложения. Разработчики MiMiSmart учли все нюансы на стадии проектирования и сделали его интуитивно понятным, простым, но функциональным. Один клик, и ваш дом уже выполняет команду.

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

Сегодня собрать дом мечты возможно, на рынке уже есть множество компаний, которые предлагают потребителям «умные» устройства и программные обеспечения для него. Например, «Дом с Алисой» — это программное обеспечение для управления устройствами умного дома, разработанное компанией Яндекс. Этот инструмент предоставляет пользователям возможность легко и удобно контролировать различные аспекты их умного дома.

Источник: play.google.com / Превью приложения «Дом с Алисой»

Источник: play.google.com / Превью приложения «Дом с Алисой»

«Дом с Алисой» дает возможность управлять умным домом и всеми устройствами, доступными для подключения. Пользователи могут:

  • управлять своими устройствами с помощью голосовых команд через Алису, что делает процесс контроля простым и удобным;

  • программа поддерживает множество умных устройств, обеспечивая их интеграцию и централизованное управление;

  • интерфейс программы интуитивно понятен и не требует специальных навыков для начала работы.

Давайте разберемся, как настроить умный дом с Алисой на ПК. Спойлер: все просто и быстро. Главное — иметь бесперебойный доступ устройств к сети Интернет.

Обзор функционала программы «Дом с Алисой»

Источник: trashbox.ru / Иллюстрация приложения «Дом с Алисой»

Источник: trashbox.ru / Иллюстрация приложения «Дом с Алисой»

Программа предоставляет доступ к различным сценариям, которые можно легко изменять и адаптировать под свои нужды. Сценарий — это последовательность действий, которую вы сами можете задавать для умных устройств. Работают они по принципу «должно произойти что-то, чтобы сделать что-то». Например, вы сноб с английскими корнями и каждые «файв о-клок» любите проводить с чашечкой чая. Создайте сценарий, который будет запускать нагрев воды в 16:55 и традиционное чаепитие будет проходить точно в срок.

Настройка сценариев

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

Если вы успешно настроили первый сценарий, стоит обратить внимание на установку пауз между действиями. Это поможет обеспечить более плавное выполнение команд. Например, можно прописать паузу между включением света и запуском кофеварки.

Просмотр и планирование сценариев

Источник: datchikidoma.ru / Фразы для запуска сценарриев в «Дом с Алисой»

Источник: datchikidoma.ru / Фразы для запуска сценарриев в «Дом с Алисой»

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

Управление временем работы устройств

Источник: webdonsk.ru / Настройка умного дома

Источник: webdonsk.ru / Настройка умного дома

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

Установка «Дома с Алисой» на компьютер или ноутбук

Для установки приложения «Дом с Алисой» на Windows рекомендуется воспользоваться эмулятором, например, Nox App Player. Этот софт позволяет открывать мобильные приложения на портативный компьютер. Можете использовать его не только для того, чтобы включить расслабляющую музыку после руина катки в Dota 2, но и поставить любимые мобилки на компьютер.

Давайте пошагово пройдемся по процессу установки приложения на ваш компьютер:

  • Скачайте Nox App Player с официального сайта или из надежного источника.

  • Установите файл на ваш ПК, следуя инструкциям установщика.

  • Запустите Nox App Player.

  • Пройдите авторизацию с помощью вашей учетной записи Google.

  • Посетите раздел Play Маркета в Nox App Player. Используйте поиск, чтобы найти приложение «Дом с Алисой».

  • Зайдите на страницу приложения и приступите к его установке.

Источник: 4pda.to / Интерфейс Nox App Player

Теперь вам доступен весь функционал приложения «Дом с Алисой» на персональном компьютере. Настройте все процессы в доме под себя, чтобы сделать жизнь еще более комфортной.

Заглавное фото: rbc.ru

Управление умными аксессуарами и устройствами нам понадобится в «тихом» режиме с компьютера PC. Для решения этой задачи мы добавим веб-приложение на панель задач Windows. Для этого заходим в браузер (в нашем случае — это Google Chrome, также подойдёт Яндекс Браузер).

В адресной строке вводим адрес yandex.ru/quasar и переходим на сайт.

Изучаем страницу умного дома с Алисой в браузере и нажимаем кнопку «Войти» в правом верхнем углу.

Авторизуемся в учётке Яндекса. Подойдёт в том числе гостевая учётная запись, к которой предоставлен доступ в умный дом/офис.

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

Теперь нам необходимо, чтобы страница открывалась не на вкладке браузера, а как отдельное приложение. Для этого создаём ярлык. Для этого, в браузере Chrome, выполните следующее:

  • нажмите на три вертикальных точки в правом верхнем углу браузера
  • выберите раздел «Сохранить и поделиться»
  • нажмите на «Создать ярлык»

Браузер спросит как назвать приложение и потребует подтверждения на установку. Нажимаем на галочку «Открыть в новом окне» и после этого на «Установить».

Ярлык создан и открыт. Можем пока закрыть браузер (в нашем случае Chrome).

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

На момент написания этой статьи, у ярлыка от Яндекса, на наш взгляд, стоит не очень аккуратная квадратная иконка, в то время как давно приняты скруглённые края. Исправим это. Заходим в свойства ярлыка на рабочем столе, который должен появится после добавления из браузера.

Нажимаем на кнопку «Сменить значок…».

В окне смены значка нажимаем «Обзор…».

И у нас открывается окно Проводника, где можно посмотреть и открыть доступные ico-файлы. Видим один файл с квадратными углами.

Мы подготовили ряд png-иконок, которые вы можете скачать и самостоятельно конвертировать в ico-файлы:

  1. appicon1.png
  2. appicon2.png
  3. appicon3.png
  4. appicon4.png

Мы использовали сайт online-convert.com.

Добавляем готовые иконки в папку веб-приложения, открываем нужную и сохраняем свойства ярлыка.

Теперь иконка приложения на рабочем столе со скруглёнными краями. Открепляем установленное приложение с иконкой с квадратными углами с панели задач.

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

Тестируем. Пробуем. Работает. Обратите внимание, что для запуска и корректной работы веб-приложения, необходимо, чтобы была осуществлена авторизация под учётной записью Яндекса в браузере из которого производилась установка.


2024-07-19 01:08

Алиса и Яндекс

Если вы читаете эту статью, то есть вероятность того, что вы «наигрались» с готовыми решениями от вендоров и они перестали вас удовлетворять по тем или иным причинам. Но возможно вы попали сюда по каким-то иным соображениям, поэтому советую вам ознакомиться с предыдущей статьей цикла, описывающей возможные варианты построения своего умного дома. Вдруг вам понравятся другие пути.

А если вы все-таки решили погрузиться в мир Open Source решений, то мы постараемся раскрыть для вас некоторые важные аспекты этого направления.

Open Sourcе — в буквальном переводе означает «открытый код». Это означает, что разработчики не скрывают свой программный код, и его может модернизировать или использовать для своих целей абсолютно любой желающий. Естественно, эти программы являются бесплатными. Их разработкой обычно занимаются программисты-энтузиасты, которые, чаще всего группами, занимаются реализацией идей и превращают их в работоспособный продукт.

Конечно, эти программы можно использовать как для личного использования, так и в коммерческих целях. Обычно, его распространяют, базируясь на идеологии GNU GPL.

Плюсы и минусы

Ввиду того, что опенсорс продукты разрабатываются энтузиастами, у них есть свои плюсы и минусы:

ПлюсыМинусыБесплатноОткрытый код, который можно дорабатывать и изменятьЕго можно просто скачать и установить
Нерегулярность либо отсутствие обновленийОчень частые проблемы при обновлении (вылетают модули и система перестает работать)Проблемы с поддержкой
Отсутствие единого ответственного за продуктДовольно сложная установкаНастройка и внедрение занимают значительное времяТребуются навыки программирования и знание машинной логикиТребуется очень много дополнительной информации для настройки даже тех модулей, для которых существует подробная документация (форумы, чаты и общение со специалистами)

Плюс ко всему, у OpenSource проектов есть один огромнейший минус. Если основная группа разработчиков потеряла интерес к продукту, то он очень быстро «умирает», так как перестает развиваться. Такая же ситуация возможна, если лидер команды решает коммерциализировать продукт, или приходит инвестор, который вообще может закрыть проект или интегрировать его в свой. То есть конечный пользователь останется с тыквой и без туфелек.

Выбор системы

Как мы упоминали в более ранних статьях, у нас уже сформировался некий рейтинг используемых нашими пользователями бесплатных систем управления. Мы не будем рассказывать обо всех, но кратко опишем лидеров нашего рейтинга, чтобы вы понимали особенности каждого из них.

Home Assistant

Home Assistant — open source система автоматизации, написанная на языке Python3. Она очень активно развивается, выходят постоянные обновления и появляется поддержка очень большого количества новых устройств. Также она довольно простыми способами интегрируется с большинством популярных экосистем и в ней осуществляется поддержка популярных онлайн-сервисов. В рейтинге сообщества Sprut.ai она занимает первое место. 

Данную систему можно установить как на практически любой, достаточно производительный одноплатный ПК, так и на любой полноценный компьютер. 

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

Что касается особенностей системы, то одна из самых главных заключается в том, что система имеет два варианта — простой Home Assistant и Hass.io. Разница между ними в том, что в Hass.io есть раздел с аддонами, которые можно установить прямо из веб интерфейса. В простом Home Assistant такой возможности нет. Плюс к этому, есть еще один нюанс. Официальный образ от разработчика отличается от образов и вариантов установки на нашем портале тем, что у официального варианта нет полноценного доступа до хост-системы. В наших вариантах — доступ есть и он полноценный. Иногда это важно. Но некоторым может быть нет, поэтому они могут воспользоваться обычным вариантом установки, предлагаемым разработчиками. А что касается дополнительных настроек, то на нашем портале есть огромное количество информации на эту тему, которую вы можете с легкостью найти по тегу Home Assistant.

Пример внешнего вида интерфейса.Немного статей по данной системе, с которыми рекомендую ознакомиться.

Home Assistant, статья 1 (установка)

Home Assistant, статья 2 (базовая настройка).

Home Assistant, статья 3 (добавляем устройства)

Homebridge

Homebridge — сервер, написанный на Nodejs с использованием API Apple, который позволяет добавить устройства в ваш Дом, которые не имеют сертификацию и изначально не поддерживают интеграцию в Apple HomeKit. 

Благодаря слаженной работе разработчиков, на сегодняшний день, в систему интегрировано очень большое количество устройств.  На нашем портале вы можете найти очень много статей на тему Raspberry Pi, которые могут вам помочь в настройке и изучении этой системы.

Homebridge является кросс-платформенным решением, которое можно установить на Windows, Linux и Mac OS X.

Также участниками общества были сделаны образы для Raspberry Pi уже с установленными Homebridge Вариант 1 и Вариант 2.

MajorDoMo

MajorDoMo — система автоматизации, написанная на языке PHP. Система быстро развивается и так же, как и все системы, является OpenSource проектом. Имеет свою армию фанатов. Но чтобы настроить данную систему идеально под себя, потребуются немалые знания языка PHP. Хотя есть поддержка модульной структуры и большое количество готовых модулей. К тому же, в отличии от большинства продуктов, Мажордомо имеет очень мощную Российскую команду разработчиков.

Если вы хотите почитать больше материалов на эту тему, воспользуйтесь поиском по тегу MajorDomo на нашем портале.

ioBroker

ioBroker — еще одна система для построения умного дома, написанная на NodeJS как и Homebridge.

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

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

Что касается обычного использования системы для классического умного дома, то у нас на портале есть несколько интересных статей на эту тематику:

А если вы хотите почитать побольше, то можете воспользоваться тегом ioBroker на нашем портале.

Node RED

Node RED — визуальная среда программирования, использующая API и онлайн сервисы, соединяющая между собой исполнительные устройства. NodeRED можно установить на любую систему, главное, чтобы можно было установить NodeJS.

Так как данная система является визуальной, то тут Минимум кода и максимум визуальности. Система на нашем портале пользуется большой популярностью и имеет много статей.

Хотя малое количество кода — это не совсем правда. Чтобы создать нечто сложное, вам придется все равно писать и писать код. Для каждого блока в вашей блок-схеме.

Но система обладает значительным преимуществом перед остальными. Она может быть интегрирована с чем угодно.

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

Статьи по данной теме можно найти на нашем портале по тегу Node Red.

Domoticz

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

OpenHab

openHAB — это специальный сервер, который может работать на любом компьютере под управлением любой ОС (вы даже можете использовать RaspberryPi). Вся установка заключается в распаковывании дистрибутива сервера и установке Java машины. Далее начинается процесс настройки и созидания.

OpenHAB, по сравнению с предыдущим участником нашего рейтинга — ioBroker, имеет более современный интерфейс и насчитывает поддержку более 50 протоколов и типов устройств.

У системы есть свои плюсы и минусы, для описания которых понадобилось написать отдельную статью.

Но в целом — это довольно популярная система, которой многие с удовольствием пользуются.

Выбор железа

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

Различные модели Raspberry Pi

Дешевые неттопы

NAS от Synology

Выбор железа ограничен только вашей фантазией, но народ руководствуется прагматичными критериями.

Например, Raspberry Pi — это не очень дорого, потребляет мало электричества и обладает миниатюрным размером. Но производительность, для некоторых задач, может быть недостаточна. Да и флешка — достаточно ненадежное устройство для установки системы с постоянно обновляющимися базами данных. А решения с покупкой б/у-шного неттопа, за смешные деньги, имеют место быть. Причем с производительностью не возникает вообще никаких проблем. И хранение на SSD вполне себе оправдывает все. Ну а тем, кто владеет NAS от Synology — вообще повезло. Туда можно поставить все что угодно в Docker.

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

Выводы

Основной вывод — вам придется подтягивать свои навыки программирования. Придется читать много на английском языке, так как оказывается даже самые «безумные», на первый взгляд, автоматизации для вашего дома, кто-то уже придумывал и задача так или иначе была решена. Но придется продираться через обсуждения различных вариантов решений задачи, и они будут содержать значительные куски кода, которые вам надо будет переписывать под себя. Это не так сложно, как может показаться, но занимает много времени. Хотя это, скорее, полезный навык в сегодняшних реалиях, когда даже для простейших автоматизаций в HomeKit уже необходимо понимание машинной логики. Иначе никак.

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

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

Поэтому если вы все-таки решили остановить свой выбор на OpenSource решениях, то на данный момент, среди нашего сообщества, наибольшей популярностью пользуются 3 системы: Home Assistant, Homebridge и MajorDoMo.

Если вы хотите немного покодить, хотите хорошую поддержку большинства устройств, продаваемых на рынке, большое и дружное сообщество, которое вам всегда поможет, то ваш выбор — это Home Assistant.

Если перед вами стоит задача только сделать доступными ваши устройства в приложении Дом на вашем iPhone или iPad, то ваш выбор очевиден — HomeBridge. Возиться с кодом все равно придется, но намного меньше, чем в других вариантах.

Если вам нравится веб интерфейс, вы придерживаетесь классических подходов к визуализации, немного знаете язык программирования PHP и обладаете временем и терпением, то ваш выбор — MajorDomo.

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

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

Ну и если вы хотите программировать визуально, то для вас подходит NodeRed.

А вот если для вас определяющим выбором является голосовой ассистент, с помощью которого вы хотите управлять своим умным домом, то в принципе Open Source системы как раз являются лучшим выбором для интеграции, так как у них, обычно, есть поддержка нескольких ассистентов одновременно. И это огромный такой плюс для тех, у кого члены семьи пользуются, например, и Android и iPhone.

Home Assistant интегрируется с Яндекс Алисой, Siri и Google Assistant

HomeBridge — только Siri и Яндекс Алиса

OpenHAB — Яндекс Алиса, Google Assistant и Siri

MajorDomo — Яндекс Алиса, Google Assistant и Siri

ioBroker — Яндекс Алиса, Siri и Google Assistant

Domoticz — Siri и Google Assistant

NodeRED — вообще с чем угодно, зависит от того, как вы его ставите и с чем он взаимодействует.

Так что выбор за вами. Удачи!

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Ati radeon x800 gto windows 7
  • Отключить статистику windows 10
  • Установить viber на компьютер на русском для windows 7 без смартфона
  • Windows maps как удалить
  • Windows 8 online demo