Skocz do zawartości

Spadki napięcia na wyjściach L293D, sterowane Arduino


DaB

Pomocna odpowiedź

Mam problem z dwoma silnikami pochodzącymi z drona. Silniki szczotkowe 3.7V, 0.1A połączone z kontrolerem L293D. Źródło zasilania 12V (8x AA1.5V). Moim celem było sterowanie prędkością silników za pomocą komunikacji bluetooth (zasilany z arduino 5v). Sam moduł udało się skutecznie podłączyć bez większych przesekód, lecz sterowanie silnikami okazało się już przeszkodą. Po podłączeniu do kontrolera dwóch silników na wyjściach zmierzyłem jakieś 2.5V przy PWM 255. Gdy odłączyłem jeden silnik było trochę lepiej lecz nadal nie było 3.7V. Kontroler został podłączany zgodnie ze schematem (kilka razy). Co wtakim wypadku trzeba poczynić?

 

2.   Dodatkowe pytanie

Przy okazji bawienia się silnikami wpadłem na pomysł zasilenia silnika przez stabilizator liniowy LM7805 po prawidłowym podłączeniu wszystkich elementów pomiar z silnika wskazywał  0.6V. Co się stało z resztą napięcia i co trzeba zrobić by otrzymać 3.7V?

 

16787407431557897103849521981754.jpg

  • Lubię! 1
Link do komentarza
Share on other sites


#define motor1 6
#define motor2 10

int speed = 0;
int cord_X;
int cord_Y;

void setup() {
  Serial.begin(9600);
  
  pinMode(12, OUTPUT); //kierunek obrotów
  pinMode(11, OUTPUT);
  pinMode(10, OUTPUT);//obroty B

  pinMode(9, OUTPUT); //kierunek obrotów
  pinMode(8, OUTPUT);
  pinMode(6, OUTPUT); //obroty A

}


void loop() {
  if(Serial.available() > 0){
    speed = Serial.read();
  }
  

  if(speed <= 255){
    cord_X = speed;

    analogWrite(motor1, cord_X);
    digitalWrite(12, LOW);
    digitalWrite(11, HIGH);

    analogWrite(motor2, 0);
    digitalWrite(9, HIGH);
    digitalWrite(8, LOW); 
    
    
  }   

  delay(30);
}



void Axel_X() {
  if(speed < 200){
    cord_X = map(speed, 0, 180, 0, 255);

    Serial.println(cord_X);

    analogWrite(motor1, cord_X);
    digitalWrite(12, HIGH);
    digitalWrite(11, LOW);

    analogWrite(motor2, cord_X);
    digitalWrite(9, LOW);
    digitalWrite(8, HIGH);
  }
}


void Axel_Y() {
  if(speed < 400 && speed > 200) {
    cord_Y = speed - 200;
    cord_Y = map(cord_Y, 0, 180, 0, 255);
    Serial.println(cord_Y);
  }
}

Tu jest schemat i program, wiem że daleki od perfekcji, ale dopiero się uczę.

20230318_220816.jpg

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

17 godzin temu, DaB napisał:

@Mrpatryk czyli jakie powinno być napięcie skoro gdy nawet podnoszę napięcie do tych 12V to napięcie na silnikach nie jest wystarczające?

Obstawiał bym albo na złe wysterowanie l293D albo upalony , u mnie przy 12V zasilanie, steruje sb wentylatorem 12V, 0.16A - i mam na wyjściu z l293D  10,8V - zasilam zasilaczem 12V 1A.

Link do komentarza
Share on other sites

17 godzin temu, DaB napisał:

@Mrpatryk czyli jakie powinno być napięcie skoro gdy nawet podnoszę napięcie do tych 12V to napięcie na silnikach nie jest wystarczające?

odepnij silniki wrzuć 12V na zasilanie l293D i sprawdź co masz na wyjściach przy 255 pwm 😉 - jak z 12V będziesz miał ok 10 to l293D jest porządku, jak poniżej to zmień scalaka na inny i testuj ; )

Link do komentarza
Share on other sites

@Mrpatryk Dzięki za odpowiedź. Będę próbował 🙂

Jeszcze takie pytanie. Jeśli mam te dwa silniki 3.7V to z drugiego prawa kirchhoffa wynika, że powinienem użyć zasilania 7.4V, to w takim razie w jaki sposób 4 takie silniki zostały zasilone przez akumulator 3.7V?

Link do komentarza
Share on other sites

Dziwna sprawa skoro ma zasilanie osobne 5V z PC a silnik z 12V z baterii. ja bym próbował z mostkiem pokombinować 😉 U mnie zasilam uno z 12V z zasilacza 1A i z tego samego zasilam mostek i smiga to bez problemu, ogolnie trochę mały amperaż na zasilaczu powinien być ok 2A ale niestety nie miałem pod ręka mocniejszego 😉

 

Edytowano przez Mrpatryk
Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.