управление реле с 433мгц + 2 хлопка возможно ли это?

artemon25
Offline
Зарегистрирован: 25.12.2015

Доброго всем времени суток как говорится всё тяжелое кажетси лёгким так и я думал но всегда есть НО. И так вопрос есть скетч для управления реле по 433мгц 

#include <RCSwitch.h>
 
RCSwitch mySwitch = RCSwitch();
int relay7 = 7; //Реле будет тут
int analogData=0; //тут будут храниться данные с АЦП пин 0
int ledstate=0; //переменная состояния вкл-выкл
 
void setup() {
  Serial.begin(9600);
  mySwitch.enableReceive(0);  // приемник на pin 2 (DATA) 
  pinMode(relay7, OUTPUT);
  digitalWrite(relay7, LOW);
}
 void loop() {
     
 
    if (mySwitch.available()) {
    
    int value = mySwitch.getReceivedValue();
    
    if (value == 0) {
      Serial.print("error code"); // Ошибка приемка кода
    } else {
      Serial.print("code good"); // Принял код
      Serial.print( mySwitch.getReceivedValue() );
 
    }
    if (mySwitch.getReceivedValue() == 7688384) {   // 6133332 - код Включения1
      digitalWrite(relay7, HIGH);
    }
     if (mySwitch.getReceivedValue() ==  7688204) {   // 6133392 - код выключения1
      digitalWrite(relay7, LOW);
 }
}
 }
И есть скетч для управления реле двумя хлопками
int analogData=0; //тут будут храниться данные с АЦП пин 0
int ledstate=0; //переменная состояния вкл-выкл
void setup() {
  pinMode(7,OUTPUT);
}
 
void loop() {
  analogData=analogRead(0); //читаем значение
 
if(analogData>120){ //в моём случае аудио сенсор имеет жутко малую чувствительность и выдаёт значение до 130 из 1024 возможных
 
  delay(200); //ожидаем 200милисекунд для повторного хлопка - можно не делать но в моём случае это добавило удобства
  for(int t=0;t<=500;t++) //цикл на проверку второго хлопка по идее на пол секунды но ардуино делает его дольше
  {
    delay(1); //для цикла
    analogData=analogRead(0);//считываем данные
    if(analogData>120){  //сверяем данные для второго хлопка, если он был то меняем состояние лампы с вкл на выкл и наоборот
      ledstate=!ledstate; //меняем состояние
      analogData=0;//обнуляем данные
      break;//выходим из цикла после второго хлопка
      delay(200);//для удобства
    }
}
analogData=0;
 
}
 
digitalWrite(7,ledstate); //включаем выключаем светодиод на 13м пине
  
}
по отдельности они работают замечательно я подумал что их можно соединить и получился вот такой скетч
include <RCSwitch.h>
 
RCSwitch mySwitch = RCSwitch();
int relay7 = 7; //Реле будет тут
int analogData=0; //тут будут храниться данные с АЦП пин 0
int ledstate=0; //переменная состояния вкл-выкл
 
void setup() {
  Serial.begin(9600);
  mySwitch.enableReceive(0);  // приемник на pin 2 (DATA) 
  pinMode(relay7, OUTPUT);
  digitalWrite(relay7, LOW);
}
 void loop() {
   analogData=analogRead(0); //читаем значение
 
if(analogData>120){ 
 
  delay(200); 
  for(int t=0;t<=500;t++) 
  {
    delay(1); //для цикла
    analogData=analogRead(0);//считываем данные
    if(analogData>120){  //сверяем данные для второго хлопка, если он был то меняем состояние лампы с вкл на выкл и наоборот
      ledstate=!ledstate; //меняем состояние
      analogData=0;//обнуляем данные
      break;//выходим из цикла после второго хлопка
      delay(200);
    }
}
analogData=0;
 
}
 
digitalWrite(relay7,ledstate); //включаем выключаем светодиод на 7м пине
  
 
    
  if (mySwitch.available()) {
    
    int value = mySwitch.getReceivedValue();
    
    if (value == 0) {
      Serial.print("error code"); // Ошибка приемка кода
    } else {
      Serial.print("code good"); // Принял код
      Serial.print( mySwitch.getReceivedValue() );
 
    }
    if (mySwitch.getReceivedValue() == 7688384) {   //  - код Включения1
      digitalWrite(relay7, HIGH);
    }
     if (mySwitch.getReceivedValue() ==  7688204) {   // - код выключения1
      digitalWrite(relay7, LOW);
     }
  }
}
и этот скетч работает только на хлопки а вот на радиосигнал реагирует на любую кнопку и заклинивается в том состоянии на котором остаётся и после этого  реагирует на хлопки не так как надо тоесть при хлопках реле включается и через секунду выключается отсюда вопрос что надо дописать чтоб реле нормально работало при обоих задумках например захотел влючил с пульта а выключил хлопками или наоборот включил хлопками а выключил с пульта.
Жду ваших предложений и заранее всем спасибо за внимание и за ответы
 
T.Rook
Offline
Зарегистрирован: 05.03.2016

Попробуйте заменить это

       ledstate=!ledstate; //меняем состояние
      analogData=0;//обнуляем данные
      break;//выходим из цикла после второго хлопка
      delay(200);
    }
}
analogData=0;
 
}
 
digitalWrite(relay7,ledstate); //включаем выключаем светодиод на 7м пине

на это

      ledstate=!ledstate; //меняем состояние
      
      digitalWrite(relay7,ledstate); //включаем выключаем светодиод на 7м пине
      analogData=0;//обнуляем данные
     
      break;//выходим из цикла после второго хлопка
      delay(200);
    }
}
analogData=0;
 
}
 

И обязательно прочтите это

artemon25
Offline
Зарегистрирован: 25.12.2015

T.Rook пишет:

Попробуйте заменить это

       ledstate=!ledstate; //меняем состояние
      analogData=0;//обнуляем данные
      break;//выходим из цикла после второго хлопка
      delay(200);
    }
}
analogData=0;
 
}
 
digitalWrite(relay7,ledstate); //включаем выключаем светодиод на 7м пине

на это

      ledstate=!ledstate; //меняем состояние
      
      digitalWrite(relay7,ledstate); //включаем выключаем светодиод на 7м пине
      analogData=0;//обнуляем данные
     
      break;//выходим из цикла после второго хлопка
      delay(200);
    }
}
analogData=0;
 
}
 

И обязательно прочтите это

Спасибо за наставления я поменял то что вы подсказали получился вот такой скетч


#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();
int relay7 = 7; //Реле будет тут
int analogData=0; //тут будут храниться данные с АЦП пин 0
int ledstate=0; //переменная состояния вкл-выкл

void setup() {
  Serial.begin(9600);
  mySwitch.enableReceive(0);  // приемник на pin 2 (DATA) 
  pinMode(relay7, OUTPUT);
  digitalWrite(relay7, LOW);
}
 void loop() {
   analogData=analogRead(0); //читаем значение

if(analogData>120){ 

  delay(200); 
  for(int t=0;t<=500;t++) 
  {
    delay(1); //для цикла
    analogData=analogRead(0);//считываем данные
    if(analogData>120){  //сверяем данные для второго хлопка, если он был то меняем состояние лампы с вкл на выкл и наоборот
      ledstate=!ledstate; //меняем состояние
      
      digitalWrite(relay7,ledstate); //включаем выключаем светодиод на 7м пине
      analogData=0;//обнуляем данные
      
      break;//выходим из цикла после второго хлопка
      delay(200);
    }
}
analogData=0;

}


  

    
  if (mySwitch.available()) {
    
    int value = mySwitch.getReceivedValue();
    
    if (value == 0) {
      Serial.print("error code"); // Ошибка приемка кода
    } else {
      Serial.print("code good"); // Принял код
      Serial.print( mySwitch.getReceivedValue() );

    }
    if (mySwitch.getReceivedValue() == 7688384) {   // 6133332 - код Включения1
      digitalWrite(relay7, HIGH);
    }
     if (mySwitch.getReceivedValue() ==  7688204) {   // 6133392 - код выключения1
      digitalWrite(relay7, LOW);
     }
  }
}


но проблема осталась как только залился скетч если пользоваться хлопками то всё работет но как только разок нажать пульт включается реле и на UNO загорается RX и после этого с пульта выключить можно и с пульта затем можно включать повторно а вот хлопками уже не работает пока не зальёшь скетч заново

T.Rook
Offline
Зарегистрирован: 05.03.2016

По быстрому не проскочили , ладно. :) Должно работать. Хотя работать должно кривова-то, из-за несогласованности частей - каждая часть не взаимодействует с другой. Вот попробуйте выключит пультом, а потом хлопайте пока не включится (два раза по два раза) :))))))))))))))))))).

Правим алгоритм:

1. После регистрации второго хлопка изменяем состояние светодиода: ledstate=!ledstate.

2. После регистрации кода включения устанавливаем состояние светодиода: ledstate=High.

3. После регистрации кода выключения устанавливаем состояние светодиода: ledstate=Low.

4. В самом конце устанавливаем физическое значение выходного пина.

Справитесь?

Кстати, что значит ledstate=!ledstate для переменной типа int?

artemon25
Offline
Зарегистрирован: 25.12.2015

T.Rook пишет:

По быстрому не проскочили , ладно. :) Должно работать. Хотя работать должно кривова-то, из-за несогласованности частей - каждая часть не взаимодействует с другой. Вот попробуйте выключит пультом, а потом хлопайте пока не включится (два раза по два раза) :))))))))))))))))))).

Правим алгоритм:

1. После регистрации второго хлопка изменяем состояние светодиода: ledstate=!ledstate.

2. После регистрации кода включения устанавливаем состояние светодиода: ledstate=High.

3. После регистрации кода выключения устанавливаем состояние светодиода: ledstate=Low.

4. В самом конце устанавливаем физическое значение выходного пина.

Справитесь?

Кстати, что значит ledstate=!ledstate для переменной типа int?

пультом выключаю и затем если очень много хлопать то диод моргает на доли секунды как будто включается и в этот момент RX на UNO тухнет а затем опять 25. По поводу   ledstate!=ledstate вообще хлопками не работет а по остальным 2,3,4 я честно говоря и не понял куда что вписать если можно поподробнее если просто вместо  ledstate=!ledstate вписать ledstate=High или ledstate=Low то выходит ошибка и скетч не компилируется

T.Rook
Offline
Зарегистрирован: 05.03.2016

Эх...


#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();
int relay7 = 7; //Реле будет тут
int analogData = 0; //тут будут храниться данные с АЦП пин 0
int ledstate = 0; //переменная состояния вкл-выкл

void setup() {
  Serial.begin(9600);
  mySwitch.enableReceive(0);  // приемник на pin 2 (DATA)
  pinMode(relay7, OUTPUT);
  digitalWrite(relay7, LOW);
}
void loop() {
  analogData = analogRead(0); //читаем значение

  if (analogData > 120) {

    delay(200);
    for (int t = 0; t <= 500; t++)
    {
      delay(1); //для цикла
      analogData = analogRead(0); //считываем данные
      if (analogData > 120) { //сверяем данные для второго хлопка, если он был то меняем состояние лампы с вкл на выкл и наоборот
        ledstate = !ledstate; //меняем состояние
        Serial.println("второй хлопок");
        analogData = 0; //обнуляем данные

        break;//выходим из цикла после второго хлопка
        delay(200);  //ЗАЧЕМ??????
      }
    }
    analogData = 0;

  }



  if (mySwitch.available()) {

    int value = mySwitch.getReceivedValue();

    if (value == 0) {
      Serial.print("error code"); // Ошибка приемка кода
    } else {
      Serial.print("code good"); // Принял код
      Serial.print( mySwitch.getReceivedValue() );

    }
    if (mySwitch.getReceivedValue() == 7688384) {   // 6133332 - код Включения1
      Serial.println("пульт включение");
      ledstate = 1;
    }
    if (mySwitch.getReceivedValue() ==  7688204) {   // 6133392 - код выключения1
      Serial.println("пульт выключение");
      ledstate = 0;
    }
 mySwitch.resetAvailable();
  }
  digitalWrite(relay7, ledstate); //включаем выключаем светодиод на 7м пине

}


А пульт у Вас все перебивает, потому что Вы mySwitch.resetAvailable() забыли... наверное.

artemon25
Offline
Зарегистрирован: 25.12.2015

[quote=T.Rook]

Эх...


#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();
int relay7 = 7; //Реле будет тут
int analogData = 0; //тут будут храниться данные с АЦП пин 0
int ledstate = 0; //переменная состояния вкл-выкл

void setup() {
  Serial.begin(9600);
  mySwitch.enableReceive(0);  // приемник на pin 2 (DATA)
  pinMode(relay7, OUTPUT);
  digitalWrite(relay7, LOW);
}
void loop() {
  analogData = analogRead(0); //читаем значение

  if (analogData > 120) {

    delay(200);
    for (int t = 0; t <= 500; t++)
    {
      delay(1); //для цикла
      analogData = analogRead(0); //считываем данные
      if (analogData > 120) { //сверяем данные для второго хлопка, если он был то меняем состояние лампы с вкл на выкл и наоборот
        ledstate = !ledstate; //меняем состояние
        Serial.print("второй хлопок");
        analogData = 0; //обнуляем данные

        break;//выходим из цикла после второго хлопка
        delay(200);  //ЗАЧЕМ??????
      }
    }
    analogData = 0;

  }



  if (mySwitch.available()) {

    int value = mySwitch.getReceivedValue();

    if (value == 0) {
      Serial.print("error code"); // Ошибка приемка кода
    } else {
      Serial.print("code good"); // Принял код
      Serial.print( mySwitch.getReceivedValue() );

    }
    if (mySwitch.getReceivedValue() == 7688384) {   // 6133332 - код Включения1
      Serial.print("пульт включение");
      ledstate = 1;
    }
    if (mySwitch.getReceivedValue() ==  7688204) {   // 6133392 - код выключения1
      Serial.print("пульт выключение");
      ledstate = 0;
    }
 mySwitch.resetAvailable();
  }
  digitalWrite(relay7, ledstate); //включаем выключаем светодиод на 7м пине

}


А пульт у Вас все перебивает, потому что Вы mySwitch.resetAvailable() забыли... наверное.

[/quote

К сожалению пришлось уехать и не могу проверить что у меня там написано и ваш скетч как приеду отпишусь. Спасибо ]

artemon25
Offline
Зарегистрирован: 25.12.2015

artemon25][quote=T.Rook]</p> <p>Эх...</p> <pre class="brush:arduino;"> #include &lt;RCSwitch.h&gt; RCSwitch mySwitch = RCSwitch(); int relay7 = 7; //Реле будет тут int analogData = 0; //тут будут храниться данные с АЦП пин 0 int ledstate = 0; //переменная состояния вкл-выкл void setup() { Serial.begin(9600); mySwitch.enableReceive(0); // приемник на pin 2 (DATA) pinMode(relay7, OUTPUT); digitalWrite(relay7, LOW); } void loop() { analogData = analogRead(0); //читаем значение if (analogData &gt; 120) { delay(200); for (int t = 0; t &lt;= 500; t++) { delay(1); //для цикла analogData = analogRead(0); //считываем данные if (analogData &gt; 120) { //сверяем данные для второго хлопка, если он был то меняем состояние лампы с вкл на выкл и наоборот ledstate = !ledstate; //меняем состояние Serial.print("второй хлопок"); analogData = 0; //обнуляем данные break;//выходим из цикла после второго хлопка delay(200); //ЗАЧЕМ?????? } } analogData = 0; } if (mySwitch.available()) { int value = mySwitch.getReceivedValue(); if (value == 0) { Serial.print("error code"); // Ошибка приемка кода } else { Serial.print("code good"); // Принял код Serial.print( mySwitch.getReceivedValue() ); } if (mySwitch.getReceivedValue() == 7688384) { // 6133332 - код Включения1 Serial.print("пульт включение"); ledstate = 1; } if (mySwitch.getReceivedValue() == 7688204) { // 6133392 - код выключения1 Serial.print("пульт выключение"); ledstate = 0; } mySwitch.resetAvailable(); } digitalWrite(relay7, ledstate); //включаем выключаем светодиод на 7м пине } </pre> <p>А пульт у Вас все перебивает, потому что Вы mySwitch<span class="pl-k">.</span>resetAvailable() забыли... наверное.</p> <p>[/quote К сожалению пришлось уехать и не могу проверить что у меня там написано и ваш скетч как приеду отпишусь. Спасибо пишет:

наконец то скетч заработал как надо получается я забыл в конце дописать mySwitch.resetAvailable() и получается что вместо  digitalWrite(relay7, HIGH); надо было вписывать ledstate = 1; а вместо digitalWrite(relay7, LOW);  ledstate = 0;  вроде всё легко  и просто но не для всех. скажите в строке

30 -   delay(200);  //ЗАЧЕМ??????

 

что значит зачем?????  

T.Rook
Offline
Зарегистрирован: 05.03.2016

artemon25 пишет:

что значит зачем?????  

Это вопрос - зачем там delay? При каких условиях он выполняется?

artemon25 пишет:

digitalWrite(relay7, HIGH)

так  же как и LOW вполне работоспособная и верная команда. Главная ошибка была в отсутствии mySwitch.resetAvailable() - без него всегда срабатывала соответствующая ветка пульта. Ну а просто объединение скетчев дало разрыв логики алгоритма, я просто начерно причесал.

 

artemon25
Offline
Зарегистрирован: 25.12.2015

T.Rook пишет:

artemon25 пишет:

что значит зачем?????  

Это вопрос - зачем там delay? При каких условиях он выполняется?

artemon25 пишет:

digitalWrite(relay7, HIGH)

так  же как и LOW вполне работоспособная и верная команда. Главная ошибка была в отсутствии mySwitch.resetAvailable() - без него всегда срабатывала соответствующая ветка пульта. Ну а просто объединение скетчев дало разрыв логики алгоритма, я просто начерно причесал.

 

как бы то ни было спасибо за помощь  за разъяснения в моей проблеме а вообще в будущем при возникновении каких то проблем по ардуино можно к вам обращаться?

T.Rook
Offline
Зарегистрирован: 05.03.2016

artemon25 пишет:

как бы то ни было спасибо за помощь

Да не за что. За тем форум и существует!

artemon25
Offline
Зарегистрирован: 25.12.2015

T.Rook пишет:

artemon25 пишет:

как бы то ни было спасибо за помощь

Да не за что. За тем форум и существует!


Подскажите а насколько сложно теперь к этому скетчи который у вас получился дописать чтобы шла отправка на email отчёта о проделанной операции если я имею шилд w5100 получается надо добавить библиотеку и вписывать данные о отправки на сервер нужной информации?

T.Rook
Offline
Зарегистрирован: 05.03.2016

Извините, тут я уже на мели, потому как не то что w5100 нет, а и ардуинка ещё не приехала ко мне(жду со дня на день). Так что копайте и читайте, благо на w5100 наделано куча всего и доков с примерами куча!

artemon25
Offline
Зарегистрирован: 25.12.2015

T.Rook пишет:

Извините, тут я уже на мели, потому как не то что w5100 нет, а и ардуинка ещё не приехала ко мне(жду со дня на день). Так что копайте и читайте, благо на w5100 наделано куча всего и доков с примерами куча!


Может есть куда ткнуть а то я уже много чего пересмотрел не знаю что надо вебсервер или что то другое

T.Rook
Offline
Зарегистрирован: 05.03.2016

Можно начать с главного источника

artemon25
Offline
Зарегистрирован: 25.12.2015

artemon25][quote=T.Rook]</p> <p>Эх...</p> <pre class="brush:arduino;"> #include &lt;RCSwitch.h&gt; RCSwitch mySwitch = RCSwitch(); int relay7 = 7; //Реле будет тут int analogData = 0; //тут будут храниться данные с АЦП пин 0 int ledstate = 0; //переменная состояния вкл-выкл void setup() { Serial.begin(9600); mySwitch.enableReceive(0); // приемник на pin 2 (DATA) pinMode(relay7, OUTPUT); digitalWrite(relay7, LOW); } void loop() { analogData = analogRead(0); //читаем значение if (analogData &gt; 120) { delay(200); for (int t = 0; t &lt;= 500; t++) { delay(1); //для цикла analogData = analogRead(0); //считываем данные if (analogData &gt; 120) { //сверяем данные для второго хлопка, если он был то меняем состояние лампы с вкл на выкл и наоборот ledstate = !ledstate; //меняем состояние Serial.print("второй хлопок"); analogData = 0; //обнуляем данные break;//выходим из цикла после второго хлопка delay(200); //ЗАЧЕМ?????? } } analogData = 0; } if (mySwitch.available()) { int value = mySwitch.getReceivedValue(); if (value == 0) { Serial.print("error code"); // Ошибка приемка кода } else { Serial.print("code good"); // Принял код Serial.print( mySwitch.getReceivedValue() ); } if (mySwitch.getReceivedValue() == 7688384) { // 6133332 - код Включения1 Serial.print("пульт включение"); ledstate = 1; } if (mySwitch.getReceivedValue() == 7688204) { // 6133392 - код выключения1 Serial.print("пульт выключение"); ledstate = 0; } mySwitch.resetAvailable(); } digitalWrite(relay7, ledstate); //включаем выключаем светодиод на 7м пине } </pre> <p>А пульт у Вас все перебивает, потому что Вы mySwitch<span class="pl-k">.</span>resetAvailable() забыли... наверное.</p> <p>[/quote К сожалению пришлось уехать и не могу проверить что у меня там написано и ваш скетч как приеду отпишусь. Спасибо пишет:

добрый вечер T.Rook] когдато вы мне помогли с редактированием скетча 433мгц + хлопки но со временем приходят новые мысли  и вот теперь хотелось бы чтобы при хлопках отправлялся радиосигнал через радиопередатчик на другую ардуино . есть скетч который отпрасляет мои данные на другую ардуино 

/*
Пример передачи принятой посылки на выключение и включение люстры.
*/

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

void setup() {
Serial.begin(9600);
// Transmitter is connected to Arduino Pin #10
mySwitch.enableTransmit(10);
// Optional set pulse length.
// mySwitch.setPulseLength(320);
// Optional set protocol (default is 1, will work for most outlets)
// mySwitch.setProtocol(2);
// Optional set number of transmission repetitions.
// mySwitch.setRepeatTransmit(15);
}

void loop() {
/* Same switch as above, but using decimal code */
mySwitch.send(5312960, 24);//код включения лампы
delay(5000);
mySwitch.send( 5312780, 24);//код выключения лампы
delay(5000);
}

 

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

Заранее спасибо за ответ

 

Vestint
Offline
Зарегистрирован: 25.06.2016

Парни выручайте... 

 

Нужен скетч,самый похожий этот. В общем тема такая. Будет стоять микрофон китайский 4-х ногий с выходами: аналог, цифра и +/-. По ТЗ надо прослушивать аппаратуру. Как только звинит сигнализация микрофон ловит сигнал и по радио кидает на дуина а та в свое время включает реле. Как только звук пропадает реле тут же гаснет. Возможно скетч выше так переделать? Я дуб дубом в написании... Помогите пожалуйста. 

По поводу микрофона:там стоит подстроичный резистор, я думаю ним громкость необходимую отрегулировать (пределы срабатывания).

 

Передатчик: берет сигнал с микрофона как тот услышит звук и передатчик отправляет сигнал на дуину с приемником.

Приемник: Получив сигнал от микрофона включает реле (до тех пор пока звук не пропадет на микрофоне передатчика)

vvadim
Offline
Зарегистрирован: 23.05.2012

Vestint пишет:

Парни выручайте... 

 

Нужен скетч,самый похожий этот. В общем тема такая. Будет стоять микрофон китайский 4-х ногий с выходами: аналог, цифра и +/-. По ТЗ надо прослушивать аппаратуру. Как только звинит сигнализация микрофон ловит сигнал и по радио кидает на дуина а та в свое время включает реле. Как только звук пропадает реле тут же гаснет. Возможно скетч выше так переделать? Я дуб дубом в написании... Помогите пожалуйста. 

По поводу микрофона:там стоит подстроичный резистор, я думаю ним громкость необходимую отрегулировать (пределы срабатывания).

 

Передатчик: берет сигнал с микрофона как тот услышит звук и передатчик отправляет сигнал на дуину с приемником.

Приемник: Получив сигнал от микрофона включает реле (до тех пор пока звук не пропадет на микрофоне передатчика)

в разделе "Ищу исполнителя" есть шанс что кто нибудь выручит.

здесь только если свой код покажешь.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Vestint пишет:

Как только звинит сигнализация микрофон ловит сигнал и по радио кидает на дуина а та в свое время включает реле. Как только звук пропадает реле тут же гаснет.

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