Нужна помощь с мотором

Тема в разделе "Моторы, сервоприводы, робототехника", создана пользователем Vasai, 25 мар 2015.

  1. Vasai

    Vasai Нуб

    Добрый день. Сразу говорю я новичок в использование arduino, да и вообщем никогда таким не занимался. Но все это очень интересно, и есть желание реализовать автоматические жалюзи, но никак не могу понять как работать с мотором, в интернете нет толковой инструкции его подключения. Подскажите пожалуйста как реализовать чтоб мотор работал от фоторезистора, при темноте поворачивал на 2 сек в одну сторону, при свете в другую?
     
  2. vvr

    vvr Инженерище

    учимся работать с фоторезистором
    http://wiki.amperka.ru/конспект-arduino:ночной-светильник
    решаем какой мотор будем использовать (шаговый, коллекторный, серву) и в зависимости от типа двигателя движемся дальше(для шагового и коллекторного нужны будут драйвера)
     
  3. Vasai

    Vasai Нуб

    Спасибо. пока только вот так смог сделать, как сделать, чтоб пороговое значение было(темно, светло), и когда светло, то запускается мотор на 2 сек, а потом когда темнеет в обратную сторону на две сек? Мотор думаю такой использовать
    Код (Text):

    int led = 13;
    int ldr = 0;
    int Mot = 9;

    void setup()
    {

    pinMode(led, OUTPUT);
    pinMode(Mot, OUTPUT);

    }
    void loop()
    {
    if (analogRead(ldr) < 800) digitalWrite(Mot, HIGH);
    else digitalWrite(Mot, LOW);

    }
    Снимок2.PNG
     
  4. vvr

    vvr Инженерище

    Ты дружище не обижайся, но прочти что ты написал и кто в этой пурге сможет разобраться (исключительно текст сообщения)
    как управлять мотором.
    если тебе надо менять направление, то нужен драйвер
    http://zelectro.cc/L293D
     
  5. Ну если обычный мотор, то он имеет скажем так две характеристики- направление и скорость вращения, тоесть при подключении мотора, разумеется через драйвер, мы выбираем не просто одну характеристику (digitalWrite(motor, HIGH)
    digitalWrite(motorrev, LOW)) где, например, "motor" это скорость , а "motorrev" его направление
     
  6. Для начало определи что для твоего датчика темно, а что светло, затем зафиксируй это показание как порог, затем например пишешь:
    if ......
    {
    digitalWrite(motor, 1);
    digitalWrite(motorrev, 0);
    delay(2000);
    digitalWrite(motor, 0);
    digitalWrite(motorrev, 0);
    }

    else
    {
    ...
    }
    Выбирая 1 или 0 мы добъемся нужного направления и скорости