Система "Бенукс". Компьютерное управление и контроль.

решение вопросов по система "Бенукс"
Текущее время: 22-09, 19:36

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Сценарии и прерывания
СообщениеДобавлено: 24-01, 19:30 
Не в сети

Зарегистрирован: 07-09, 22:49
Сообщения: 38
Откуда: Питер
Долго бьюсь с проблемой, которая мешает жить. Мне кажется, решение должно быть на поверхности - но не найти.
И так, есть датчик движения, вырабатывающий долгий импульс (5+ сек.). По приходу фронта импульса запускается сценарий, включающий свет.
Далее в сценарии таймер на минуту, после которого - выключение света.
Проблема: если движение продолжается, через минуту таймер дорабатывает, и свет гаснет. Если в это время есть движение (высокий уровень с датчика), то сценарий не запускается, свет не горит. Если долго не регистрируется движение и импульс с датчика прекращается, с новым движением (и фронтом испульса с датчика движения) сценарий запускается, свет включается.

Вопрос: как сделать, чтоб сценарий анализировал _состояние_ вместо работы с фронтами/спадами?
Надо, чтоб _пока уровень высокий_, сценарий не заканчивался.

Реально, эта зараза давно мешает мне развивать автоматизацию. Как другие-то решают эту элементарную проблему?

P.S. И ещё, была бы невероятно полезна возможность вывести на визуальную панель ЧАСЫ и лайв-бит (у меня монитор для этой панели подключен по WiFi и необходимо контролировать состояние связи - зачастую канал падает, и картинка на мониторе остаётся статичной, но это не заметно!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сценарии и прерывания
СообщениеДобавлено: 25-01, 16:54 
Не в сети
Site Admin

Зарегистрирован: 14-10, 14:58
Сообщения: 490
Kamajii писал(а):
Вопрос: как сделать, чтоб сценарий анализировал _состояние_ вместо работы с фронтами/спадами?
Надо, чтоб _пока уровень высокий_, сценарий не заканчивался.
В сценариях есть команда "Условие перехода на метку". В вашем сценарии, после команды "таймер" Вам надо вставить такую команду. Причём, в параметрах этой команды указать тот датчик, который показывает движение и соответственно выбрать логический уровень сигнала. Смысл этой команды такой: если от датчика движения поступает сигнал "движение", перейти на метку в начало сценария, на ту команду, которая включает освещение.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сценарии и прерывания
СообщениеДобавлено: 25-01, 19:17 
Не в сети

Зарегистрирован: 07-09, 22:49
Сообщения: 38
Откуда: Питер
Примерно так и сделано. Не помогает. Таймер посчитал, свет погас. Если датчик в этот момент даёт движение, свет больше не горит, пока датчик не сбросит уровень и не поднимет снова.
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сценарии и прерывания
СообщениеДобавлено: 26-01, 09:04 
Не в сети
Site Admin

Зарегистрирован: 14-10, 14:58
Сообщения: 490
Kamajii писал(а):
Таймер посчитал, свет погас. Если датчик в этот момент даёт движение, свет больше не горит, пока датчик не сбросит уровень и не поднимет снова.
Надо смотреть лог выполнения сценария и в зависимости от этого корректировать команду перехода по условию. Идея в том, что пока датчик движения выдаёт сигнал, сценарий должен переходить назад, к таймеру и ждать, когда движение прекратится. Надо по логу проследить последовательное выполнение каждой команды, особенно команды перехода по условию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сценарии и прерывания
СообщениеДобавлено: 26-01, 19:09 
Не в сети

Зарегистрирован: 07-09, 22:49
Сообщения: 38
Откуда: Питер
При непрерывном движении перед датчиком, лог выглядит так:

19:02:30 SCN: "Corr lights ON, 1", COM: "Включить устройство" 2406 corr chan1
19:02:31 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:03:46 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" текушая величина с датчика: 1 величина для анализа: 1
19:03:46 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" Переход на метку: t
19:03:46 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:04:19 SCN: "Corr lights ON, 1", COM: "Включить устройство" 2406 corr chan1
19:04:19 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:05:35 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" текушая величина с датчика: 1 величина для анализа: 1
19:05:36 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" Переход на метку: t
19:05:36 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:05:50 SCN: "Corr lights ON, 1", COM: "Включить устройство" 2406 corr chan1
19:05:51 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:06:10 SCN: "Corr lights ON, 1", COM: "Включить устройство" 2406 corr chan1
19:06:10 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:07:26 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" текушая величина с датчика: 1 величина для анализа: 1
19:07:26 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" Переход на метку: t
19:07:26 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый

Почему-то иногда переход на таймер, как я понимаю, происходит без условия: Таймер, Включить, Таймер. Как так?

И далее (нет движения с 19:10:00):

19:08:41 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" текушая величина с датчика: 1 величина для анализа: 1
19:08:41 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" Переход на метку: t
19:08:41 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:08:43 SCN: "Corr lights ON, 1", COM: "Включить устройство" 2406 corr chan1
19:08:43 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:09:01 SCN: "Corr lights ON, 1", COM: "Включить устройство" 2406 corr chan1
19:09:01 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
19:09:41 SCN: "Shield1 off, 1", COM: "Отключить устройство" - не выполняется в текущем режиме "Night"
19:09:41 SCN: "Shield1 off, 2", COM: "Отключить устройство" - не выполняется в текущем режиме "Night"
19:09:41 SCN: "Shield1 off, 3", COM: " " Окончен сценарий.
19:10:16 SCN: "Corr lights ON, 3", COM: "Условие перехода на метку" текушая величина с датчика: 0 величина для анализа: 1
19:10:16 SCN: "Corr lights ON, 4", COM: "Таймер" 0:01:15, тип: обычный
19:11:31 SCN: "Corr lights ON, 5", COM: "Отключить устройство" 2406 corr chan1
19:11:32 SCN: "Corr lights ON, 6", COM: "Отправить на E-mail текущие значения" - не активирована
19:11:32 SCN: "Corr lights ON, 7", COM: "Выйти из сценария" - не активирована
19:11:32 SCN: "Corr lights ON, 8", COM: " " Окончен сценарий.

Cвет отключен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сценарии и прерывания
СообщениеДобавлено: 27-01, 09:42 
Не в сети
Site Admin

Зарегистрирован: 14-10, 14:58
Сообщения: 490
Kamajii писал(а):
При непрерывном движении перед датчиком, лог выглядит так:
...
19:06:10 SCN: "Corr lights ON, 1", COM: "Включить устройство" 2406 corr chan1
19:06:10 SCN: "Corr lights ON, 2", COM: "Таймер" 0:01:15, тип: перезапускаемый
...
Почему-то иногда переход на таймер, как я понимаю, происходит без условия: Таймер, Включить, Таймер. Как так?
В тех местах лога, которые начинаются с команды №1 ''Включить устройство", означает что по сигналу от датчика движения запустился новый экземпляр этого сценария и благодаря типу таймера "перезапускаемый" сценарий продолжает выполняться в одном экземпляре.
А вообще, судя по логу, у Вас нормально всё отрабатывает.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  

cron
Powered by Forumenko © 2006–2014
Русская поддержка phpBB