Forum: Mikrocontroller und Digitale Elektronik TB6560 Schrittmotorsteuerung Mikrostep - periodisch schwankende Schrittgröße


von das haus (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe ein Problem mit folgendem Schrittmotortreiber mit TB6560 von 
Sainsmart:
http://www.sainsmart.com/new-4-axis-tb6560-cnc-stepper-motor-driver-controller-board-kit-57-two-phase-3a.html

Datenblatt:
http://www.toshiba.com/taec/components2/Datasheet_Sync/201103/DST_TB6560-TDE_EN_27885.pdf

Wenn ich z.b 1/16 Mikroschritt einschalte hat der Motor ein seltsames 
verhalten. Er macht immer 15 kleine Schritte und Springt dann auf den 
nächsten Ganzschritt sodass es zimlich nutzlos ist die Mikrosteps zu 
benutzen.
Ich habe im Oszi den Strom in den Motorspulen angeschaut, dort sieht 
man, dass das Signal wie ein Sinus verläuft, jedoch kommt am Ende jeder 
Sequenz ein Peak (sieht aus wie eine Glockenkurve und ist vom Betrag her 
deutlich höher als der restliche Strom)

Ich habe an 2 Boards gemessen, sodass ich einen Defekt an der Platine 
ausschliessen kann , ist bei beiden das selbe.
Die Widerstände / Kondensatoren stimmen mit den Werten im Datenblass 
überein.

Meine Frage:
Was ist die Funktion des 74HC123 im Schaltplan?
Hat eventuell jemand eine Idee was das Problem sein könnte, es ist wohl 
ein Designfehler der Platine?

Bin für alle Tipps dankbar.

von Chris D. (myfairtux) (Moderator) Benutzerseite


Lesenswert?

das haus schrieb:

> Wenn ich z.b 1/16 Mikroschritt einschalte hat der Motor ein seltsames
> verhalten. Er macht immer 15 kleine Schritte und Springt dann auf den
> nächsten Ganzschritt sodass es zimlich nutzlos ist die Mikrosteps zu
> benutzen.
> Ich habe im Oszi den Strom in den Motorspulen angeschaut, dort sieht
> man, dass das Signal wie ein Sinus verläuft, jedoch kommt am Ende jeder
> Sequenz ein Peak (sieht aus wie eine Glockenkurve und ist vom Betrag her
> deutlich höher als der restliche Strom)

Seltsam.
Ist das immer beim letzten Mikroschritt der Fall, also bei 1/8 
Mikroschritt beim 8. Schritt?

Der TB6560 hat eine Indexierung (Pin M0), quasi ein Ausgang, der einmal 
pro Zyklus auf High geht. Eventuell ist der aus Versehen angeschlossen?

> Ich habe an 2 Boards gemessen, sodass ich einen Defekt an der Platine
> ausschliessen kann , ist bei beiden das selbe.
> Die Widerstände / Kondensatoren stimmen mit den Werten im Datenblass
> überein.
>
> Meine Frage:
> Was ist die Funktion des 74HC123 im Schaltplan?

Das dürfte ein retriggerbares Monoflop sein, das für eine Stromabsenkung 
sorgt, wenn eine gewisse Zeit kein Takt anliegt, um die Wärmeentwicklung 
zu reduzieren.

von das haus (Gast)


Lesenswert?

@myfairtux:

danke für die schnelle Antwort.

Ob es immer genau der letzte puls ist weis ich nicht, ich habe kein 
Speicheroszi und weis nicht genau wo ein Intervall anfängt. Bei 1/8 
Schritt ist es auf jedenfall auch einmal pro Ganzschritt.

Pin M0 ist nicht angeschlossen.

Ich habe mal testweise den 74HC abgeklemmt, das Motorverhalten ist jetzt 
anders (weniger weisses Rauschen (akustisch) sonst alles beim alten.

von Arsenico (Gast)


Lesenswert?

Bei Mikroschritt ist die Stromeinstellung immer etwas kritisch.

von Chris D. (myfairtux) (Moderator) Benutzerseite


Lesenswert?

das haus schrieb:
> @myfairtux:
>
> danke für die schnelle Antwort.
>
> Ob es immer genau der letzte puls ist weis ich nicht, ich habe kein
> Speicheroszi und weis nicht genau wo ein Intervall anfängt. Bei 1/8
> Schritt ist es auf jedenfall auch einmal pro Ganzschritt.

Laut Datenblatt ist M0 immer dann Low, wenn Ausgang A maximalen Strom 
und Ausgang B minimalen Strom (=0 Ampere) hat. Lege Dir mal M0 auch auf 
das Oszilloskop und schau, ob der Peak genau dann auftritt.

Könnte es auch sein, dass da einfach eine Serie defekter TB6560 den Weg 
über China in diese Steuerungen gefunden hat?

Übrigens sind als Daten 100kHz als Schrittfrequenz angegeben. Die Chips 
machen das zwar meist mit, aber von Toshiba garantiert werden nur 15kHz 
(siehe "Maximum ratings" im Datenblatt)!

> Pin M0 ist nicht angeschlossen.

Ja, hab ich gesehen - ich dachte evetuell an eine (nicht gewollte) 
Lötbrücke etc.

> Ich habe mal testweise den 74HC abgeklemmt, das Motorverhalten ist jetzt
> anders (weniger weisses Rauschen (akustisch) sonst alles beim alten.

Ja, das dürfte auch nichts ausmachen. Wenn der 74HC korrekt 
funktioniert, sollten an TQ1 und TQ2 bei anliegendem Taktsignal 0V 
anliegen (maximaler Strom), die dann nach üblicherweise 1-2 Sekunden 
ohne Taktsignal auf 5V gehen (=20% des Maximalstroms).

Hast Du mal mit einem anderen Motor getestet, um den Motor als Ursache 
auszuschließen?

Ein Oszillogramm wäre natürlich hilfreich - zur Not abfotografiert.

: Bearbeitet durch Moderator
von Roland P. (pram)


Lesenswert?

Mir kommt das Widerstandsnetzwerk an NFA/NFB komisch vor.
Wenn nicht alle Schalter geschlossen sind, beeinflussen sich die 
Strommessungen evtl gegenseitig.

Gruß
Roland

von Chris D. (myfairtux) (Moderator) Benutzerseite


Lesenswert?

Stimmt. Da hat jemand nicht nachgedacht. Aber das dürfte nicht die 
Ursache sein.

Was mir aber gerade aufgefallen ist: Wieso sind PGNDA und PGNDB nicht 
auf Masse gelegt?

Das sollte nicht sein! Also: die Dinger erstmal mit GND verbinden.

Auch die Wahl des EL817 für das Enablesignal ist schlecht. Wenn die 
Steuerung direkt nach einem Einschalten einen Schritt ausgibt, ist das 
Enable bei dessen miesen Anstiegszeit eventuell noch gar nicht am Chip 
angekommen. Die Optokoppler müssen beide die maximale Taktŕate vertragen 
können.

Das sieht man leider bei fast allen Designs - offenbar kupfern alle nur 
voneinander ab, ohne überhaupt zu verstehen, was sie da machen.

Tut mir Leid, das sagen zu müssen: irgendwie ist die ganze Schaltung 
Murks.

Da hat jemand nur so eine Halbahnung von Elektronik und offenbar auch 
das Datenblatt nicht angefasst.

: Bearbeitet durch Moderator
von controllergirl (Gast)


Lesenswert?

Chris D. schrieb:
> Was mir aber gerade aufgefallen ist: Wieso sind PGNDA und PGNDB nicht
> auf Masse gelegt?

Im Plan hängen die wohl in der Luft...
Aber auffm Foto kann man zumindet Pin15 (PGNDA) in Verbindung mit 'ner 
dicken Leiterbahn sehen... ist bestimmt nur im Schaltplan nicht 
eingetragen...

von das haus (Gast)


Angehängte Dateien:

Lesenswert?

@ myfairtux:
PGNDA und PGNDB sind auf GND, das wurde wohl nur beim erstellen des 
Schaltplans vergessen, sonst düfte ja gar nichts funktionieren.

@ Roland:
Danke für den Tipp mit dem Widerstandsnetzt, das hatte ich irgendwie 
übersehen, dass es da zwangsläufig zu Crosstalk kommt. Ich habe mal die 
Widerstände an den offenen Schaltern abgelötet und das scheint das 
Problem zwar nicht vollständig zu lösen, aber es ist deutlich besser als 
vorher.

Ich habe im Anhang 2 Bilder des Sinus mit crosstalk (oszi_mit_R) und 
ohne die widerstände (oszi_ohne_R) Bei höheren Geschindigkeiten ist 
nicht mehr ein Peak am ende jedes Sinus zu erkennen, sondern die Kurve 
ist einfach insgesammt verwachen wie man auf dem Bild sieht

Wenn man den Decay mode auf 0% stellt ist es sehr gleichmässig, bei 
höherer Geschwindigkeit werden die Motoren so aber sehr laut, wenn man 
den Decay Mode auf 25% stellt tritt das Problem wieder auf (bei 
niedriger Gescwindigkeit), allerdings schwächer aus zuvor.

Ich werde das jetzt mal provisorisch die Widerstände weglöten und dann 
andere Steuerung organisieren.

Danke an alle für die Hilfe

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.