создание безпроводной связи

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем Aziza, 17 фев 2014.

  1. Aziza

    Aziza Нерд

    Добрый день! Нужна ваша помощь, пожалуйста.
    У нас проблема с реализацией идеи, идея такова:
    Хотим подключить беспроводную связь между лампой и инфокрасным датчиком движения (PIR).
    Есть радиомодули с помощью которых хотим установить связь, но не знаем как именно связать это с лампой. А также, есть проблемы с созданием кода для этой системы.

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

    Вложения:

    • PIR_sensor.jpg
      PIR_sensor.jpg
      Размер файла:
      428,1 КБ
      Просмотров:
      1.116
  2. acos

    acos Официальный гик Администратор

    Недостточно информации - что за радиомодули?
     
  3. Aziza

    Aziza Нерд

    радиомодули 433, радиопередатчик и радиоприемник
     
  4. Aziza

    Aziza Нерд

     

    Вложения:

  5. acos

    acos Официальный гик Администратор

    а какое-нибудь описание? вот эта вот data, это входы или выходы? Допустим, тот что поменьше - приемник, а тот что побольше- приемо-передатчик. И еще допустим, что у того, что поменьше, data это выход. и допустим, что этот выход просто повторяет то, что пришло на вход приемопередатчику. осталось только узнать, где у приемопередатчика вход, и верны ли вообще мои допущения. 433 это частота, она нам на эти вопросы ответить не поможет.
    Лучше б поискать даташит. И если все предположения оказались верны, то нужно разобраться, что за устройство будет давать команду на включение. Если это будет другая ардуино, то можно было б выбрать протокол uart, на какой-нибудь небольшой скорости.
     
  6. Aziza

    Aziza Нерд

    Да, то что поменьше это передатчик, а побольше уже приемник. Каждый из модулей подключается к контроллеру — питание через Vcc/Gnd и вывод Data подключается к свободному цифровому входу на микро-контроллере. И, да, мы хотели использовать две ардуино.
     
  7. acos

    acos Официальный гик Администратор

    Хорошо)
    Тогда присоедините приёмник к пину ардуины, обозначенному как RX, а передатчик к пину передающей ардуины, обозначенному как TX (если у вас не вызывает вопросов, где в передатчике вход, а где выход). В обоих ардуинах, в секции Setup сделайте
    Код (Text):
    void setup() {          
      Serial.begin(1200);
    }
    Потом, видимо ваш передатчик будет слушать PIR сенсор? И он так же будет подключён ко второму входу? Тогда сделайте в передатчике

    Код (Text):
    void loop() {
      if (digitalRead(2)==0) {
      Serial.write(145); //какое-нибудь число
      }
      delay(1);  
    }
    А в приёмнике
    Код (Text):
    void loop()
    {
      if (Serial.available() > 0) {

        int inByte = Serial.read();

        if (inByte==145) {
          digitalWrite(4, HIGH);  //тут у вас лампа на реле
        }

      }
    }
    Не забудте 4-ю ногу настроить на выход
     
  8. Aziza

    Aziza Нерд

    спасибо, а возник вопрос. Как подключить relay, который связан с лампой?
     
  9. acos

    acos Официальный гик Администратор

    так у вас же всё нарисовано. Причём правильно нарисовано - ещё в первом посте
     
  10. Aziza

    Aziza Нерд

    как я поняла, relay, PIR сенсор и передатчик на одной плате?
     
  11. acos

    acos Официальный гик Администратор

    если я правильно вас понял, то на одной плате - PIR и передатчик, а на другой - приёмник и лампочка
     
  12. Aziza

    Aziza Нерд

    да, а код вводить в один скетч? у меня две ардуино на одном комп, все правильно? ошибка виходит(((
     
  13. Aziza

    Aziza Нерд

    выходит*
     
  14. Aziza

    Aziza Нерд

    sketch_feb17b.ino: In function 'void loop()':
    sketch_feb17b:10: error: redefinition of 'void loop()'
    sketch_feb17b:4: error: 'void loop()' previously defined here
     
  15. acos

    acos Официальный гик Администратор

    Выкладывайте весь скетч целиком)
    У вас будет два разных скетча на разных ардуинах.
     
  16. Aziza

    Aziza Нерд

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

    Если использовать батарейки на обе системы с трансмиттером и ресивером, то как их подключить?

    Ниже предоставлены все фотографии.
     

    Вложения:

    • 001.jpg
      001.jpg
      Размер файла:
      748,1 КБ
      Просмотров:
      525
    • IMG_0071.JPG
      IMG_0071.JPG
      Размер файла:
      696,8 КБ
      Просмотров:
      408
    • IMG_0072.jpg
      IMG_0072.jpg
      Размер файла:
      700,9 КБ
      Просмотров:
      408
    • IMG_0074.JPG
      IMG_0074.JPG
      Размер файла:
      709,2 КБ
      Просмотров:
      437
    • IMG_0070.jpg
      IMG_0070.jpg
      Размер файла:
      739,8 КБ
      Просмотров:
      413
    • IMG_0069.jpg
      IMG_0069.jpg
      Размер файла:
      925,5 КБ
      Просмотров:
      626
    • IMG_0069.jpg
      IMG_0069.jpg
      Размер файла:
      669,2 КБ
      Просмотров:
      443
  17. acos

    acos Официальный гик Администратор

    Код нужно вставлять сюда текстом. Желательно используя теги (вы когда сообщение пишите, тут сверху есть такая кнопочка, которая называется «Код». Её нажимаете, и вставляете код)
    Далее — ваше реле должно быть подключено к той же ардуине, к которой подключен ресивер.
    а передатчик к той, к которой подключен датчик.

    По схемам - ничего не понял) Можете нарисовать? Лучше во fritzing. http://fritzing.org/home/
     
  18. acos

    acos Официальный гик Администратор

  19. Aziza

    Aziza Нерд

  20. Aziza

    Aziza Нерд

    а есть ли возможность встретиться с кем-нибудь, кто бы мог помочь? так объяснять сложновато( наглядно лучше.