Forum: Mikrocontroller und Digitale Elektronik Einige Fragen zum L6470


von Edward F. (ctrannik)


Lesenswert?

Guten Abend. Ich habe vor, eine Steuerung von mehreren Schrittmotoren (3 
Motoren vorerst) mittels L6470 zu realisieren bzw. zunächst entwerfen. 
Die Motorentrieber hängen als eine Daisychain an einem Atmega, wobei 
welcher, wird von der Firmwaregröße entschieden.

Der MC soll eine Kommunikation zum PC und Motortreiber realisieren, die 
Koordinaetenbefehle vom PC in eine Warteschlange aufnehmen, die 
Koordinaten an Motortreiber verteilen und deren Statusmeldungen an den 
PC melden. Ausrechnen der Koordinaten entsprechend der Aufgabe übernimmt 
ein Program am PC, so dass der MC nicht viel machen muss. Aber das ist 
vermutttlich ein klassischer Entwurf.

Ich hätte dennoch einige Fragen, die ich weder via Suchfunktion noch 
Google beantworten können.

L6470: 
http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00255075.pdf


1. Layoutvorschlag für den L6470: Was ist zu beachten?

Irgendwie finde ich keine Angaben im Datenblatt des Treibers, die das 
Layout betreffen. Es scheint irgendwie so, als würde der Treiber auch 
dann prima laufen, wenn ich den auf einer Lochrasterplatte aufbauen 
würde. Nur ein indirekter Hinweis, die PGND, AGND und DGND zu trennen 
kann ich da rauslesen, weil sie ja getrennt am Chip vorhanden sind.

Gibt es dennoch etwas, was ich hier beachten sollte? Ich möchte die 
Platine vorerst einseitig aufbauen, weil es zuhause einfacher ist.


2. Kann ich eine Motorzuleitung von unter 1m wirklich ohne 
Zusatzbeschaltung machen?

Es ist so, dass die Motoren maximal 50cm bewegt werden, also reichen die 
Zuleitungen von 1m vom Treiber zum motor. Wenn ich die Treiber samt MC 
auf einer Platine untergringe, dann spare ich ja die Terminiereungen der 
Schnittstellen.

Diverse Internetquellen besagen, dass ich ohne Problemme die Zuleitungen 
auch 10m machen kann (abgeschirmt). Ist das wirklich so oder muss ich 
was einplanen? Der Chip macht 128 Mikroschritte und soll mit 36V 
betrieben werden, wobei die Motorspannungen um die 3V liegen werden, bei 
max. 3A pro Phase.


3. Sollte ich doch die Treiber an die Motoren hängen, wie soll ich die 
SPI Schnittstelle am besten terminieren? Zwischen Treibern wären dann 1m 
Abstand und vom letzten Treiber 3m zum MC.

Am CS und Clock geht die Serienterminierung nicht. An den Leutungen 
hängen die Eingänge der Treiber. Muss ich diese bis auf den lettzten 
überhaupt terminieren?

MISO-MOSI ist P2P. Da geht die Serien- oder Thevenin-Terminierung. 
Welche ist da besser?


4. Sollte ich die Treiber wieder an die Motoren hängen und nicht auf 
dieselbe Platine, wird ebenfalls überall empfohlen, die Treiberplatinen 
mit Optokoppler zu trennen. Das heißt vor jedem Eingang des Treibers 
(CS, CLC, MOSI) ein Optokoppler. Welche Werte muss ich bei diesen 
einhalten, um diese Treiber zuverlässig zu verbinden?

Ich denke vor allem an die Verzögerungen. Der Datenblatt zu L6470 sagt 
unter SPI, SPI rise & fall time = 25ns. Bedeutet das, dass mein OK in 
der Zeit reagieren können soll?, Bzw. wie muss ich die Angaben genau 
lesen? Oder ist das eigentlich wurscht, weil alle Eingänge gleiche Zeit 
zum Reagieren brauchen? Gibt es andere Anforderungen an die OK, die hier 
wichtig sind?


Das sind vermuttlich nicht alle Fragen, aber für mich vorerst die 
wichtigsten.

LG und Danke,

Edward

: Bearbeitet durch User
von m.n. (Gast)


Lesenswert?

Baue die Schaltung für einen Motor auf und teste sie. Das beantwortet 
Dir viele Fragen und läßt die möglichen 128 Mikroschritte in ganz 
anderem Licht erscheinen. Vermutlich wirst Du am Ende nur 8 oder 16 
nutzen.

Es kann aber durchaus auch sein, daß Du vorab entnervt das Handtuch 
wirfst, da Deine Vorstellungen Deine Möglichkeiten übersteigen; so liest 
sich zumindest Dein Text. Die Terminierung findet dann ganz woanders 
statt ;-)

von Edward F. (ctrannik)


Lesenswert?

Danke Dir M.N

Darauf wird es sich wohl hinauslaufen. Wenn die Schaltung gar nicht 
funktioniert, dann weiß ich zumindest, dass die so nicht geht, aus 
welchem Grund aber immer.

Aber wenn sie funktioniert, kann ich dann ohne Oszi nicht sagen, ob die 
gut funktioniert oder nur so tut als ob. Dann wird die Fehlersuche im 
Gesamgerät zimlich schwierig werden. Daher wollte ich wissen, was ich 
generell beachten soll, schon bevor ich entwerfe und layoute.

Vielleicht hat wer ännlich angefangen und weiß, auf welche Hürden ich 
dabei stoßen würde.

von m.n. (Gast)


Lesenswert?

Ohne Oszilloskop solltest Du nicht anfangen. Bei getakteten Schaltungen 
muß man die Signale sehen, sonst kann es nichts werden!

von Gerhard O. (gerhard_)


Lesenswert?

Schau Dir mal die Doku der Demo Board an. Da ist auch das Layout gezeigt 
und gibt Dir vielleicht einen Ansatzpunkt für eigene Arbeiten. Ganz ohne 
Risiko geht es nicht.

http://www.st.com/st-web-ui/static/active/en/resource/technical/document/data_brief/DM00047222.pdf

Ich habe mit der Demoboard in der Firma gearbeitet und funktioniert 
bestens.

mfg,
Gerhard

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.