Motorsteuerung mit L293D

Moin

Ich ich habe eine Motorsteuerung mit einem Motor und einem L293D gebaut.

Sie läuft auch so weit, hier einmal die abgespeckte Version des Code.

void setup() {
  Serial.begin(9600);
  pinMode(6 , OUTPUT);
  pinMode(7 , OUTPUT);
  pinMode(10 , OUTPUT);
  digitalWrite(10, HIGH);
}

void loop() {
  analogWrite(6, 255);
  analogWrite(7, -255);
}

Am 293 liegt an Pin 8 & 16 je 5V

Wenn der Motor an Pin 6 & 7 angeschlossen ist, hat er deutlich weniger Umdrehungen als wenn er direkt an 5V anliegt.
Woran liegt das?

Grüße
Petra

analogWrite(7, -255);
Was macht das Minus da?

Außerdem produziert jeder Transistor einen Spannungsabfall.
An jedem Darlington der Brücke fallen ca 1V ab.
Der Motor bekommt also nur Vcc-2V

Die -255 an Pin 7 sind für ein Drehrichtungswechsel.
Hätte ich in dem abgespeckten Code natürlich weglassen können, sorry.

Ich hatte das so verstanden dass die Ausgangsspannung an Pin 3&6 / 11&14 mit der Eingangsspannung an Pin 8 4,5-36V versorgt wird. Würde dann ja bei einem spannungsabfall von 1 Volt auf 4 Volt hinauslaufen. Ich habe allerdings noch nicht gemessen das werde ich heute mal machen.

Die -255 an Pin 7 sind für ein Drehrichtungswechsel.

Keine Ahnung, welchen Arduino du benutzt.
Aber -255 kann keiner davon.
Die AVR Arduinos sehen statt-255 eine 1

Serial.print(byte(-255));

Würde dann ja bei einem spannungsabfall von 1 Volt auf 4 Volt hinauslaufen.

Da bei einer H-Brücke 2 Transistoren im Spiel sind, eher 2 mal 1V Abfall

Ansonsten verstehe ich dich nicht wirklich.
Habe KA, von welchen Pins du sprichst, und welche Bedeutung diese haben.

Werden wohl die Pins am L293D gemeint sein. Diesen gibt es aber mit 16 oder 28 Beinchen.
Bei der 16 Beinigen Variante sind 3 und 6 die Ausgänge der einen H-Brücke und 11 und 14 die der anderen.

sinnvolle werte für analogWrite() sond zwischen 0 und 255. Ich weiß zwar nicht was mit Werten außerhalb dieses Bereichs passiert, aber sicher nicht da was Du beabsichtigst.

Du hat einen Gedankenfehler.
Mit den Eingängen 2 und 7 bzw 10 und 15 des L293D steuerst Du die Drehrichtung. Die Geschwindigkeit mittels PWM signals Steuerst Du über EN Pin 1 bzw 15.

Du sagst jetzt nicht welche Platine Du benutzt; Beim Arduino UNO ist aber pin 7 kein PWM Ausgang.

Grüße Uwe

Ich liebe Schaltpläne!

Weil da so herrlich deutlich erkennbar ist, was mit was verbunden ist.
Man(ich) sehe förmlich, wie die Elektronen die Bahnen entlang flitzen.

Ich kann dir auch nur raten, Uwes Anleitung zu folgen.

Ich hatte es auhh mal wie du versucht und das Pwm-Signal direkt auf die Eingänge des L293D gelegt und die En-Pins auf dauerplus. Ergebnis: Der L293D ist unnötig warm geworden und die Motordrehzahl war mau.

Super danke. :slight_smile:

Da hatte ich ein paar Sachen falsch verstanden.
Jetzt funktioniert es. :slight_smile:

Danke