Тормозит шаговый мотор при повороте энкодера
- Войдите на сайт для отправки комментариев
Пт, 10/11/2017 - 15:40
#include <iarduino_Encoder_tmr.h> iarduino_Encoder_tmr enc(11,12); #include <CustomStepper.h> CustomStepper stepper(4, 5, 6, 7); void setup(){ Serial.begin(9600); enc.begin(); } void loop(){ int i=enc.read(); if(i){ if(i==encLEFT ){Serial.println("<"); stepper.setDirection(CCW); stepper.rotateDegrees(3); } if(i==encRIGHT){Serial.println(">"); stepper.setDirection(CW); stepper.rotateDegrees(3); } stepper.run(); } //stepper.run(); }
Здравствуйте. При повороте энкодера шаговфый мотор тормозит. Как я поняла происходит это из-за задержек?
Если раскоментировать строку с //stepper.run();, а сверху убрать, то программа не работает.
Как исправить?
Прочитала
Библиотека iarduino_Encoder_tmr использует второй аппаратный таймер,
Как остановить работу энкодера пока не будет осуществлен поворот шагового мотора?
Работает. Правильно ли я сделала? Или оптимальнее сделать иначе?
Как остановить работу энкодера пока не будет осуществлен поворот шагового мотора?
пусть энкодер током бьёца, пока мотор проворачивается.
а на прерывания энкодер прицепить , попробуйте...