Рулонные шторы - простая автоматизация

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 09 авг 2016, 11:24

kod.begemot огромное спасибо за ликбез. Мне нужно немножко повариться. Может через неделю или через год прибегу опять с вопросами новичка.
Ruslan для прототипа наверно ваш вариант с сервером предпочтительнее. Я просто программу на сервер еще не выбрал. Затеял тестирование...

В целом сейчас склоняюсь к выбору от потребностей: если решу управлять каждой рольшторой, то ESP и шаговые моторы. Если открытие закрытие по комнатам - то может от Мегадевайса двухпроводку на группу. У меня штор 10, есть о чем подумать :lol:

Не могу удержаться от вопроса: а если одинаковые моторы с двух сторон шторы засунуть? Будет реже пропускать шаговый двигатель и вероятность отлома зубцов в редукторе уменьшиться?
Последний раз редактировалось OlegJktu84 09 авг 2016, 12:22, всего редактировалось 1 раз.

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 09 авг 2016, 11:30

Мне кажется - индивидуальное управление шторами предпочтительнее. К примеру - в некоторые комнаты может солнце "заходить" в 1-2 окна, и их понадобится открыть/закрыть раньше...
Насчет двух моторов на штору - поддерживаю. Если места достаточно - то это хорошее решение, особенно для шаговых - их намного проще синхронизировать. Можно просто зеркально запаралелить обмоти.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 18 авг 2016, 20:52

kod.begemot писал(а):Мне кажется - индивидуальное управление шторами предпочтительнее. К примеру - в некоторые комнаты может солнце "заходить" в 1-2 окна, и их понадобится открыть/закрыть раньше...
Насчет двух моторов на штору - поддерживаю. Если места достаточно - то это хорошее решение, особенно для шаговых - их намного проще синхронизировать. Можно просто зеркально запаралелить обмоти.
Смиренный падаван просит kod.begemot о помощи.
В общем решил делать на ESP. Схватил ESP8266 Witty (прошивается как NodeMCU 1.0 ESP-12E)
Вот о ней
https://geektimes.ru/post/272364/
http://mysku.ru/blog/aliexpress/38586.html
Изображение
Ну и плюх. Прошивается она легко. Примеры для школьников сделал - работают. А дальше вилы!
Код многоуважаемого kod.begemot залил viewtopic.php?f=1&t=795&start=20#p17720.
Роутер ip плате дает.
И привет. Я то по наивности думал, что дальше методом тыка разберусь (думал есть веб морда типа как у МегаД). А фиг!
Ну почитал еще внимательно. Понял что у kod.begemot задействованы физические кнопки и концевик (геркон сверху).
Вопросы:
1) ESP8266 Witty вообще подойдет? У неё на ADC датчик света болтаится (я уже мысленно готов к его выпаиванию). RGB светодиод (GPIO 15 - красный, GPIO12 зеленый, GPIO13 синий). Кнопка вроде на 4 GPIO.
2) Как понять какие GPIO задействовать для драйвера мотора. У драйвера in1, in2, in3, in4 а GPIO у ESP какие это будут. (Я правильно понимаю что ULN2003 подключается напрямую к ESP и никого согласования уровней не требуется?)
3) Какие GPIO задействовать на кнопки вверх, вниз, датчик (геркон - концевик верхний).
4) Как управлять изделием из локальной сети? IP он получает, а что дальше не понятно...
UPD
5) Если у ESP Witty эти GPIO заняты под трехцветный светодиод - его нужно выпаивать или нет?
еще картинку нашел, на немецком текста в оригинале под ней много...
Изображение
Последний раз редактировалось OlegJktu84 18 авг 2016, 23:43, всего редактировалось 4 раза.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 18 авг 2016, 21:06

Хмм... Медитирую..
const int ender = 5;
const int motor_pin_1 = 14;
const int motor_pin_2 = 13;
const int motor_pin_3 = 12;
const int motor_pin_4 = 16;
Это номера GPIO pin - мотора? ender = концевик?
int buttonup = 2;
int buttondown = 4;
А это тогда GPIO кнопок?

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Рулонные шторы - простая автоматизация

Сообщение empenoso » 18 авг 2016, 21:30

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

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 19 авг 2016, 14:41

OlegJktu84 писал(а):Хмм... Медитирую..
...А это тогда GPIO кнопок?
Как то я упустил сообщения об ответах, увидел только сейчас...

Да, всё верно - пины мотора, концевика и кнопок.
В последней версии есть ещё и светодиоды, но это уже "плюшки".
Теперь по порядку на вопросы сообщения выше:
1. Думаю - подойдет. У самого такого нет, но пересечения по GPIO вижу только по светодиоду, да по кнопке - думаю не помешает. ADC у меня не используется в той прошивке, так что норм, выпаивать не надо, можно задействовать :)
2,3. вы уже сами ответили :)
4. да, ip получает, а потом, к примеру: "192.168.0.15/?open", "192.168.0.15/?close", "192.168.0.15/?stop"
5. ответил выше

А ещё устройство заточено у меня на взаимодействие с МЖД, и работает (коряво конечно написано, но действует) с объектами из класса "RollerBlind", если нужно - класс экспортирую и приложу.
Устройство при старте сообщает серверу, что оно стартовало, и если в мжд четко описано в свойстве текущее положение - открыто или закрыто - то сервер вызывает URL: "http://192.168.0.15/?timer", которая останавливает таймер в устройстве. таймер нужен для того, чтобы если ответа сервера не будет, и концевик при старте был не замкнут - штора будет автоматически открыта до срабатывания концевика - чтобы программа знала, в каком положении реально находится штора.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 19 авг 2016, 15:30

kod.begemot огромное спасибо! В том числе за оперативный ответ!!! Продолжу эксперименты.
Учитывая интерес молчаливого народа 27021 - просмотров у темы на 19.08.16. Я думаю все будут благодарны и за новые варианты кода (я нашел только тот на который ссылался viewtopic.php?f=1&t=795&start=20#p17720 ) и за обвязку для Мажордомо. И вообще за любые мысли по этому поводу.
PS Хотел позырить ваши решения для Мажордомо в Connect http://connect.smartliving.ru/top.html , но профиль не смог найти.

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 19 авг 2016, 15:39

Да, в коннект я пока не выгружался.. но обязательно выгружу.
По поводу кода свежего - пока в нем для вас смысла будет немного, т.к. он очень сырой, да и рассчитан на другое железо - драйвер мотора не ULN2003, а что то наподобии "A4988", что позволит упростить программу, да и железо тоже.
P.S. мотор приходится малость переделывать - из униполярного в биполярный, зато возрастает усилие, а значит и макс. скорость.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 19 авг 2016, 15:51

Будем с нетерпение ждать любых новостей.

Я вчера смотрел кто-как с ESP балуется. (Каюсь, искал альтернативный решения с шаговыми моторами). Нашел ESP Easy. Затачиваются под умный дом MQTT Domotiсz (немного пока не понял MQTT у Domotiсz особенный что ли?). А к сути: у них там железячный раздел есть http://www.esp8266.nu/index.php/Main_Pa ... 27n_Tricks
http://www.esp8266.nu/index.php/PCA9685
http://www.esp8266.nu/index.php/GPIO
Хотя мне кажется, что вот это для роль штор не прокатит:
"Servo motor control
To control a Servo Motor:

Код: Выделить всё

http://<ESP IP address>/control?cmd=Servo,<servo nr>,<pin>,<position>
We currently support a maximum of two servo motors so you can build a pan & tilt device if you like.

Example to set servo 1 on gpio-0 to a 90 degree position and servo 2 on gpio-2 to a 45 degree position:

Код: Выделить всё

http://<ESP IP address>/control?cmd=Servo,1,0,90 http://<ESP IP address>/control?cmd=Servo,2,2,45
"

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 19 авг 2016, 18:49

Да, это для серв - подойдёт только для управления жалюзи, открыть/закрыть, но и то не поднять. Стандартная серва градусов на 270, если память не изменяет, что для жалюзи - более чем...
А в нашем случае мы получаем автономное управление, а также и связь с сервером. Можно дописать и веб морду, можно будет и со смарта без сервера управлять... А если допилить (как я давно собираюсь) запись положения шторы в EEPROM - так и вообще красота :) Правда тут пишут что нет у ESP EEPROM, по большому счету...

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 20 авг 2016, 16:02

Достигнут частичный успех. Особенно хорошо работает сценарий бесконечного кручения на старте без концевика:
kod.begemot писал(а):.
...
Устройство при старте сообщает серверу, что оно стартовало, и если в мжд четко описано в свойстве текущее положение - открыто или закрыто - то сервер вызывает URL: "http://192.168.0.15/?timer", которая останавливает таймер в устройстве. таймер нужен для того, чтобы если ответа сервера не будет, и концевик при старте был не замкнут - штора будет автоматически открыта до срабатывания концевика - чтобы программа знала, в каком положении реально находится штора.
Однако мастер (Да будет его внимание к этому топику вечным!)
не открыл неопытному падавану прямого пути. (В бесконечной своей мудрости!)
отсылая к исконным текстам - цифре. viewtopic.php?f=1&t=795&start=20&sid=9c ... da7#p17720
Дабы облегчить путь юрлингов (которые безмолвно внимают словам сего топика, да хранится он вечно в книге бесконечной мудрости ab-log.ru!!! ),
недостойный падаван должен записать следующее:
http://ВАШ_IP/down (и отослать алкающих полного просветления к словам скрытых в цифре!) :P :P :P

Код: Выделить всё

  // Match the request
  go();  
  int val;
  if (req.indexOf("/down") != -1)
{    val = 0;
moveroll=1;
directionmotor=0;
if (loglevel > 0)
  Serial.println("Recived command to down");
}
  else if (req.indexOf("/up") != -1)
 {   val = 1;
moveupcommand();
if (loglevel > 0)
  Serial.println("Recived command to up");
}
 else if (req.indexOf("/stop") != -1)
 {   val = 1;
  motorstop();
  if (loglevel > 0)
    Serial.println("Recived command to stop");
kod.begemot - спасибо большущее!!! Работает!!! С браузера рулиться на ура. Осталось победить физические кнопки и геркон надыбать.

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 20 авг 2016, 16:17

Геркон - в любом магазине торгующих системами безопасности, камерами - датчик открытия двери, там и магнит есть, хоть и слабый. Обычно стоит копейки (кроме больших, и версий для металлические дверей). У меня геркон на проводах и разъёме штырьковом, а сам он наклеен на раму. А магнит от жёсткого диска хорош :)

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 20 авг 2016, 16:43

kod.begemot писал(а):...
По поводу скорости - все зависит от того, что будете приводить в движение. 18 rpm - по моему вполне достаточно, зачем там быстрее, это же не роллет на въезде?
Кстати, вот ещё один плюс шаговика - возможность менять скорость. Я использую 2 скорости - обычная (быстрый режим, 2 минуты открытие/закрытие), и медленная (имитация рассвета, 8 минут).
Кстати, по поводу сложности - ничего там страшного нет, с шаговиками этими, или другими. Суть куча схем, по софта тоже не сложно. Можете мой скетч брать, можно его пер д дать для маленькой ардуинки. Зато возможносте больше (можно использовать индикацию режима работы, локальное управление (кнопки на месте) и т.п.). К тому же конструкция в целом все же проще - один концевик вверху, а значит меньше проводов по окну...по сути - мотор + плата контроллера + маленький геркон, приклееный по близости.
Что-то мастер не договаривает :roll: Что-то я в коде " 2 скорости - обычная (быстрый режим, 2 минуты открытие/закрытие), и медленная (имитация рассвета, 8 минут)" в упор не вижу .
Это наверно режим для продвинутых, дописавших код, мне кажется этого в теме нет...
Я нашел только вот этот код:
viewtopic.php?f=1&t=795&start=20#p17720
В связи с чем вопросы:
1) в этом коде кнопки и концевик рабочие?
2) Я правильно понимаю что кнопки - звонкового типа с пружинкой - ты нажал она отжалась (они же моностабильные, тактильные, "просто кнопка")
3) Физическое подключение кнопок к ESP. Они на соответствующие ножки 3,2VDC подают? И геркон так-же?
(я "неправильное подключение к земле" попробовал - не прокатило, теперь думаю о правильном с подачей 3,2 и с подтяжкой к земле для 0 через резистор и прочее...)

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 20 авг 2016, 16:46

Нашел маленькую "засаду" ESP8266 Witty - она на Vcc - 5v выдает.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 20 авг 2016, 16:47

kod.begemot писал(а):Геркон - в любом магазине торгующих системами безопасности, камерами - датчик открытия двери, там и магнит есть, хоть и слабый. Обычно стоит копейки (кроме больших, и версий для металлические дверей). У меня геркон на проводах и разъёме штырьковом, а сам он наклеен на раму. А магнит от жёсткого диска хорош :)
Попробую для начала ограбить конструктор "знаток" дочери...

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 20 авг 2016, 17:41

Упс.... по ходу старую версию выложил...

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 20 авг 2016, 22:44

Вот последняя версия для той конструкции, где ULN2003 в качестве драйвера.
Для новой пока не выкладываю, т.к. там пока ещё не всё однозначно, там ещё "альфа", в том числе и по железу.
https://yadi.sk/d/tmdIx9YmuMgvZ
Должна быть рабочей, но сейчас проверить не могу..

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 20 авг 2016, 22:48

Спасибо за скетч. Утащил в норку разбираться.
UPD собственно и ваша альфа была работоспособна. Еще раз спасибо.
UPD2 Кажется в альфе все таки был забавный глюк. /stop работал всегда /up работал всегда /down работал только во время up, после stop не работал. Ну на то она и альфа...
Последний раз редактировалось OlegJktu84 23 авг 2016, 21:52, всего редактировалось 2 раза.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Рулонные шторы - простая автоматизация

Сообщение OlegJktu84 » 20 авг 2016, 22:52

Меня по прежнему мучает
"Физическое подключение кнопок к ESP. Они на соответствующие ножки 3,2VDC подают? "
Страшно...

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

Re: Рулонные шторы - простая автоматизация

Сообщение kod.begemot » 22 авг 2016, 23:40

так... физическое подключение кнопок... сейчас посмотрю на плату :)
Нет, кнопки сажают на землю вывод, предварительно подтянутый 4,7К резистором к 3,3 вольтам :)

Ответить