Arduino и пульт на 433МГц

Estranged
Offline
Зарегистрирован: 01.04.2014

Здравствуйте. Подскажите, пожалуйста, как реализовать такую задумку: есть 4-х канальный радиопульт от въездных ворот, работающий на 433МГц:

Самими воротами управляет только один канал. Есть желание использовать остальные каналы для управления светом под навесом для автомобиля. Т.е. нужен шилд, который сможет прочитать код с пульта, реле и сама Ардуинка. С реле и Ардуинкой понятно, а вот с шилдом - нет. Что можете посоветовать?

4ishops
Offline
Зарегистрирован: 06.10.2012

Любой 433Mhz комплект приемник-передатчик с ибей за пару долларов вполне себе для этих целей.

 

Estranged
Offline
Зарегистрирован: 01.04.2014

Как? Передатчик в пульт встраивать? А сможет ли приемник распознать команды с пульта? Насколько я понимаю, это комплект для связи двух Ардуино.

4ishops
Offline
Зарегистрирован: 06.10.2012

Нее, передатчик просто идет бонусом вместе с приемником:) если уверены что пульт на 433Mhz то скорее всего проблем не будет.

 

По скетчу смотрите в сторону библиотеки RCSwitch - http://code.google.com/p/rc-switch/wiki/HowTo_Receive

 

 

Estranged
Offline
Зарегистрирован: 01.04.2014

Пульт точно на 433МГц - на нем самом написано. Попробую, спасибо.

sav13
sav13 аватар
Offline
Зарегистрирован: 17.06.2013

4ishops пишет:

Любой 433Mhz комплект приемник-передатчик с ибей за пару долларов вполне себе для этих целей.

Пробовал таким приемником с библиотекой RСSwitch (есть там примеры на сканирование/распознование) различные сигналы ловить:

пульты управления освещением на 433МГц ловит бех проблем, Oregon погодную станцию ловит. 

На пульт от шлагбаума (Came) и сигналку от машины никак не реагирует. Видимо, там сигнал не OOK.

 

Estranged
Offline
Зарегистрирован: 01.04.2014

Ну вот и мне кажется, что не будет этот приемник пульт от ворот ловить, потому что там тоже шифрование идет от злоумышленников.

sav13
sav13 аватар
Offline
Зарегистрирован: 17.06.2013

Estranged пишет:

Ну вот и мне кажется, что не будет этот приемник пульт от ворот ловить, потому что там тоже шифрование идет от злоумышленников.

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

Estranged
Offline
Зарегистрирован: 01.04.2014

Да у китайцев такие и с реле в комплекте есть. Не хочется плодить в машине кучу пультов.

sav13
sav13 аватар
Offline
Зарегистрирован: 17.06.2013

Estranged пишет:

Да у китайцев такие и с реле в комплекте есть. Не хочется плодить в машине кучу пультов.

А у этих ребят спрашивали?

Estranged
Offline
Зарегистрирован: 01.04.2014

Спрашивал http://phreakerclub.com/forum/showthread.php?p=30084&posted=1.

Много страшных слов и пока мало что понятно.

vlkam
Offline
Зарегистрирован: 17.02.2013

Если пульт на HCS301 (а это практически стандарт для брелков с плавающим кодом), то вот есть

http://arduino.ru/forum/apparatnye-voprosy/biblioteka-chteniya-id-brelko...

Estranged
Offline
Зарегистрирован: 01.04.2014

О! Спасибо большое. На микрухе в пульте как раз написан HGS301 I/SN1046.

Pahan
Offline
Зарегистрирован: 03.02.2017

ПОМОГИТЕ разобраться великие ардуинщики

Есть радиопульт на 433 Мгц. Есть приемник на 433 под ардуино. Выход приемника подключен к esp-8266 b и светодиод например.

При нажатии кнопки пульта 1 раз -светодиод загорается. При повторном нажатии этой же кнопки на радиопульте - светодиод гаснет. В таком скетче я разобрался. Только вот при удержании кнопки радиопульта - светодиод мигает.

Как сделать, что бы хоть при однократном нажатии кнопки радиопульта, хоть при длительном(любое время) с последующим отпусканием - светодиод включился. А при повторном нажатии этой же кнопки радиопульта - хоть при однократном нажатии кнопки радиопульта, хоть при длительном(любое время) с последующим отпусканием - светодиод выключился.

Вот управлять так с 2 кнопками радиопульта тоже научился, а с одной кнопкой -никак не могу.

Мне бы как то по доступнее, если можно

При удержании пульта идет код 2276802 с периодом 447мкс. Я тоже думаю, что тут что-то с временем нужно...

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

- код 2276802 получен 1 раз

- код 2276802 поступает с периодом 447мкс

- код 2276802 поступает с периодом 447мкс и затем когда-то этот код не приходит дольше 447 мкс



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

- код 2276802 получен 1 раз

- код 2276802 поступает с периодом 447мкс

- код 2276802 поступает с периодом 447мкс и затем когда-то этот код не приходит дольше 447 мкс



Вот как то так я думаю, вот как бы это английскими буковками с русским пояснением, кто что делает, а то я совсем зеленый

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();
int led  = 12;

void setup()
{
  pinMode(12, OUTPUT);
  
  mySwitch.enableReceive(0);  // Receiver on inerrupt 0 => that is pin #2
}

void loop()
{
  if (mySwitch.available())
  {
    unsigned long value = mySwitch.getReceivedValue();
    Serial.print(value);
    switch (value) {
    case 0:
    Serial.println(" - Unknown encoding");
    break;
    case 2276802:
    digitalWrite(led, !digitalRead(led));
    break;
    default:
    Serial.println(" - EROR");
         }
         mySwitch.resetAvailable();
       }
    }

 

Short Circuit
Short Circuit аватар
Offline
Зарегистрирован: 17.05.2015

а что тут разбираться, код писать нужно, вот и все.

Pahan
Offline
Зарегистрирован: 03.02.2017

а я то думаю, что ж блин написать то, а оказывается все просто... СКЕТЧ надо написать. Все понял, благодарю.

nnm4evr
Offline
Зарегистрирован: 30.07.2017

Здравствуйте. У меня тот же вопрос, что и у товарища Pahan, т.к. ответа я не увидел. Как убрать повтор комманд при долговременном нажатии на кнопку пульта? Нужно чтобы некий код срабатывал один раз при первом кратковременном или долговременном нажатии кнопки, а при втором опять же кратковременном или долговременном нажатии той же кнопки срабатывал уже другой код. Типа включения/выключения реле/светодиода по одной кнопке. Я знаю как убрать так называемый "дребезг" при работе с механическими кнопками, но этот метод не прокатил с радио-брелком и приёмником.

b707
Offline
Зарегистрирован: 26.05.2017

nnm4evr пишет:

Здравствуйте. У меня тот же вопрос, что и у товарища Pahan,

в тексте  вопроса у товарища Pahan уже содержится весь ответ. Если повторные посылки кода следуют друг за другом с периодом в 447мс - это одно нажатие. Если перерыв больше - то два отдельных.

Теперь осталось только код писать, а это уже сами.