Помогите с кодом двойного реле

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
vitar78
Сообщения: 128
Зарегистрирован: Пт июл 15, 2016 3:12 am
Благодарил (а): 6 раз
Поблагодарили: 2 раза

Помогите с кодом двойного реле

Сообщение vitar78 » Пн июн 12, 2017 3:39 pm

Первое реле срабатывает в доли секунды а второе с задержкой в 5 секунд
refresh

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

$status=$this->getProperty("status");
$status2=$this->getProperty("status2");
if ($status) {
 getURL('http://'.$this -> getProperty("IP").'/gpio?st=1&pin='.$this -> getProperty("pin1"), 0);
 } else {
 getURL('http://'.$this -> getProperty("IP").'/gpio?st=0&pin='.$this -> getProperty("pin1"), 0);
}
if ($status2) {
 getURL('http://'.$this -> getProperty("IP").'/gpio?st=1&pin='.$this -> getProperty("pin2"), 0);
 } else {
 getURL('http://'.$this -> getProperty("IP").'/gpio?st=0&pin='.$this -> getProperty("pin2"), 0);
} 
Switch

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

$status=$this->getProperty("status");
if ($status) {
 $this->callMethod('turnOff');
} else {
 $this->callMethod('turnOn');
} 
$status2=$this->getProperty("status2");
if ($status2) {
 $this->callMethod('turnOff');
} else {
 $this->callMethod('turnOn');
}  
turnOff

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

$this->setProperty("status",0);
$this->setProperty("status2",0);
$this->callMethod("refresh");
 
turnOn

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

$this->setProperty("status",1);
$this->setProperty("status2",1);
$this->callMethod("refresh");
 
подскажите где накосячил
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Помогите с кодом двойного реле

Сообщение olehs » Пн июн 12, 2017 7:18 pm

а "реле" - это что?
vitar78
Сообщения: 128
Зарегистрирован: Пт июл 15, 2016 3:12 am
Благодарил (а): 6 раз
Поблагодарили: 2 раза

Re: Помогите с кодом двойного реле

Сообщение vitar78 » Вт июн 13, 2017 11:08 am

Семисторное реле с есп и прошивкой wifi-iot.com
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Помогите с кодом двойного реле

Сообщение olehs » Вт июн 13, 2017 11:16 am

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

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

Еще, как вариант, попробуйте между двумя вызовами вставить задержку пару сотен миллисекунд.
Ответить