гм, к сожалению 3g, и ubuntu стоит не выйдетNiKiToS писал(а):через "TeamViewer" вам в личку сброшу логин и пароль....neromih писал(а):Rezim.status создали такой объект? - он будет содержать режимы - охрана наблюдение автосвет. Создайте пустой.
Создайте скрипт MotionAlarm, в нем пропишите логику на работу в режиме охрана, что у Вас должно улюлюкать или загораться, либо отравляющие газы пойдут
Попробую посмотреть, только как?
действия после срабатывания датчика движения
Модератор: immortal
-
- Сообщения: 154
- Зарегистрирован: Чт апр 20, 2017 5:32 am
- Откуда: Томск
- Благодарил (а): 55 раз
- Поблагодарили: 22 раза
Re: действия после срабатывания датчика движения
- Рейтинг: 1.16%
Raspberry Pi2, Pi3, MegaD2561RTC + 14 in + 14R, WemosD1, Mega2560, Arduino nano v.3, Arduino Uno, ESP8266 12f.
-
- Сообщения: 42
- Зарегистрирован: Сб окт 28, 2017 8:06 pm
- Благодарил (а): 5 раз
- Поблагодарили: 4 раза
Re: действия после срабатывания датчика движения
как система понимает в этом коде что статус 1 а не 0 то ли он не дописан, то ли это не для MovementSensors
Код: Выделить всё
$this->setProperty('status',$params['status']); // выставляем статус сенсора
$this->setProperty('updatedTimestamp',time()); // выставляем время срабатывания сенсора
if ($params['status']) { // если статус = 1
setGlobal('somebodyHome',2); // ставим глобальный флаг на то что кто-то дома
setGlobal('somebodyHomeText','Дома кто-то есть'); // так же ставим свойства глобальной переменной для текстового статуса
ClearTimeOut("NobodyHomeMode"); // очищаем таймер события "никого нет дома"
SetTimeOut("NobodyHomeMode","runScript('NobodyHomeMode');", 1*60*60); // назначаем новый таймер. срабатывает через час после последнего срабатывания датчика.
$last_register=registeredEventTime('inhouseMovement'); // проверяем когда в последний раз срабатывало событие "движение внутри дома"
if (!$last_register || ((time()-$last_register)>2*60*60)) { // срабатывало более 2х часов назад (либо никогда не срабатывало ранее)
say("Ну наконец-то кто-то появился дома!");
if (timeBetween('06:00', '12:00')) { // движение замечено утром
runScript('MorningGreeting'); // запускаем скрипт "доброе утро"
}
}
registerEvent('inhouseMovement',$this->name,7); // регистрируем событие "движение внутри дома"
}
Последний раз редактировалось NiKiToS Пн ноя 06, 2017 4:37 pm, всего редактировалось 2 раза.
- igorewa
- Сообщения: 515
- Зарегистрирован: Ср дек 21, 2016 11:54 pm
- Откуда: Киев
- Благодарил (а): 12 раз
- Поблагодарили: 43 раза
Re: действия после срабатывания датчика движения
Что бы не плодить кучу тем, спрошу тут. У меня 2 датчика движения, 1й Broadlink, 2й Noolite. оба настроены через простые устройства и выведены на сцену. Проблема в следующем : когда срабатывает датчик движения Broadlink то в Motion01.alive появляется 1, на сцене загорается красный значок движения и через какое то ( примерно 30 сек. ) исчезает соответственно в Motion01.alive появляется 0. А с датчиком движения Noolite беда, при срабатывании появляется 1 и висит вечность ( на сцене красный значок движения не исчезает. ( свойства и методы у них идентичны) . Как сделать что бы статус сбрасывался ?
ASUS H110T, I5 7500, DDR4-16Gb, SSD256 . WIN10 64 (LTSB)
-
- Сообщения: 154
- Зарегистрирован: Чт апр 20, 2017 5:32 am
- Откуда: Томск
- Благодарил (а): 55 раз
- Поблагодарили: 22 раза
Re: действия после срабатывания датчика движения
Motion01.alive - гм, это же вроде как - жив он или нет?igorewa писал(а):Что бы не плодить кучу тем, спрошу тут. У меня 2 датчика движения, 1й Broadlink, 2й Noolite. оба настроены через простые устройства и выведены на сцену. Проблема в следующем : когда срабатывает датчик движения Broadlink то в Motion01.alive появляется 1, на сцене загорается красный значок движения и через какое то ( примерно 30 сек. ) исчезает соответственно в Motion01.alive появляется 0. А с датчиком движения Noolite беда, при срабатывании появляется 1 и висит вечность ( на сцене красный значок движения не исчезает. ( свойства и методы у них идентичны) . Как сделать что бы статус сбрасывался ?
Raspberry Pi2, Pi3, MegaD2561RTC + 14 in + 14R, WemosD1, Mega2560, Arduino nano v.3, Arduino Uno, ESP8266 12f.
- igorewa
- Сообщения: 515
- Зарегистрирован: Ср дек 21, 2016 11:54 pm
- Откуда: Киев
- Благодарил (а): 12 раз
- Поблагодарили: 43 раза
Re: действия после срабатывания датчика движения
Да, но почему то данные приходят именно в alive а не в statusneromih писал(а):Motion01.alive - гм, это же вроде как - жив он или нет?igorewa писал(а):Что бы не плодить кучу тем, спрошу тут. У меня 2 датчика движения, 1й Broadlink, 2й Noolite. оба настроены через простые устройства и выведены на сцену. Проблема в следующем : когда срабатывает датчик движения Broadlink то в Motion01.alive появляется 1, на сцене загорается красный значок движения и через какое то ( примерно 30 сек. ) исчезает соответственно в Motion01.alive появляется 0. А с датчиком движения Noolite беда, при срабатывании появляется 1 и висит вечность ( на сцене красный значок движения не исчезает. ( свойства и методы у них идентичны) . Как сделать что бы статус сбрасывался ?
- Вложения
-
- Снимок экрана 2017-11-06 в 13.29.20.png (72.49 КБ) 6862 просмотра
-
- Снимок экрана 2017-11-06 в 13.30.03.png (215.59 КБ) 6862 просмотра
ASUS H110T, I5 7500, DDR4-16Gb, SSD256 . WIN10 64 (LTSB)
-
- Сообщения: 42
- Зарегистрирован: Сб окт 28, 2017 8:06 pm
- Благодарил (а): 5 раз
- Поблагодарили: 4 раза
Re: действия после срабатывания датчика движения
лазия по форому, увидел то что много ТЕМ про датчики движения, НО не разу не увидел что бы выложили нормальный ответ, то ли ни кто не понимает как подключить, то ли где то что то не доработано....может все таки объяснит кто не будь в чем проблема с этим, через простые устройства датчик
при срабатывании появляется 1 висит вечность ( на сцене красный значок движения не исчезает. При подключении через объекты>keySensors >MovementSensors>методы...."статус/alive" меняется 0-1 но действий не происходит не каких, где и что я упускаю?
при срабатывании появляется 1 висит вечность ( на сцене красный значок движения не исчезает. При подключении через объекты>keySensors >MovementSensors>методы...."статус/alive" меняется 0-1 но действий не происходит не каких, где и что я упускаю?
-
- Сообщения: 154
- Зарегистрирован: Чт апр 20, 2017 5:32 am
- Откуда: Томск
- Благодарил (а): 55 раз
- Поблагодарили: 22 раза
Re: действия после срабатывания датчика движения
У меня реализация не через простые устройства, а просто как сказать объектами.
Настраивал у себя:
Исходные данные:
Оборудование:
1. Raspberry Pi 2 (установлен Majordomo из образа v3.26 viewtopic.php?f=3&p=48757#p48757);
2. Контроллер MegaD-2561-RTC;
3. Исполнительный блок MegaD-14-R 1.0 для контроллеров MegaD-2561/328 (14 реле для управления нагрузками);
4. Switch D-Link DES-1016;
5. Датчик движения с защитой от животных до 25 кг Patrol-201 PET;
Подключение:
1. Сеть организована через витую пару...
2. Датчик движения подключен непосредственно к MegaD-2561-RTC к Клеммнику XT2 внизу (зелёный) пины: 1, 4. Питание 12 вольт;
Настройки:
1. MegaD-2561-RTC порт P30:
- настроен как вход;
- Mode: С; у меня почему то только при этом режиме MegaD-2561-RTC отправляет на сервер MD данные 1 или 0, то есть срабатывание датчика, при том без задержек
2. Majordomo:
- создан Объект SMotions ----> PATROL:
Его методы (без изменений):
SMotions-> motionDetected;
SDevices-> statusUpdated;
SDevices-> logicAction;
- в модуле MegaD:
30 | Input | PATROL | status | statusUpdate.
Все в принципе работает.
В PATROL.status при срабатывание датчика движения вносятся состояния (1 и 0)
1 - покой;
0 - движение;
Пример полученных данных (из PATROL.status):
2017-05-23 06:21:46: 1 X
2017-05-23 06:21:42: 0 X
2017-05-23 06:21:34: 1 X
2017-05-23 06:21:30: 0 X
2017-05-23 06:20:46: 1 X
2017-05-23 06:20:40: 0 X
2017-05-22 18:50:39: 1 X
В принципе инструкция как подключить датчик движения и получать с него информацию.
1. Как видно из примера полученных данных, датчик движения имеет два состояния 1-покой, 0-движение.
Исходя из записей, я как понял, он работает следующим образом:
появилось движение и он размыкает (реле, контакт и что нибудь еще) проходит 4-5 секунд замыкает контакт без учета есть ли движение, и если оно есть опять размыкает его.
2017-05-23 06:21:46: 1 X нет движения
2017-05-23 06:21:42: 0 X движение
2017-05-23 06:21:34: 1 X нет движения хотя оно и не прекращается с 06:21:30 до 06:21:46
2017-05-23 06:21:30: 0 X движение
2017-05-22 18:50:39: 1 X с этого момента движений не было.
2. Проблемы:
1. Если в свойства без разницы какое SMotions-> motionDetected или SDevices-> statusUpdated
добавить код что бы при 0 MD произносил "обнаружено движение" то соответственно это будет сделано несколько раз.
2. Если добавить код для включения и выключения освещения, то соответственно он будет вкл и выкл освещение 5 раз
вписал данный код в метод statusUpdated
10 время через которое отключится реле.
Может быть пригодится кому нибудь, работает.
Смысл в том если SecuritySwitch.status значение 0 - режим не охраны а наблюдения, соответственно включает реле, если наоборот то говорит проникновение.
В принципе эта настройка будет справедлива почти ко всем датчикам движения
Настраивал у себя:
Исходные данные:
Оборудование:
1. Raspberry Pi 2 (установлен Majordomo из образа v3.26 viewtopic.php?f=3&p=48757#p48757);
2. Контроллер MegaD-2561-RTC;
3. Исполнительный блок MegaD-14-R 1.0 для контроллеров MegaD-2561/328 (14 реле для управления нагрузками);
4. Switch D-Link DES-1016;
5. Датчик движения с защитой от животных до 25 кг Patrol-201 PET;
Подключение:
1. Сеть организована через витую пару...
2. Датчик движения подключен непосредственно к MegaD-2561-RTC к Клеммнику XT2 внизу (зелёный) пины: 1, 4. Питание 12 вольт;
Настройки:
1. MegaD-2561-RTC порт P30:
- настроен как вход;
- Mode: С; у меня почему то только при этом режиме MegaD-2561-RTC отправляет на сервер MD данные 1 или 0, то есть срабатывание датчика, при том без задержек
2. Majordomo:
- создан Объект SMotions ----> PATROL:
Его методы (без изменений):
SMotions-> motionDetected;
SDevices-> statusUpdated;
SDevices-> logicAction;
- в модуле MegaD:
30 | Input | PATROL | status | statusUpdate.
Все в принципе работает.
В PATROL.status при срабатывание датчика движения вносятся состояния (1 и 0)
1 - покой;
0 - движение;
Пример полученных данных (из PATROL.status):
2017-05-23 06:21:46: 1 X
2017-05-23 06:21:42: 0 X
2017-05-23 06:21:34: 1 X
2017-05-23 06:21:30: 0 X
2017-05-23 06:20:46: 1 X
2017-05-23 06:20:40: 0 X
2017-05-22 18:50:39: 1 X
В принципе инструкция как подключить датчик движения и получать с него информацию.
1. Как видно из примера полученных данных, датчик движения имеет два состояния 1-покой, 0-движение.
Исходя из записей, я как понял, он работает следующим образом:
появилось движение и он размыкает (реле, контакт и что нибудь еще) проходит 4-5 секунд замыкает контакт без учета есть ли движение, и если оно есть опять размыкает его.
2017-05-23 06:21:46: 1 X нет движения
2017-05-23 06:21:42: 0 X движение
2017-05-23 06:21:34: 1 X нет движения хотя оно и не прекращается с 06:21:30 до 06:21:46
2017-05-23 06:21:30: 0 X движение
2017-05-22 18:50:39: 1 X с этого момента движений не было.
2. Проблемы:
1. Если в свойства без разницы какое SMotions-> motionDetected или SDevices-> statusUpdated
добавить код что бы при 0 MD произносил "обнаружено движение" то соответственно это будет сделано несколько раз.
2. Если добавить код для включения и выключения освещения, то соответственно он будет вкл и выкл освещение 5 раз
Код: Выделить всё
sg("Switch0.status","1");
sg('Switch0.statusText','Включено');
clearTimeOut("Switch0");
SetTimeOut("Switch0",'sg("Switch0.status","0");
sg("Switch0.statusText","Выключено");',[b]10[/b]);
вписал данный код в метод statusUpdated
10 время через которое отключится реле.
Может быть пригодится кому нибудь, работает.
Смысл в том если SecuritySwitch.status значение 0 - режим не охраны а наблюдения, соответственно включает реле, если наоборот то говорит проникновение.
Код: Выделить всё
if (gg('SecuritySwitch.status') == "0") {
sg("Switch0.status","1");
sg('Switch0.statusText','Включено');
SetTimeOut("Switch0",'sg("Switch0.status","0");
sg("Switch0.statusText","Выключено");',10);
} else {
say("Проникновение",5);
}
Raspberry Pi2, Pi3, MegaD2561RTC + 14 in + 14R, WemosD1, Mega2560, Arduino nano v.3, Arduino Uno, ESP8266 12f.
-
- Сообщения: 154
- Зарегистрирован: Чт апр 20, 2017 5:32 am
- Откуда: Томск
- Благодарил (а): 55 раз
- Поблагодарили: 22 раза
Re: действия после срабатывания датчика движения
Попробуйте поменять метода на statusUpdatedigorewa писал(а):Да, но почему то данные приходят именно в alive а не в statusneromih писал(а):Motion01.alive - гм, это же вроде как - жив он или нет?igorewa писал(а):Что бы не плодить кучу тем, спрошу тут. У меня 2 датчика движения, 1й Broadlink, 2й Noolite. оба настроены через простые устройства и выведены на сцену. Проблема в следующем : когда срабатывает датчик движения Broadlink то в Motion01.alive появляется 1, на сцене загорается красный значок движения и через какое то ( примерно 30 сек. ) исчезает соответственно в Motion01.alive появляется 0. А с датчиком движения Noolite беда, при срабатывании появляется 1 и висит вечность ( на сцене красный значок движения не исчезает. ( свойства и методы у них идентичны) . Как сделать что бы статус сбрасывался ?
Raspberry Pi2, Pi3, MegaD2561RTC + 14 in + 14R, WemosD1, Mega2560, Arduino nano v.3, Arduino Uno, ESP8266 12f.
- woow
- Сообщения: 821
- Зарегистрирован: Пн июл 04, 2016 8:46 am
- Откуда: Mazeikiai
- Благодарил (а): 125 раз
- Поблагодарили: 46 раз
Re: действия после срабатывания датчика движения
да и я тут хочу спросить у знающих, пользуюсь готовым имиджем на малинке там на панеле управления "висит" сообщение "кто-то дома коридор". где это находится? Для начала хочу найти и убрать, а потом как будет какой датчик сделаем и правильные действие, теперь не надо. Так как его убрать
Raspberry Pi 3B+
- igorewa
- Сообщения: 515
- Зарегистрирован: Ср дек 21, 2016 11:54 pm
- Откуда: Киев
- Благодарил (а): 12 раз
- Поблагодарили: 43 раза
Re: действия после срабатывания датчика движения
Объект: ThisComputer - ThisComputer.somebodyHomeText Убрать, или на самой сцене убрать вывод этой инфрпмацииwoow писал(а):да и я тут хочу спросить у знающих, пользуюсь готовым имиджем на малинке там на панеле управления "висит" сообщение "кто-то дома коридор". где это находится? Для начала хочу найти и убрать, а потом как будет какой датчик сделаем и правильные действие, теперь не надо. Так как его убрать
- Рейтинг: 1.16%
ASUS H110T, I5 7500, DDR4-16Gb, SSD256 . WIN10 64 (LTSB)