Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

Teacup - homing

geschrieben von bns 
bns
Teacup - homing
03. June 2012 08:34
Hallo zusammen,

ich habe ein Problem mit dem Homing / Anfahren der Endstops - ich verwende Teacup und Printrun. Hardware ist das GSG Board von chopper925.
Meine config der Teacup-Firmware habe ich angehängt.
Problem ist, dass beim Anfahren der Endstops (bei allen 3 Achsen zusammen oder einzeln, wenn ich auf eins der "Haus"-Symbole in Printrun klicke) die Motoren so langsam laufen, dass der Endstop gar nicht erreicht wird. Vorher scheint ein Timeout zuzuschlagen, der die Motoren stoppen lässt. Je nach ursprünglicher Stellung erreicht die jeweilige Achse erst beim zweiten oder sogar dritten Klick auf das Haus den Endstop.
Ich habe das bei Teacup so verstanden, dass die Endstops mit der maximalen Geschwindigkeit angefahren werden, die in der config.h stehen. Aber die Geschwindigkeit ist viel geringer (tippe mal so auf die Hälfte) als die maximale Geschwindigkeit, die ich in Printrun mit "Handbetrieb" fahren kann. Ist das Problem bekannt oder mache ich etwas falsch???

Gruß
Frank
Anhänge:
Öffnen | Download - config.h (22.4 KB)
Re: Teacup - homing
03. June 2012 13:33
Hallo Frank,

für das anfahren der Endstops gibt es eine seperate Einstellung
------------------------------------
/// used when searching endstops and as default feedrate
#define SEARCH_FEEDRATE_X 200
#define SEARCH_FEEDRATE_Y 200
#define SEARCH_FEEDRATE_Z 20
--------------------------------------
das wird dein Problem sein.

Paul


Prusa Mendel Wade Gen7(Teacup)
MendelMax Wade Ramps(Marlin)
bns
Re: Teacup - homing
03. June 2012 17:00
Hallo Paul,

nein, leider nicht. Die Einstellung SEARCH_FEEDRATE_X (und _Y / _Z) hat keinerlei Einfluss darauf, wie schnell die drei Achsen beim Endstop-Suchen fahren. Ich habe den Wert für X und Y von 200 auf 5000 hochgestellt, ohne dass sich etwas verändert.
Ich interpretiere die Bedeutung dieses Werts auch so, dass mit dieser Geschwindigkeit nach Erreichen des Endstops langsam "rückwärts", also aus der Endposition heraus, gefahren wird, bis der Endstop gerade wieder losgelassen ist.

Kann mir evtl. mal jemand seine config.h zur Verfügung stellen, damit ich die Unterschiede analysieren kann?

Gruß

Frank
bns
Re: Teacup - homing
03. June 2012 17:17
Bei noch genauerer Betrachtung muss ich noch folgendes hinzufügen:

- Die Z-Achse scheint mit normaler Geschwindigkeit zu laufen -- allerdings ist die Bewegung generell so langsam, dass der beschriebene Timeout immer, wenn die Z-Achse relativ hoch steht zuschlagen dürfte, bevor der Endstop Z erreicht ist
Gibt es einen solchen Timeout, oder ist das irgendein Bug, den ich hier beobachte???
- Bei X und Y Achse ist die Geschwindigkeit nicht immer gleich. Meistens ist beim ersten Druck auf den "Home" Knopf für die jeweilige Achse die Geschwindigkeit extrem langsam, beim zweiten Druck dann etwas schneller (aber immer noch viel viel langsamer als die in config.h eingegebene Maximal-Geschwindigkeit).

Gruß
Frank
Re: Teacup - homing
09. June 2012 09:05
Hallo Frank ich hoffe du hast das Problem schon gelöst falls nicht hier mal meine config.
Die config ist aber für eine ältere teacup da sind noch mm pro step also aufpassen.
Ein Timeout gibt es glaube ich nicht wenn bei mir die Z Achse die volle strecke fahren muß
dauert das ewig.

Hier im Forum ließt man immer wieder von Problemen das die Entstopps durch übersprechen
der Steppersignale auslösen. Vielleicht liegt dein Problem ja dort.

Stoppt die Bewegung denn immer an der gleichen Stelle oder nach der gleichen Zeit ?

ich hoffe du findest das Problem.

Paul


Prusa Mendel Wade Gen7(Teacup)
MendelMax Wade Ramps(Marlin)
Anhänge:
Öffnen | Download - config.h (20.4 KB)
Re: Teacup - homing
09. June 2012 09:07
Quote

für das anfahren der Endstops gibt es eine seperate Einstellung
------------------------------------
/// used when searching endstops and as default feedrate
#define SEARCH_FEEDRATE_X 200
#define SEARCH_FEEDRATE_Y 200
#define SEARCH_FEEDRATE_Z 20

Das ist die Einstellung für den langsamen Teil des Homings. Das sollte auch relativ langsam sein, um eine passable Genauigkeit zu erreichen. Zunächst wird der Endstop jedoch mit MAXIMUM_FEEDRATE angefahren.

Quote

Gibt es einen solchen Timeout

Nein, eigentlich nicht. Bei extrem langsamen Geschwindigkeiten (F1) kann eine Achse locker eine halbe Stunde laufen.

Kann es sein, dass die Maximalgeschwindigkeit zu hoch angegeben ist? Ab etwa 15000 Schritten/Sekunde (20 MHz Elektronik) bzw. 12000 Schritten/Sekunde (16 MHz Elektronik) kommt der ATmega nicht mehr mit. Dann bricht die ganze Geschichte zusammen und bewegt sich nur noch im Kriechgang vorwärts.

Wie viel Geschwindigkeit Dein Drucker schafft (das hängt von den Steps per mm ab) kannst Du in Printrun ausprobieren und dann in die config.h übernehmen.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
bns
Re: Teacup - homing
09. June 2012 12:33
Hallo,

nein, das Problem leider ist noch nicht gelöst.

Ich habe ja auch gedacht, dass die Geschwindigkeit zu hoch ist und verschiedene Einstellungen ausprobiert - alle ohne Erfolg.
Es ist auch so, dass ein normales Verfahren der Achsen (also wenn ich in Printrun auf das "Koordinatenkreuz" klicke und z.B. die X-Achse 100 mm fahren lasse) richtig funktioniert (mit der Maximalgeschwindigkeit aus der config.h). Aber beim Homing fährt die Achse wie beschrieben deutlich langsamer und bleibt dann irgendwann stehen (als gäbe es einen Timeout...) Und sie fährt halt auch nicht immer mit der selben Geschwindigkeit...

Auch eine Verpolung der Endstopps schliesse ich aus -- wenn ich die Lichtschranken mal während des Homings von Hand auslöse, so hält die Achse an und fährt dann langsam in die Richtung vom Endstop weg - das klappt also.

Mir fehlt die richtige Idee zum Debuggen - macht es vielleicht Sinn mit einem Scope mal die Schrittsignale für die Stepper-Treiber zu untersuchen, ob die Frequenz zwischen normaler Fahrt und Homing-Fahrt gleich ist? Oder hat jemand eine bessere Idee?

Gruß
Frank
Re: Teacup - homing
09. June 2012 13:41
Also wenn du ein Scope hast dann schau dir mal das Signal vom Endschalter an am besten
möglichst nah an der CPU damit du sicher weißt das da nicht ein kurzer Spike das Stoppen auslößt.

Kann es nicht doch sein das deine Geschwindigkeit in der teacup zu hoch ist wie Traumflug sagt, Wenn
du Bewegungen in Printrun auslößt benutzt er ja die geschwindigkeiten die du dort einstellst und nicht
das max aus der teacup oder sehe ich das falsch ? Meine printrun ist schon wieder veraltet ist in deiner
denn die Einheit passent zu der Teacup Einstellung also in beiden mm/min ?

Sonst habe ich auch keine Idee.

Paul


Prusa Mendel Wade Gen7(Teacup)
MendelMax Wade Ramps(Marlin)
bns
Re: Teacup - homing
09. June 2012 13:49
Hallo Paul,

ich werde das noch mal kontrollieren - vielen Dank für die Rückmeldung. Aber ich bin mir doch recht sicher, dass ich diese Einstellungen durchprobiert habe und dort keinen Fehler gemacht habe.
Entweder ist es ein Hardware-Problem, oder ein Software-Bug, oder ich bin mal wieder zu blöd... (das dritte ist wohl das Wahrscheinlichste ;-) )

Gruß
Frank
Re: Teacup - homing
09. June 2012 14:14
Die Endstops kann man mit M200 abfragen. 0 im Normalzustand, 1 mit unterbrochener Lichtschranke.

Hänge doch mal Deine config.h im aktuellen Zustand an. Vielleicht kann ich das hier ja nachvollziehen.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
bns
Re: Teacup - homing
10. June 2012 17:29
Hallo,

hier ist die config.h wie gewüscht --

Gruß
Frank
Anhänge:
Öffnen | Download - config.h (22.4 KB)
Re: Teacup - homing
12. June 2012 05:05
Das sind 40 Schritte/mm * 30'000 mm/min = 1'200'000 Schritte/min = 20'000 Schritte/Sekunde. Ein ATmega mit Teacup schafft das nicht, schon gar nicht mit 16 MHz. Diese 30'000 sollten etwa halbiert werden.

30'000 mm/min sind 500 mm/sec. Diese Geschwindigkeit kann man auch mit normalen Verfahrbefehlen nicht erreichen. Sollte solche eine Geschwindigkeit sinnvoll sein, müsste man dda_step() optimieren. Die Repetier Firmware hat Assembler-Code, der die relevanten Berechnungen wohl etwas schneller ausführt und dda->rampup_steps in dda_create() müsste mal ordentlich berechnet werden.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Teacup - homing
12. June 2012 10:56
Wenn das halbiert werden muß wäre doch ein schneller Test das Microstepping umzustellen mit einer Stufe erreicht man ja jeweils eine halbierung.

Ich denke nicht das du schon alles im 1/2 Step betreibst.

Paul


Prusa Mendel Wade Gen7(Teacup)
MendelMax Wade Ramps(Marlin)
bns
Re: Teacup - homing
12. June 2012 15:15
Hallo Markus,

Du hast recht, dass das zu schnell ist. Aber das ist nicht das Problem, das ich habe - hatte wohl nur vergessen, diese Einstellung nach dem Herumprobieren wieder zu reduzieren.
Ich habe nun die Einstellung MAXIMUM_FEEDRATE_X und MAXIMUM_FEEDRATE_Y zunächst auf 10000, dann sogar auf 1000 reduziert.
Bei einer Verringerung auf 10000 bemerkte ich beim Homing der Achsen keine Veränderung, bei der Reduzierung auf 1000 ist es jetzt so, dass sich die Achse nur noch in Zeitlupe (ich würde mal schätzen, so 5 mm pro Minute) bewegt, begleitet von lautem rhythischem Fiepen des Schrittmotors.
Beim normalen Verfahren über das "Fadenkreuz" in der Printrun dagegen scheint alles wie gewüscht zu funktionieren: Da hatte ich die maximale Geschwindigkeit sowieso auf 5000 mm/min stehen, so dass die Reduktion auf 10000 in der Firmware keine Änderung ergab. Und nun mit der Einstellung 1000 fahren die Achsen wie erwartet entsprechend langsamer.

Paul: Bei dem GSG-Board gibt es keine einfache Umstellmöglichkeit des Microsteppings - die dafür zuständigen Pins der Treiber (DRV8811 von TI) sind fest so eingestellt, dass 1/8-Stepping gemacht wird - ohne Löten und Beinchen hochstellen geht da nichts.

Ich habe noch eine andere Besonderheit bisher verschwiegen (ist mir erst heute aufgegangen, sorry): Ich verwende Arduino 1.0 zum Erstellen, da ich direkt ohne Bootloader mit einem USBasp flashe und ich dies unter Arduino 022 / 023 nicht konfiguriert bekommen habe. Kann es da Inkompatibilitäten geben?

Gruß
Frank
Re: Teacup - homing
13. June 2012 04:50
Der Teacup ist es wurscht, welche IDE man zum hochladen verwendet und auch wurscht, wie das Microstepping eingestellt ist. Teacup verwendet die Arduino Library gar nicht und Microstepping findet nur ausserhalb des ATmega statt.

So langsam wundert mich die Geschichte. Homing-Verfahrbewegungen und normale Verfahrbewegungen sind der gleiche Code (dda_step() in dda.c), nur dass eben einmal der Endstop abgefragt wird und das Andere mal nicht.

Vielleicht mal mit manuellem G-code probieren. G161 für homen in die Min-Endstops, G162 für homen in die Max Endstops, jeweils mit einem X, Y oder Z für die gewünschte Achse dahinter:
G161 X
G161 Y
G161 Z

Das fiepen kann der ATmega übrigens nicht beeinflussen. Der ATmega schickt nur STEP-Signale raus, eins pro Schritt.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
bns
Re: Teacup - homing
13. June 2012 08:32
Hm, ich werde heute abend mir mal die "interessanten" Signale zwischen ATMega und Schrittmotortreibern am Scope ansehen - vielleicht entdecke ich da eine Merkwürdigkeit.

Gruß und Danke bis hierhin
Frank
bns
Re: Teacup - homing
14. June 2012 18:16
So, habe mal einige Tests gemacht:

1. Die Eingabe des G-Codes bei printrun (G161 X) führt zu gleichem Ergebnis wie bereits beschrieben.
2. Wenn ich mir mit dem Scope den X-STEP-Ausgang des ATMega ansehe, so kann man beobachten, dass beim Homing viel weniger Impulse gesendet werden als beim normalen Verfahren -- ich habe davon mal ein Video gemacht und es auf youtube gestellt: [youtu.be]

Erst sieht man den Schlitten, wie er mit Druck auf das "Fadenkreuz" hin und her fährt, wie erwartet. Dann drücke ich auf den Homing-Button für X, und der Schlitten fährt langsam, bleibt nach 2/3 stehen und ich drücke erneut, und noch ein drittes mal, weil er kurz vor Ziel erneut stehen bleibt.
Dann sieht man bei gleichem Ablauf das Scope, wie es den X_STEP-Ausgang am ATMega darstellt. Man sieht, dass es viel Weniger "Step-Impulse" beim Homing gibt, und beim zweiten Homing-Schritt noch weniger als beim ersten...

Irgend eine Idee, was das sein könnte?

Gruß
Frank
bns
Re: Teacup - homing
19. June 2012 17:09
Hat niemand eine weitere Idee??? confused smiley
ado
Re: Teacup - homing
20. June 2012 07:25
Um Auszuschließen ob die Endstopmimik sich nicht doch ein Störsignal einfängt , kann du ja mal eine Singleshot-Aufnahme mit Auslösetrigger machen.

Ansonsten schau mal mit der Repetier Host Software ob es dort auch die gleichen Probleme gibt.


________________________________________________________________________________
Prusa mit Gen6-Mod und 230V Heizbett mit Solid State Relais
Repetier Host + Repetier FW mit Slic3r
bns
Re: Teacup - homing
20. June 2012 17:54
Hallo ado,

also Störungen auf den Endstop-Signalen konnte ich keine entdecken.

Ich habe den Abend jetzt damit verbracht, Repetier für das GSG-Board anzupassen. Was soll ich sagen: Es läuft -- keine Probleme mehr beim Homing. Ich denke, ich werde dann bei Repetier bleiben (oder gibt es starke Argumente füt Teacup und/oder Marlin???)

Gruß
Frank
Re: Teacup - homing
22. June 2012 08:20
teacup ist von nutzen wenn man zb eine alte gen3 hat. denn die teacup kann mit EC arbeiten(extruder controler auf nem extrigen board)

nachteil der teacup gegenüber allen anderen aktuellen ist das look ahead bei rundungen(das problem hab ich mal auf youtube in nem test sichtbar gemacht


grüße
Bernhard
------------------------------------------------------------------------------------------------------------------------------
[www.thingiverse.com]
[www.flickr.com]
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen