PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schrittmotor blockiert bei Richtungsumkehr



sven29ks
17.03.2017, 21:54
Hallo,

Ich habe die BF20L von Optimum (CNC gesteuert)
PC: 15 Jahre alt, Medion, CPU knapp 1000GHz, Grafik onboard
Software: Mach3
Interface Breakout Board: Chinateil für 20€
Endstufen: Leadshine DM865 (Strom auf 5,6A eingestellt)
Netzteil: 50V; 6,7A (Chinateil)
Schrittmotoren:
X,Y:Hybrid Stepper Motor 86BYGH450B
Z:Hybrid Stepper Motor 86BYGH450D-02

Die Motoren sind bipolar parallel angeschlossen und laufen im 1/4 Schritt.

Ich kann die Achsen ohne Probleme mit 3000mm/min verfahren. Ich habe jedoch nur 2000mm/min eingestellt.

Während die X-Achse läuft drücke ich jetzt Y+, Y-Achse läuft, X-Achse blockiert (begleitet von einem lauten Geräusch). Lasse ich Y+ nun kurz los und drücke sie erneut, blockiert die X-Achse nicht mehr. Nun kann ich (während die X-Achse läuft) Y+ so oft drücken und loslassen wie ich will, nichts blockiert. Ändere ich jetzt aber die Richtung, also drücke Y-, blockiert die X-Achse wieder.
Das Blockieren tritt also nur bei Richtungswechsel auf.
Solange ich den Vorschub unter 600 mm/min belasse habe ich das Blockierproblem nicht.
Ich möchte allerdings mit 1600 mm/min verfahren.
Ich habe von gleichen Maschinen gehört die mit über 2000 mm/min verfahren können.
Ich habe nun mal den Strom an den Endstufen herabgesetzt, die Motorleitungen durch abgeschirmte ausgetauscht und festgestellt das ich dann mit höherem Vorschub verfahren kann. Allerdings nicht all zu viel.
Das Problem ist auch bei X-Z, Y-Z usw. vorhanden.
Ich hatte das Problem vor Jahren schon einmal, da hatte ich noch keine Endstufen verbaut und die Motorspannung lag bei 12 oder 24V, genau weiß ich das nicht mehr. Ist zu lange her.
Als ich dann mit Endstufen und 48V gearbeitet habe war das Problem weg. Ich konnte allerdings nur mit max. 500 mm/min verfahren. Damals hatte ich die Motoren noch nicht bipolar parallel angeschlossen, sondern bipolar seriell. Ich war erstaunt, das ich bei bipolar parallel die Achsen mehr als 5mal so schnell laufen lassen kann, als bei bipolar seriell.
Meine Überlegung ist nun die Motoren mit 75V anstatt mit 50V zu versorgen. Bin mir aber nicht sicher,ob das das Problem lösen wird.
Ich hatte schon einige Recherchen unternommen, in anderen Foren das Problem geschildert,
es konnte aber nicht beseitigt werden.
Vielleicht hat ja hier jemand eine Lösung.

Gruß

Sven

dussel07
18.03.2017, 19:24
Die Vermutung liegt nahe das die Leistung des Netzteils nicht ausreicht -
1x 50V 6,7A
Dagegen zurechnen 3x 5,6A?

Ansonsten finde ich 75V für Endstufen die maximal 80V können, zu viel. 70V würde ich mich noch trauen.

sven29ks
18.03.2017, 22:22
Ich hatte schon für jeden Motor ein eigenes Netzteil angeschlossen, gleiches Problem.
Die Endstufen haben einen Überspannungsschutz.
Ein Gerät das für 230V ausgelegt ist schließt doch auch ohne Bedenken an die Steckdose.

Ich habe heute mal die Microschritt-Einstellungen verändert.
Bisher bin ich mit 1/8 gefahren. Nun wollte ich mal höher gehen, einfach um mal zu testen.
Dabei habe ich folgendes festgestellt:
Wenn ich in Mach3 die Steps per mm auf 3200 setze, die Geschwindigkeit auf 2000 mm/min und dann auf "Sichern der Werte" klicke stellt sich die Geschwindigkeit automatisch auf ca. 843 ein. Das ist dann der Maximalwert. Höher kann ich die Geschwindigkeit dann nicht einstellen. Wenn ich die Steps noch höher einstelle geht der Wert für Geschwindigkeit noch weiter runter. Also wenn ich mit 1500mm/min verfahren will kann ich nur eine Auflösung von 1800 Steps pro mm einstellen. Das wäre nicht mal 1/32.
Da stimmt doch was nicht...

Gruß

Sven

i_make_it
19.03.2017, 08:57
Warum sollte da was nicht stimmen?

Du hast einen 1GHz PC (die 1000GHz halte ich für einen Schreibfehler) mit Onboard Grafik und zum Anschluß eine reine Breakout Box (ohne Satzverarbeitung).
Je nach Betriebssystem steht es um die Echtzeitfähigkeit desselben eher bescheiden aus.
bei 2000mm/min und 3200 Schritten pro mm sind das:
6,4 Millionen Schritte pro Minute oder 106666 pro Sekunde.
Also knapp 107KHz. Du hast vermutlich 3 Achsen, das Betriebssystem und die Grafik wollen auch noch etwas Zeit von der CPU.
Das kann durchaus hinkommen daß diese Werte so vom Rechner nicht machbar sind und Mach3 da dann Maximalwerte reinsetzt, die per Perfomanzetest oder Tabelle festgelegt werden.
Da müsstest Du mal das Handbuch konsultieren (RTFM).
Bei professionellen CNC Steuerungen übernimmt der PC üblicherweise nur das Anzeigen der Steueroberfläche, die Satzverarbeitung läuft dann auf einer gesonderten Karte mit eigener CPU. Für Mach3 gibt es auch solche Lösungen.
Wenn Du im Handbuch also entsprechende Limitierungen findest, kannst Du nur mit dem Umbau der Steuerung auf eine dedizierte Steuerkarte ein mehr an Geschwindigkeit bei gleichzeitiger Erhaltung oder Steigerung der Präzission erreichen.

So habe mal grade einen kurzen Blick in das Deutsche Handbuch von Mach 3.0.1 geworfen.
Beim Motortuning kann man ja jede Achse einzeln deaktivieren.
Testweise könnte man mal bis auf eine Ache alles deaktivieren und schauen, ob dann eventuell höhere Werte akzeptiert werden.
Sollte das der Fall sein, dann ist das ein sicheres Indiz, das Mach3 mit der verfügbaren Rechenzeit für alle Achsen nicht mehr verarbeiten kann.

Auf der anderen Seite kann es auch sein, das die Teiberbausteine (serielle/parallel Schnittstelle) der Schnittstelle an der die Breakout Box hängt einfach keine höheren Frequenzen schaffen.

sven29ks
20.03.2017, 22:07
ich habe die Ursache für mein Problem gefunden. Es liegt an der Umkehrspielkompensation in Mach3. Wenn ich die deaktiviere blockieren keine Achsen mehr.
Die Frage ist nun woran das liegt, die Kompensation brauche ich ja.

Feuerring
21.03.2017, 02:07
Die Motoren sind bipolar parallel angeschlossen und laufen im 1/4 Schritt.

zwei oder mehrere Motore an einem Treiber zu betreiben ist suboptimal ...

im Treiber wird der Motor-strom begrenzt / geregelt ... bei zwei parallel angeschlossen Mororen kann sich der Strom
ungleichmäßig aufteilen und somit zu Schritt-Verluste führen, was dann zu einem verklemmen der Mechanik führen kann.

würde jedem Motor einen eigenen Treiber spendieren und die Eingangssignale dann parallel schalten.

i_make_it
21.03.2017, 06:45
@Feuerring: Ich denke es geht darum das die Spulen eines Motors bipolar-parallel angeschlossen sind und nicht unipolar oder bipolar-seriell.
http://www.cuteminds.com/en/component/content/article?id=5
Anschlußschema ist kurz unterhalb der Mitte.