mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 2313 und L293D


Autor: Raimond (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nachdem ich mir jetzt scheinbar den zweiten 2313 zerschossen habe grrr,
muss ich erstmal nachfragen ob ich da irgend etwas falsch mache.
Und zwar möchte ich mit dem 2313 einen Motor links bzw recht laufen
lassen. Es handelt sich um Weichenantriebe mit Motor für die
Modellbahn. Nun habe ich am 2313 den L293D wie folgt angeschlossen.

PORTB.2 - IN1 L293D Pin2
PORTB.3 - IN2 L293D Pin7
PORTB.4 - Enable L293 Pin1

Die PORTS B.2 und B.3 sollen je nach Laufrichtung auf High und Low bzw.
Low und High gesetzt werden. Mit PORT B.4 soll Enable auf High bzw. Low
geschaltet werden, um eine Endabschaltung zu erreichen.

Der L293D wurde weiterhin wie folgt beschaltet

L293D VCC1 Pin16  +5V
      VCC2 Pin8   +16V
      Pin4 und 5  GND
      den Motor an L293D OUT1 Pin3 und OUT2 Pin6

Solange kein Motor angeschlossen ist, scheint auch alles normal zu
laufen. Die High- Low- Pegel kann ich mit einem Logikprüfer (wie auch
immer das Teil heisst) kontrollieren. Sobald der Motor angeklemmt wird,
war es das. Ein Port schaltet nicht mehr und ich kann den AVR auch nicht
mehr programmieren, auslesen (Wird nicht mehr erkannt).
Nun ist guter Rat teuer - die AVR´s gehen zu neige.

jetzt schon mal ein dickes Danke
Gruss
Raimond

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm - auf den ersten Blick scheint alles richtig.
Und wenn Du den Atmel aus der Schaltung herausnimmst und mal schaust,
was passiert, wenn Du den Motor "von Hand" schaltest? Miß mal mit
einem Amperemeter, was der L293 an dein Atmel-Pins ziehen möchte.
Normalerweise verkraften die Atmels ja einiges, sind kaum kaputt zu
kriegen.
Eine Alternative wäre der Schutz der Ausgänge: Ein Widerstand zwischen
Portpin und L293 kann da schon einiges ausrichten, irgendwo zwischen
1-10K entschärft schonmal die gröbsten Spitzen.
Ansonsten kann ich mir nur einen Fehler in der Verdrahtung vorstellen.

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Überprüf mal die Betriebsspannung:
Sind Siebkondensatoren (100nF ker + Elko) dran ?
Die Spannungsspitzen des Motors könnten den AVR abschiesen.

Autor: Raimond (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ging ja fix

thkais
Also, Atmel raus und in der IC-Fassung die entsprechenden Pin´s auf GND
gelegt - der Motor macht das was er soll.
Deshalb schliesse ich auch mal einen Verdrahtungsfehler aus.
Mit den Widerständen habe ich es noch nicht probiert. Da gleich die
nächste Frage, müssen am Ausgang noch die Schutz-Dioden ran? Ich dachte
eigentlich das der L293D diese integriert hat.
Den Strom den die L293D´s am Atmel ziehen, ist ja fast nicht Messbar
(1-2mA)

Benedikt
Die Spannungen stimmen. Kondensatoren sind auf der Platine, aber gleich
am Gleichrichter also nicht direkt an den IC´s.

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die Spannungen stimmen. Kondensatoren sind auf der Platine, aber gleich
am Gleichrichter also nicht direkt an den IC´s.

Ist bei AVRs zu weit !
Direkt unter das IC, löst viele Probleme !

Der L293D hat Dioden, der L293 nicht.

Autor: Raimond (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Zum besseren Verständniss hier mal das Schaltbild.

Autor: Raimond (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal,

habe es inzwischen fast in den Griff bekommen, zu mindest pfeifen mir
die 2313´er nicht mehr ab. Es war doch ein Verdrahtungsfehler - grrr
Aber ein Problem habe ich noch. Ohne Motor läuft alles bestens, soll
heißen die geschalteten Pegel stehen. Sobald ich aber einen Motor
anschliesse fällt der Pegel öfters in den Urzustand zurück (von High
auf Low und wieder auf High, oder umgedreht), so das der Motor nicht
lange genug den nötigen Strom bekommt um bis zum gewünschten Ende
durchläuft.
Ich dachte, das eventuell die Spannung durch den Motor zusammenbricht
und der µC einen Reset macht, Kondensatoren brachten aber auch keinen
Erfolg. Das kann es eigentlich auch nicht sein, denn dann müssten die
Pegel immer auf einen bestimmten Pegel fallen (z.B. Low), was Sie aber
nicht tun.
Vielleicht hat ja noch jemand eine Idee

Gruss
Raimond

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm den Tip mit dem Widerstand in den Leitungen zum L293 ernst. Ich hab
mir mit den Teilen auch mal ein paar 89C52 hingerichtet. Offensichtlich
lassen die Teile manchmal was auf der Enable-Leitung durch. Bei mir
wurde naemlich immer genau dieser Ausgang am MCU zerstoert.
Die Steuerleitungen waren dagegen kein Problem.

Olaf

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das hört sich schon nach EMV-Problemen an. Das ist eine schwierige
Sache, ich vermute mal, Du hast alles auf Lochraster aufgebaut?
Die Motoren erzeugen durch die Kommutierung immer wieder durch
Induktion Spannungsspitzen, die den Controller nicht unbedingt
Resetten, sondern einfach außer Tritt bringen können. Die (älteren)
Atmels sind in dieser Hinsicht leider ein wenig empfindlich.
EMV-Probleme können meistens durch eine richtige Verlegung der
Leiterbahnen und das richtige Setzen des Massepunktes gelöst werden.
Wichtig ist, daß keine Masseschleifen vorhanden sind, die Masse sollte
Sternförmig von einem Punkt ausgehen. Werden Motor und Controller durch
die gleiche Spannungsquelle versorgt? Falls ja, dann helfen oftmals
Induktivitäten als Tiefpaß geschaltet in der Zuleitung zum Controller,
oder getrennte Netzteile - zumindest versuchsweise.
Könnte auch ein Softwareproblem sein, werden irgendwo Eingänge des
Controllers abgefragt? Durch die Spannungsspitzen könnte es hier zu
Fehlinterpretationen kommen, am besten mit einem zusätzlichen Pull-Up
(oder Pull-down -je nach Anwendung) Niederohmig machen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.