Forum: Mikrocontroller und Digitale Elektronik Motorsteuerung mit L298N und Attiny


von XtremeStevie (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Mikrocontroller-Community,

ich bin absoluter Anfänger in diesem Themenbereich und versuche gerade 
erste Kenntnisse aufzubauen.

Anlass ist die Ansteuerung eines Ablagefachs in meinem Auto, das Fach 
beinhaltet Werksseitig einen CD Wechsler und wird vom Radio geöffnet, 
beide Geräte wurden jedoch entfernt/ersetzt und ich möchte die Funktion 
wiederherstellen. Eine Anleitung habe ich gefunden, siehe Anhang, aber 
ich möchte ja auch etwas lernen :)

Das Fach ist hinter der Blende vom Bedienfeld (Warnblinker/Sitzheizung 
etc.), hier befindet sich auch ein Taster zum öffnen (Schaltet nach 
Masse), das Kabel ist bereits fertig.

Unter dem Fach sitzt der Motor, der ungefähr eine Viertelumdrehung macht 
um es aufzuschieben, dann anhalten sollte, und bei erneutem Tastendruck 
wieder schließt.

L298(N), Attiny25/45, die ganzen restlichen Bauteile, USB Programmer und 
zugehörige Software, sowie die Bascom Demo sind vorhanden.

Nun zu meinen Fragen:

1. Funktioniert dieser Code? :D ich verstehe leider nicht viel davon.

2. Ansteuerung und Richtungswechsel klingen für mich plausibel, ist mit 
Schwellwert Komparator die Blockadeabschaltung gemeint?

3. Liege ich mit meiner Annahme richtig, dass Pin 5 und Pin 6 dazu 
verglichen werden und die 0,8V der Schwellwert sind?

4. Kommt der mittlere Pin vom Poti an Pin 6
und die anderen beiden an 5V / GND?

5. Was muss ich ändern um einen Attiny45 statt 25 zu verwenden?

6. Müssen Eeprom / Fuse und Lockbits verändert werden oder reicht es die 
Hex Datei in den Flash zu spielen?

7. Das Fach soll bei Zündung an automatisch zu gehen, +5V kommt vom 
L7805 und wird aus Dauerplus und Kl.15 (geschaltetes Plus Zündung) 
erzeugt, ich verstehe nicht wie der Attiny den unterschied bemerken soll 
(ist beides +12V)
Und welche Zeile im Code dafür verantwortlich sein soll.

Fürs erste wäre das alles aber ich denke weitere Fragen werden Folgen, 
ich habe noch eine weitere Idee mit den gleichen Bauteilen :)

von F. F. (foldi)


Lesenswert?

Als erstes solltest du kein zip benutzen.
Zum Beispiel auf dem Handy wird sich das kaum jemand runter laden 
wollen.

von F. F. (foldi)


Lesenswert?

XtremeStevie schrieb:
> Das Fach soll bei Zündung an automatisch zu gehen, +5V kommt vom L7805
> und wird aus Dauerplus und Kl.15

Ein 7805 ist da wohl wenig geeignet. Der ist schon von der 
Eingangsspannung eher knapp und muss zuviel verbrennen. Wird daher sehr 
heiß.
Außerdem ist Klemme 15 kein Dauerplus. Da musst du an Klemme 30.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

> Funktioniert dieser Code?

Das erfährst du am Besten durch Testen. Eine einfache Sichtkontrolle 
kann diese Frage nicht zufriedenstellen beantworten.

> ist mit Schwellwert Komparator die Blockadeabschaltung gemeint?

Wo steht das? Ich habe den Zusammenhang nicht gefunden.

Am Widerstand Rs fällte eine Spannung ab, die anzeigt, wie viel Strom 
durch den Motor fließt. Diese wird durch mehrere R/C Filter (kommt mir 
fragwürdig vor) dem Komparator zugeführt. Am Poti stellst du eine 
Schwellenspannugn von 0,8V ein. Wenn die Spannung an Rs diesen Wert 
überschreitet, reagiert das Programm.

> Kommt der mittlere Pin vom Poti an Pin 6
> und die anderen beiden an 5V / GND?

Ja

> Was muss ich ändern um einen Attiny45 statt 25 zu verwenden?

Wahrscheinlich nichts, bis auf die offensichtliche Zeile
> $regfile = "ATtiny25.DAT"

> Müssen Eeprom / Fuse und Lockbits verändert werden oder
> reicht es die Hex Datei in den Flash zu spielen?

Das Programm nutzt offensichtlich das Eeprom nicht und die Lock Bits 
haben keinen Einfluss auf die Programmausführung. Zu den Fuses steht was 
im Quelltext:
> $prog &HFF , &H62 , &HDF , &HFF Das entspricht der Standardvorgabe, mit der die 
Chips verkauft werden.

> und wird aus Dauerplus und Kl.15
> (geschaltetes Plus Zündung) erzeugt

Im Schaltplan kannst du sehen, daß die Schaltung nur an "Zündung" 
angeschlossen wird. Der Pfeil, der nach rechts Zeigt und mit +12V 
beschriftet ist, führt zum Motortreiber IC. Da soll NICHT die Batterie 
angeschlossen werden.

von Stefan F. (Gast)


Lesenswert?

> Der ist schon (a) von der Eingangsspannung (b) eher
> knapp und muss zuviel verbrennen.


a: Ja ist knapp. Er könnte bei Spannungsspitzen kaputt gehen. Besser 
einen 5V Regler nehmen, der möglichst viel Eingangsspannung verträgt.

b: Nein. Die Schaltung nimmt nur wenige Milliampere auf.

von F. F. (foldi)


Lesenswert?

Habe mir das zip file nicht auf dem Handy angesehen.

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

XtremeStevie schrieb:
> L298(N), Attiny25/45, die ganzen restlichen Bauteile, USB Programmer und
> zugehörige Software, sowie die Bascom Demo sind vorhanden.
>
Kennt sich jemand zufälliger Weise mit dem L298 seinen Timing Diagrammen 
aus ?

Beitrag "Re: CRS Robotics A255 Roboterarm"


Bernd_Stein

von XtremeStevie (Gast)


Lesenswert?

Danke für die Antworten :)

Die Zip Datei ist von dem Verfasser des ganzen, keine Ahnung wie man das 
am Handy entpackt.

Ich habe hier L78S05CV (TO-220), die sind mit 35V angegeben, mit einem 
Kühlkörper sollte das doch gehen oder?

> Am Widerstand Rs fällte eine Spannung ab, die anzeigt, wie viel Strom
> durch den Motor fließt. Diese wird durch mehrere R/C Filter (kommt mir
> fragwürdig vor) dem Komparator zugeführt. Am Poti stellst du eine
> Schwellenspannung von 0,8V ein. Wenn die Spannung an Rs diesen Wert
> überschreitet, reagiert das Programm.


Wie würde man die Spannung vom Sense Pin unfragwürdig zuführen? Nur mit 
einem R/C Glied? Und wofür ist der 2,4Ohm Widerstand?


> Im Schaltplan kannst du sehen, daß die Schaltung nur an "Zündung"
> angeschlossen wird. Der Pfeil, der nach rechts Zeigt und mit +12V
> beschriftet ist, führt zum Motortreiber IC. Da soll NICHT die Batterie
> angeschlossen werden.

So ergibt das Schon mehr Sinn :D

Ich denke am Wochenende werde ich ein wenig löten, ich berichte dann 
nochmal, vielen Dank :)

von Stefan F. (Gast)


Lesenswert?

> Die Zip Datei ist von dem Verfasser des ganzen,
> keine Ahnung wie man das am Handy entpackt.

Faule Ausrede. Du programmierst doch nicht auf deinem Smartphone. Wenn 
Du Hilfe bekommen möchtest, solltest du schon mehr Eigeninitiative 
zeigen, denn Faulheit mögen wir nicht.

>  mit einem Kühlkörper sollte das doch gehen oder?

Frage nicht, rechne es aus. Wenn du nicht weißt, wie das geht, dann 
helfen wir gerne.

> Wie würde man die Spannung vom Sense Pin unfragwürdig zuführen?

Ich würde nur einen Tiefpass verwenden. Welche Werte der haben muss, 
würde ich an einem Probeaufbau empirisch ermitteln. Bis dahin ist der 
Schaltplan des Autors ein Anfang, besser als nichts.

> Und wofür ist der 2,4Ohm Widerstand?

Das habe ich bereits erklärt. Der Fachbegriff dazu lautet "Shunt". Lies 
das Datenblatt des IC, da ist es noch ausführlicher erklärt.

Mich stört deine Arbeitseinstellung. Anscheinend möchtest du die 
Schaltung im Detail verstehen, aber keine Zeit investieren. Wenn Du 
Elektronik wirklich verstehen willst, musst du lesen, lesen lesen. 
Tausende Seiten. Wer darauf keine Lust hat, bleibt auf dem Level, 
fertige Schaltungen auf gut Glück nachzubauen ohne sie zu verstehen.

Überlege Dir, welches Niveau Du erreichen willst. Es kann durchaus Ok 
sein, unten bleiben zu wollen. Aber dann darf man nicht die Funktion 
jedes einzelnen Bauteils hinterfragen.

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Hier noch ein Layoutvorschlag, da die vom Chinesen käuflich zu 
erwerbenden, den Shunt nicht berücksichtigen.

https://electronics.stackexchange.com/questions/408237/review-of-pcb-design-l298n/408248


Bernd_Stein

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Hier noch eine Begrifflichkeit, wonach man suchen kann.

Beitrag "Re: CRS Robotics A255 Roboterarm"


Bernd_Stein

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Hallo,

vielleicht kann einer was zu diesen Dioden bzw. Freilaufdioden sagen.

Beitrag "Re: CRS Robotics A255 Roboterarm"


Bernd_Stein

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Angehängte Dateien:

Lesenswert?

Bernd S. schrieb:
> Hallo,
>
> vielleicht kann einer was zu diesen Dioden bzw. Freilaufdioden sagen.
>
> Beitrag "Re: CRS Robotics A255 Roboterarm"
>
Der L298N braucht ja Freilaufdioden mit einer Schaltzeit trr =< 200ns.

Welche Zeit bzw. Zeiten hat die Schottky-Diode im Anhang ?


Bernd_Stein

: Bearbeitet durch User
von MaWin (Gast)


Lesenswert?

Bernd S. schrieb:
> Welche Zeit bzw. Zeiten hat die Schottky-Diode im Anhang

Schottkys haben unter 20ns.

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

MaWin schrieb:
> Schottkys haben unter 20ns.
>
Danke das sich mal wieder jemand mit Kompetenz gemeldet hat.

Bei der Sperr-Erholzeit ( trr = Reverse Recovery Time ),
handelt es sich um die Zeit, die eine Wechseldiode benötigt, um 
vollständig von einem AUS-Status in einen EIN-Status zu wechseln.

Warum L298N ?

1. Preis
   Ca. 1,60€ für eine komplette Schaltung

2. Fertiges Modul
   Hat sogar einen 5V-Festspannungsregler mit an Board.

3. Universell
   Für 2-Phasen Unipolare,- und Bipolare Schrittmotoren mit einem
   Strangstrom von 2A und einer Spannung von 4,8V bis 46V geeignet.

   Sowie für zwei Bürstenbehaftete Motoren mit jeweils 2A oder durch
   paralellschalten für einen mit 4A und dies ebenfalls für 4,8V bis
   46V.

   Wobei ich aus dem DB nicht schlau werde, ob es doch nur 3,5A sind.


Bernd_Stein

: Bearbeitet durch User
von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Der L6203 ( 12V - 48V, 4A Dauerstrom, 5A Peak ) wäre auch nicht 
schlecht, aber es gibt vom Chinamann zur Zeit keine fertigen Platinen 
und somit ist er erstmal nicht mit dem L298N zu vergleichen.

Der DRV8871 ( 6,5V - 45V, 3,6A Peak ) ist mit ca. 5,20€ nicht wirklich 
vergleichbar.

Da sollte man lieber zum BTS7960 ( 6V - 27V, 43A Peak ) greifen der 
mit ca. 6€ zu Buche schlägt, wenn es nicht so auf hohe 
Versorgungsspannungen ankommt.

Passendere Alternativen habe ich für einen H-Brückentreiber der 24V/4A 
Bürstenbehaftete Motore treiben soll nicht gefunden.


Bernd_Stein

: Bearbeitet durch User
von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Für Schrittmotorsteuerungen kann ich den L298N nicht mehr empfehlen, da 
gibt es preilich gleiche mit besserer Performance.

Ganz beliebt der A4988.

Interessant sind die Treiber von Trinamic TMC2100, 2130, 2160 und
vor allem der 5072-LA, da dieser 2x 1,1A, also ebenfalls durch
parallelschalten 2,2A zur Verfügung stellen kann. Leider alles zu wenig
für mich, aber in der 3D-Druckszene gerne verwendete Schrittmotortreiber
wegen dem Stealth-Mode und anderer Features, wie z.B. Software
"Endschalter".


Bernd_Stein

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Scheinbar kennst du den Unterschied zwischen billig und preiswert nicht. 
Wenn du so ein Pfennigfuchser bist, musst du wohl weiterfrickeln und 
L298 abbrennen. Es gibt halt nicht immer alles vom Chinaman. Und längst 
nicht alles aus China ist auch wirklich brauchbar.

Tip: Man kann auch selbst eine Platine machen...

Mit freundlichen Grüßen
Thorsten Ostermann

: Bearbeitet durch User
von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Ich habe mal untersucht, welche Temperatur der L298N auf der 
Chinaplatine, bei 24V, so annnimmt. Dazu habe ich auf sein Gehäuse einen 
DS 18B20 aufgeklebt und zwei Stück 12Ohm  50W  1% 
Hochleistungswiderstände zum belasten benutzt.

Die Platine habe ich mit 4x Freilaufdioden ( 4A/40V ) des Typs 
MBRAF440T3G bestückt, da die Platine im " Parallelmode " verdrahtet 
ist. Nutzen hier zwar nichts, da kein Motor angeschlossen ist, wollte 
aber mal erwähnen, das diese wunderbar auf die Lötpads passen.

Bei 24 Ohm kam ein maximaler Strom von 0,7A zustande, wobei der IC eine 
Temperatur von ca. 49°C, bei einer Raumtemperatur von ca. 20°C aufnahm.
Der Widerstand selbst, der auf einem CPU-Kühler mit Wärmeleitpaste 
aufgebracht ist erreichte eine Temperatur von ca. 84°C.

Es sei auch erwähnt, das der L298N nun auch mit Wärmeleitpaste versehen 
wurde.

Bei 12 Ohm betrug der Strom ca. 1,3A. Gehäusetemperatur ~64°C und 
Widerstand wurde >100°C, so das der Lüfter zum Einsatz kam und auf ~39°C 
runterkühlte.

Bei  6 Ohm betrug I ~2,2A, Gehäusetemp. habe ich nicht weiter gemessen, 
da mir aufgefallen war, das ab ca. 55°C eine Schutzschaltung zuschlägt, 
die immer wieder kurzzeitig den Strom abschaltet. Das dürfte bei den 12 
Ohm auch schon geschehen sein.

Habe mal eine zweite Platine genommen, wo noch die ürsprünglichen 
Freilaufdioden drauf sind und der L298N nicht mit Wärmeleitpaste 
versehen ist. Dort steigt die Temp. bei 24 Ohm auf ca. 51°C. 
Wäremleitpaste bei dem kleinen Kühlkörper scheint also nicht so der 
Bringer zu sein.

Bernd_Stein

von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Hab da jetzt mal die Tage ein AVR8ASM-Programm für den ATmega88 
geschrieben, dass meine parallelverschaltete L298N-Platine nutzt.

Beitrag "AVR8ASM-Projekte"


Bernd_Stein

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.