nema 17 кнопка и лампочка

Тема в разделе "Arduino & Shields", создана пользователем demoni12, 26 дек 2018.

  1. demoni12

    demoni12 Нуб

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


    #include <Stepper.h>
    #include <Bounce2.h>
    Bounce debouncer = Bounce();
    uint8_t LED = 13;
    int KNOPKA = 4; // пин кнопки

    long KNO1 = 0; // Исходное значение для таймера.
    long KNO2 = 2000; // 200 миллисекунд предотвращения повторного нажатия

    const uint8_t myStepper3 = 20; // количество шагов
    Stepper Steppe(myStepper3, 8, 9, 10, 11);


    void setup() {
    Steppe.setSpeed(40);
    pinMode(KNOPKA, INPUT_PULLUP);
    debouncer.attach(KNOPKA);
    debouncer.interval(5);
    pinMode(LED,OUTPUT);


    }

    void loop() {



    unsigned long r = millis();
    if(digitalRead(KNOPKA) == 0){

    debouncer.update();
    int KNOPKA= debouncer.read();


    if(r - KNO1 > KNO2){
    for (int i=0; i < myStepper3; i++){
    if ( myStepper3- i == HIGH)
    digitalWrite(LED,LOW);
    else
    { digitalWrite(LED,HIGH);}
    Steppe.step(1);};
    if ( delay == HIGH)
    digitalWrite(LED,LOW);
    else
    { digitalWrite(LED,HIGH);}
    delay(2000);

    { Steppe.step(-20);
    digitalWrite(LED,LOW);
    };

    KNO1 = r;
    }
    }
    }
     
  2. Все электроприборы греются, если их оставить включенными.
     
    parovoZZ нравится это.
  3. ну он же, на удержание работает.
     
  4. demoni12

    demoni12 Нуб

    на сколько я понял дело в библиотеке Stepper.h , она использует 2обмотки мотора чтобы он крутился
    но при завершении процессов скетча отключается только 1 обмотка
     
  5. он же, на удержание работает.
     
  6. demoni12

    demoni12 Нуб


    нет нажал отпустил кнопку он делает 20 шаг ждет 2сек делает -20шаг выкл + задействована лампочка
     
  7. обмотку нажал отпустил?... понятно...
    драйвер отпусти, у него входы специальные должны быть, для отключения нагрузки.
     
  8. demoni12

    demoni12 Нуб

    мне-бы лутше чтобы не через вход а через скетч все выключалось
     
  9. demoni12

    demoni12 Нуб

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

    возьми нармальный драйвер, вроде


    или почитай как оно вообще устроено и должно работать.
     
    parovoZZ и Daniil нравится это.
  11. demoni12

    demoni12 Нуб

    я имею виду что дело не в ардуино и не в драйвере а в скетче
     
  12. b707

    b707 Гуру

    ну ОК, давайте скетч посмотрим
    Можете обьяснить. что вы пытаетесь сделать в коде, который цитирую ниже, особенно во второй строке отрывка ?
    Код (C++):
    for (int i=0; i < myStepper3; i++){
    if ( myStepper3- i == HIGH)
    digitalWrite(LED,LOW);
    else
    { digitalWrite(LED,HIGH);}
    Steppe.step(1);};
    И еще интересное место
    Код (C++):
    if ( delay == HIGH)
    что-то не нашел в вашем коде, где вы описали переменную delay и чему она равна
     
  13. demoni12

    demoni12 Нуб

    чтобы лампочка горела когда мотор вращается
     
  14. b707

    b707 Гуру

    тогда вопрос два - при каких значениях i лампочка будет гореть, как вы думаете?
     
  15. demoni12

    demoni12 Нуб

    HIGH вкл и LOW выкл
     
  16. b707

    b707 Гуру

    давайте не тупите. Я вас не про занчение пина лампы спрашиваю, а про переменную <i> Эта переменная у вас в цикле for меняется от 0 до 19. Так при каких <i> лампочка будет гореть?
     
  17. demoni12

    demoni12 Нуб

    думаю 19
     
  18. b707

    b707 Гуру

    ну ладно, у нас тут не викторина поле чудес, в угадайку играйте сами.
    Удачи
     
  19. demoni12

    demoni12 Нуб

    спасибо за помощь
     
  20. parovoZZ

    parovoZZ Гуру

    ну так подправь скетч-то. Выкинь библиотеку глюченную, напиши свой обработчик драйвера, вообще разберись, как работает шаговый двигатель, как шаги организовать с максимальным КПД (чтоб ничего не грелось).
     
    demoni12 нравится это.