Необходима помощь

Тема в разделе "Arduino & Shields", создана пользователем Larinem, 24 сен 2015.

  1. Larinem

    Larinem Нуб

    Доброго времени суток!
    Необходима Ваша помощь.
    Задался я целью сделать при помощи arduino uno схему где светодиодная лента зажигалась бы от двух PIR сенсоров установленных в разных места.
    При попытки собрать купленное, оказалось, что мои познания в электрике стремятся к нулю... да и в коде...
    Итак я имею:
    - 5 метров ленты SMD 3014-120 1 A/м 12 Вт/м
    - блок питания 12V/ 60W
    - arduino uno
    - Инфракрасный датчик движения HC-SR501 для Arduino 2 шт.
    - Силовой ключ (Troyka-модуль) (он вообще тут нужен?)

    Я пользовался этой схемой:
    http://wiki.amperka.ru/_media/продукты:troyka:mosfet:mosfet-led-strip.png
    И этой:
    http://zelectro.cc/Media/Default/Periphery/20_PIR/PIR_sensor.jpg (хотя не уверен что она подходит)
    Помогите понять схему, а если и по коду направите - цены вам не будет.

    Просьба не судить строго.
    Возможно я приобрел что-то не подходящее и не докупил нужное?
     
  2. DrProg

    DrProg Вечный нерд

    Силовой ключ, насколько вижу, представляет собой транзистор MOSFET. А в чем проблема? Не работает? Можно вообще сделать в лоб на релейном модуле.
    Ну еще подключить датчики движения, конечно, и написать скетч который будет со всем этим что то делать. )
     
    ИгорьК нравится это.
  3. Larinem

    Larinem Нуб

    Подскажите, правильно ли я собрал схему?


    [​IMG]
     
  4. MDV

    MDV Гик

    Нет не правильно. Если использовать только один БП, то питание должно идти на все элементы и только одна лента включаться последовательно.
     
  5. Larinem

    Larinem Нуб

    Ну так ведь у ардуинки свое питание.
     
  6. DrProg

    DrProg Вечный нерд

    Ну так соберите и попробуйте, если все верно то заработает. Мне кажется все правильно.
     
    ИгорьК и Mestniy нравится это.
  7. Larinem

    Larinem Нуб

    Дело в том что у меня нет понимания того как написать код..
    Сможет кто-нибудь помочь?
     
  8. Tomasina

    Tomasina Сушитель лампочек Модератор

    эм, а зачем там вообще контроллер?
    С датчика поступает сигнал, идет напрямую на транзисторный ключ (он по уровням совместим), ключ включает ленту. Длительность свечения регулируется на самом датчике.
    Выходы датчиков можно подключить параллельно, исходным условиям это не противоречит.
     
  9. Larinem

    Larinem Нуб

    А как в таком случае это соединить?
    Спасибо!
     
  10. Airbus

    Airbus Радиохулиган Модератор

    Всё просто как Апельсин
    void setup()
    {
    pinMode(13, OUTPUT); //13 пин (индикационный диод и там же реле) установим в режим вывода
    }

    void loop()
    {
    if (digitalRead(4) == HIGH) //если датчик сработал
    {
    digitalWrite(13, HIGH); //включаем индикационный диод и реле
    }
    else //иначе
    {
    digitalWrite(13, LOW); //выключаем индикационный диод и реле
    }
    }
    Пины вывода можете вместо 13 назначить любой остальные пины-ввод (по умолчанию)какие читать тоже сами прописываете у меня например 4.Да и ещё:питать Ардуинку от 12Вольт только через специальный вход рядом с USB но никак не напрямую на плату ибо сожгёте
     
    Последнее редактирование: 26 сен 2015
  11. Larinem

    Larinem Нуб

    Благодарю! То есть это применимо к схеме что я собрал? Выглядит все просто, но пока не заработало..
     
  12. DrProg

    DrProg Вечный нерд

    Зачем с каждого датчика на отдельный пин? Спаяйте их вместе и получится один пин на датчик, второй на включение ленты. В программе записываете любой порядок действий, например:
    1. следим за датчиками, сработали - включили ленту,
    2. поглядываем на датчики, если есть движение не выключаем, если нет движения, засекаем N секунд и выключаем если за это время движение не возобновилось,
    3. если возобновилось го то п. 2., иначе го то п. 1.

    ПС: вообще для такой задачи Уну жалко до слез, сделать бы на Tiny 13, в крайнем случае на 85.
     
    ИгорьК нравится это.
  13. Larinem

    Larinem Нуб

    Все получилось, благодарю Вас!
     
  14. Airbus

    Airbus Радиохулиган Модератор

    Да вообще на рассыпухе можно парочка транзисторов и вуаля!
     
  15. Larinem

    Larinem Нуб

    Хотите сказать ардуинка долго так не проживет?
     
    Последнее редактирование: 26 сен 2015
  16. Vetrinus

    Vetrinus Гик

    Нет, ардуина проживет. Просто это процессор, работающий на частоте 16 МГерц. 16.000.000 операций в секунду. Под эту задачу это чрезмерно расточительное использование контроллера)
     
  17. Megakoteyka

    Megakoteyka Оракул Модератор

    Кого волнуют холостые такты? Можно при желании хоть частотой 1 Гц тактировать, если тактов жалко.
    Вопрос только в стоимости железа.
     
  18. Airbus

    Airbus Радиохулиган Модератор

    Хех!Цена вопроса!Ардуина от Версаче около 1500?Кетайская 500 "Голая" Мега-8 на Ебае (взял недавно) по 50 руб в России-150 Тини-13 на Ебае по 25 в России-50.Парочка КТ-315 бесплатно у меня их трёхлитровая банка ну а если покупать то где то рублей по 5.2х5=10 Есть разница?Ну а так конечно за что люблю Ардуино за бесконечное число примочек-шилдов которые частично сам паяю.Поэтому не сделать из них что либо-грех))))))))))
     
  19. DrProg

    DrProg Вечный нерд

    Ардуинка Уно сугубо для прототипирования, а готово изделие делать ну хотя бы на Мини, а то и на голых Atmel-ах.
     
    ИгорьК нравится это.