#1 2019-04-18 11:48:16

Lelik
Учасник
Зареєстрований: 2019-04-05
Повідомлень: 7

драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

Есть такая схема :

motor_speed.png

Мега, к ней на пин 2 подключен оптический энкодер, на пин 22, 23 подключен драйвер двигателя, Мега запитана оn USB.

К драйверу подключен GEAR мотор (не шаговый).

Энкодером нужно считать обороты мотора, использую колесо на валу с одной прорезью (один оборот - одно срабатывание)

Проблема : без нагрузки на мотор, показания энкодера точные. При нагрузке появляются ложные срабатывания, причем не единичные, а десятками.

Пробовал два варианта устранения ложных срабатываний предложенных тут http://androminarobot-english.blogspot.com/2017/03/encoder-and-arduinotutorial-about-ir.html

1 - конденсатор 100nF на DO и GND энкодера

2 - добавить задержку 500 микросекунд между срабатываниями

Результат практически не меняется.

Неактивний

#2 2019-04-18 14:45:22

vvr
Учасник
Зареєстрований: 2015-04-12
Повідомлень: 874

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

а где код....

Неактивний

#3 2019-04-18 15:21:00

Lelik
Учасник
Зареєстрований: 2019-04-05
Повідомлень: 7

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

int encoder_pin = 2;
volatile int pulses = 0;
static volatile unsigned long debounce = 0;

void setup(){
   Serial.begin(115200);
   pinMode(encoder_pin, INPUT);
   attachInterrupt(0, counter, RISING);
   pinMode(22, OUTPUT);
   pinMode(23, OUTPUT);
   digitalWrite(22,LOW);
   digitalWrite(23,HIGH);
}

void loop(){
  delay(1000);
  Serial.println(pulses);
}
void counter(){
  if( digitalRead (encoder_pin) && (micros()-debounce > 1000) && digitalRead (encoder_pin) ) { // если использовать задержку
    debounce = micros(); 
    pulses++;
  }
}

Собрал еще раз всю схему на столе, считает прерывания правильно даже без конденсаторов (напаял и на мотор 100nF) и задержки в counter.

Мотор должен крутить вал и собирать римскую штору на окне.

А для проекта используются провода длиной 2 метра от драйвера до мотора и от ардуино до датчика. И похоже, проблема проявляется на длинных проводах... Но все равно не уверен. Попробовал с длинными проводами на столе - работает. Подключаю к шторе - появляются лишние срабатывания, причем только когда идет максимальная нагрузка, при подъеме, на спуске все нормально.

Неактивний

#4 2019-04-18 17:41:54

Моторист
Гість

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

Видать, с питанием и/или землями напутали если мотор, под нагрузкой, так мешает.

#5 2019-04-18 18:50:42

Lelik
Учасник
Зареєстрований: 2019-04-05
Повідомлень: 7

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

Схема точно такая, как на рисунке. Убрал из проекта все остальное.

Неактивний

#6 2019-04-18 18:53:21

Lelik
Учасник
Зареєстрований: 2019-04-05
Повідомлень: 7

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

Может ли мотор брать больше, чем может пропускать L9110 и из-за этого  появляться помехи ? Микросхема на L9110 сильно греется во время нагрузки.

Неактивний

#7 2019-04-18 19:19:26

Моторист
Гість

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

Может, при механической перегрузке или неисправности.

#8 2019-04-18 22:04:56

vvr
Учасник
Зареєстрований: 2015-04-12
Повідомлень: 874

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

Lelik пише:

Может ли мотор брать больше, чем может пропускать L9110 и из-за этого  появляться помехи ? Микросхема на L9110 сильно греется во время нагрузки.

вы бы сначала глянули соответствие рабочего тока движков и драйвера.

Неактивний

#9 2019-07-08 11:57:56

Леня
Гість

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

Подключил два моторчика к драйверу L298N. Ардуино питается от 7.2v то есть от дух аккумуляторов по 3.4v , но моторчики крутятся очень медленно. Я пробовал запитать ардуино от USB и моторчики крутилися нормально. Помогите разобраться.

#10 2019-07-08 14:01:28

vvr
Учасник
Зареєстрований: 2015-04-12
Повідомлень: 874

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

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

Неактивний

#11 2019-07-08 18:15:21

MikeM
Учасник
З Киев
Зареєстрований: 2017-11-03
Повідомлень: 160

Re: драйвер двигателя L9110S плюс энкодер L393 ошибки при нагрузке

По земляному проводу датчика (даже по его части) не должны протекать посторонние токи.
В идеале земляные провода от всех компонентов системы должны соединяться в одной точке у источника питания.
Датчик по цепям питания зашунтировать конденсатором 1000 мкФ

Остання редакція MikeM (2019-07-08 18:19:41)

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму