Seite 8 von 12

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: Fr 29. Dez 2017, 18:09
von Digibike
... Und was genau sagt das Social Bot Hal4822? Wenn ich mit 0,2er Layer mit mehreren Perimetern drucke, kann ich genau so vorgehen, was aber nicht PeterKa´s Anspruch ist. Er braucht, genau wie ich auch, genau einen Perimeter für extrem leichte Teile. Da ist nichts kaschierbar.
Und weder PeterKa noch ich haben Jünni´s Druckbett, ergo ist es bei Ihm vermutlich besser passend wie bei uns. Nennt sich wohl in der Fachsprache "Herstellertoleranz". Diese ist verantwortlich für diverse Probleme, aber auch für einen vernünftigen Kostenrahmen sowie Gewinnmarge seitens Hersteller. Nichts desto trotz hat auch Jünni ein offensichtliches Interesse, da er beim Versuch die Flügel nachzudrucken auch an seine Grenzen mit seiner Herangehensweise stößt. Zumindest wenn ich das richtig verfolgt habe. Insofern, was soll dieses Zitat außer weiterer "Social Bot"?
Oder reizt dich nur, nach Herzenslust zu zitieren und zu sticheln? Da wäre eigener Thread zu empfehlen - wie schon erwähnt.

Gruß, Christian

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: Sa 30. Dez 2017, 16:27
von PeterKa
Das Thema Z-Ofset Kompenstion ausschleichen möchte ich an dieser Stelle abhaken. Ich habe eine wirkliche mühsame Meßreihe hinter mir, die dazu diente den vermeintlichen "Gap" zu manifestieren. Aber es gibt ihn nicht.. Es muß sich um ein Problem in der Anzeige des Displays handeln, das mich mit fehlerhaften Informationen versorgt hat. Das finde ich sehr beruhigend, denn es wäre unbefriedigend, wenn ein solch kapitaler Fehler in tausenden Druckern befinden würde.

Mein Vorgehen: Anders als bisher habe ich eine Anzeige in die Berechnungsschleife eingebaut, die mir die Werte der aktuellen Variablen bei der Abarbeitung von GCode anzeigt, lanmge bevor ich sie auf dem Display des Druckers angezeigt bekomme.

Das war mühsamer als ich gehofft hatte. Der Grund ist die Art der Steuerung. Wenn ich einen Befehl absetze.. Senke die Z-Achse um 0,1 mm, dann wird diese Schleife 4-6 mal durchlaufen, bevor endlich der Endwert erricht wird. Wenn man dann etwas darüber grübelt, wird klar, warum das so sein muß. Die Berechnung wird nicht für diesen Befehl durchgeführt, sondern der Gesamt Zustand der Z-Achse wird per Interrupt immer wieder ermittelt und neu berechnet. Daher sind die Schritte auch nicht gleichmäßig im Raum, sondern gleichmäßig in der Zeit.

Das muß man auch erstmal alles verdauen.

Ok ich habe alle diese Probleme gemeistert, und kann nun versichern daß die ZKompensation und das Auschleichen soweit gemäß den vorliegenden Vorstellungen arbeitet, wie ich es beobachten konnte.

Zum Beweis dieses Bild.
ZKompensationLive.JPG
Für die graphisch dargestelle Meßreihe wurde der Z=0 Wert mit einer Münze über dem Z-Anschlag so manipuliert, daß der Druckkopf an keiner Stelle das Bett berührt.

Unten sind noch ein paar Meßwerte gezeigt, die mit aufsitzendem Kopf gewonnen wurden. Dabei greift dann die von mir so genannte Nibbelskorrektur, ohne aber wirksam etwas zu verbessern.. Ich musste diesen Wert separieren um die Messungen verstehen zu können.

Da ist nichts dran zu deuteln: das passt mathematisch alles. Eine andere Frage, ob der Kopf auch tatsächlich tut was ihm vorgeschrieben wird kann damit allerdings nicht beantwortet werden.

Leider ist mein Drucker immer noch nicht ok. Aber hier zumindest braucht nicht weiter geforscht zu werden.

Guten Rutsch. Ich brauche Abstand von dem Kram.

PeterKa

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: Sa 30. Dez 2017, 16:58
von Nibbels
Danke Peter!!

Generell war deine Aktion nicht umsonst. Das hat mir in vielen Detailfragen die Augen geöffnet.
Guck mal .. Das Filament ist ein hochdurchsichtiges PETG Sample von der Formnext '17. Jede kleine Layeränderung schillert anders ;)
Screenshot_3.png
Fotografiert vor dem blauen LED-Licht eines Lüfters:
Screenshot_4.png
Screenshot_5.png
Warum schillert es in den unersten 3mm anders?? -> Es wird nicht das Material kompensiert, sondern nur der Layerabstand, man sieht das.

(Wir haben da schon drüber diskutiert.)
Aktuell verteilen wir jede Unebenheit auf den Bereich "0.33mm bis 3mm" = 2,67mm Höhe. Ohne mehr Material nachzuschieben.
Die "Menge der Unebenheit" hängt davon ab, wie wellig die Matrix ist. Es ist maximal der Abstand zwischen dem größten Wert in der Matrix und dem kleinesten Wert in der Matrix.
Es ist NICHT die Gesamthöhe der Matrix!

-> Baut jemand sein Bett schief ein, wird auf einer Seite viel kompensiert auf der anderen nichts. Das ist schlecht. Auf der tieferen Seite leidet die Fülldichte des Bauteils in den Ausschleich-Lagen.
-> Ist das Bett extrem wellig, ändert sich die Fülldichte je nach Druckbereich in X/Y - in den Ausschleichlagen.

Wir haben uns darum schonmal drauf verständigt, dass man eigentlich diese Kompensationshöhe so groß wählen sollte, dass die Layerhöhenänderung nur wenige Prozent beträgt. Also muss das obere Limit von 3mm unter Umständen größer gewählt werden.

Wir könnten nun eigentlich hingehen und im Mod die größten und kleinsten Matrixelemente suchen lassen. Da kommt dann z.B. raus, dass beim aktuellen Bett Unterschiede bis 0.25mm sind.
Dann sollten wir ausrechnen, dass 0.25mm nur 1% sein darf. Also muss die obere Kompensationshöhe 25mm hoch sein.

Wenns nach mir ging, würde ich in der Firmware nur noch den unteren Kompensationswert einstellen.
Und dann eine Prozentzahl angeben, wieviel % Layerhöhe maximal vergrößert werden darf.
So variiert die oberste Kompensationshöhe automatisch je nach verwendeter Matrix. Und wir haben wiederholbarere Druckergebnisse.
Andere Ideen?

(Mehr Material-Flowrate prozentual zur Layerhöhenänderung würde ich mir wünschen, aber diese Pfadstücke des Drucks sind vorausberechnet. Das wäre extrem komplex.)

LG

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: Sa 30. Dez 2017, 18:23
von PeterKa
Ich bin sofort dabei, denn so wie es ist, ist es doch suboptimal (auf hohem Niveau versteht sich). Ich verspreche mir eine deutliche Verbesserung der Qualiität. Und die Rechengenauigkeit ist definitiv nicht das Problem, der Anfangsverdacht ist widerlegt. Selbst die Zwischenwerte, die im Bereich Tausendstel berechnet werden und die ich der Übersichtlichkeit willen unterschlagen habe, liegen genau auf der Spur.

Bloss... mein Drucker druckt immer noch Mist...

PeterKa

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: Sa 30. Dez 2017, 19:04
von Nibbels
Gut... ich mach mich demnächst mal dran.
Mein Plan:
- EEPROM-Support für beide Einstellwerte.
- 2 neue Menü-Einträge für "Min-CMP" und "Max-Prozent"
- Min-CMP einstellbar von 0.1 bis Printer::lengthMM[Z_AXIS] ?
- Prozente einstellbar zwischen 0% und 20% ?

Dann ergibt sich abhängig von der jeweils aktuellen Matrix das jeweilige Kompensationsmaximum. 25mm sind u.U. übertrieben. 2-3% absolutes Kompensationsmaximum bei ~ 0.2mm Welligkeit ist dann vermutlich bei ~ 10mm Ausschleichhöhe.


@PeterKA, ich hab hier ne kleine Sammlung an Heatbreaks und Düsen, auch ein paar Heizblöcke. Soll ich dir diese Krabbelkiste mal leihen? Evtl. kannst du die schuldigen Komponenten schnell ausschließen.

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: So 31. Dez 2017, 01:16
von Nibbels
Ich hab mir doch den Rat zu Herzen genommen, dass man die Probleme an der Ursache angreifen sollte ^^.
Und Digibike meinte auch, eine Extrusions-Kompensation währe wohl das beste.
- Knobelaufgabe.

Mir war erst nicht klar, wie ich berechnen sollte, um wieviel % eine Lage aufgefüllt werden müsste, also um wieviel man den Extruderstepper korrigieren müsste, um die z-kompensationsbedingt zu hohen Lagen korrekt aufzufüllen.
Wie man aber in PeterKA's Bild sieht, ist die die Lagenverdickung über jedem XY-Punkt über die Höhe gleichmäßig verteilt. Darum sind können uns die eigentlichen Lagendicken egal sein. (Egal ob wir 0.05er oder 0.4er Lagen drucken, die Skalierung der E-Steps innerhalb des Ausschleichvolumens ist immer dieselbe.)
Das was wir zusätzlich extrudieren müssen sollte rein vom XY-Punkt auf dem Bett abhängig sein.

Ich habe also die Kompensationsformel ohne Z-Offset hergenommen:

Code: Alles auswählen

                                          (3mm - ZGcode)
ZCMP = Abstand_Null_GrößterMatrixPunkt +  --------------* (Abstand_Null_Oberfläche - Abstand_Null_GrößterMatrixPunkt)
                                          (3mm - 0.33mm)
Dann angesetzt: Layererhöhung = dZCMP/dZ = (ZCMP2 - ZCMP1) / (ZGcode2-ZGcode1)

Formel eingesetzt und gekürzt:

Code: Alles auswählen

                    (Abstand_Null_GrößterMatrixPunkt - Abstand_Null_Oberfläche)
Layererhöhung = ---------------------------------------------------------------------------
                      (MaxCompensationLimit - MinCompensationLimit)
Und als Beispiel gerechnet kommt da z.B. raus:

Höchster Matrixpunkt sei -0.34
Aktueller Matrixeintrag am Punkt sei -0.5
MaxCompensationLimit sei 3mm
MinCompensationLimit sei 0.33mm

Layererhöhung = (-0.34 - -0.5)/(3mm - 0.33mm) = 0,059 = ca. 6%

(Kann das stimmen???) Es sah in jedem Fall schlüssig aus.
Code gebaut:
--> https://github.com/Nibbels/Repetier-Fir ... 4d6488599b
Der Code schummelt diese Layererhöhung während des Druckens zum Steppermotor ;)

Und ich habe mein Teil nochmal gedruckt: Das Schillern ist weg: 22,030g
Screenshot_6.png
Vergleich vorher: 21,755g
Screenshot_3.png
Versuch das festzuhalten: In der Mitte schillert quasi nichts mehr. nur noch ein einzelner Strich, aber der ist in etwa bei 4mm.
Screenshot_7.png
Ich meine also das Thema erschlagen zu haben, weiß es aber durch den einen Test noch nicht wirklich. Bitte versucht das was ich gemacht habe nachzuvollziehen und schlagt mir das um die Ohren, wenn ich einen Denkfehler drin hab.
Wer testen will: Die Firmware meldet sich als 1.38.02.Mod (Aktuell nur auf meinem Github!)

LG

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: So 31. Dez 2017, 10:46
von PeterKa
Erstmal herzlichen Glückwunsch und ein dickes Lob für die durchgearbeitete Nacht :)

Ich konnte natürlich nicht umhin Deine Rechnung erstmal zu überprüfen (Ich denke das ist in Deinem Sinne).

Nachdem ich weiß, daß die Formeln in meinem großen Compiler und im RF dasselbe Ergebnis liefern, war es ein Leichtes Deine Einstellungen in mein Testprogramm einzustellen und rechnen zu lassen. Dabei habe mit Schrittweiten von 0,05 und 0,5 mm gespielt.

Das Ergebnis ist in dem ExcelSheet.
NibbelsKorr.xlsx
Kurz gefasst: Die Höhenkorrektur beträgt 6% egal mit welcher Layerhöhe gerechnet wird. Wie groß dann die zu rechnende Volumenerhöhung zu nehme ist, überlasse ich dem Profi ;)

Kritisch auf die Zahlen geschaut muß man konstatieren:

Nehmen wir an, dasß die Gegebenheiten bei den Meisten hiermit vergleichbar sind. Dann führt eine Erhöhung der Layerhöhe von 6% zu einer Volumenerhöhung von 19% (Wenn ich noch richtig rechnen kann versteht sich). Das heißt nichts anderes, als daß bei einer Welligkeit/Schieflage von 0,15 mm an der tiefsten Stelle des Bettes 19% zu wenig Volumen gefördert wird. Ich denke, das muß man erst einmal verdauen.. Mir genügt dieser doch recht krasse Unterschied um zu erkären, daß es machnmal quetscht und manchmal nicht klebt.

-> Ohne die Fördermenge zu korrigieren hätte die Kompensation mindestens 10 mal so hoch sein müssen, wie mit den Standardwerten eingestellt.

Super :)

So und ich hab nun das Problem, daß ich meiner mechanischen Z-Achse nicht mehr vertraue, nachdem der Extruder und die Firmware zumindest nach dem aktuellen Erkenntnisstand nicht das Gesamte Bild erklären konnten.

Was ich an dem ganzen Thread wirklich klasse finde, ist daß mit vielen Kaffeesatzlesereien endlich Schluß ist. Handfeste Messungen haben manches erhärtet und manches wiederlegt, wie das Nachdehnungsmärchen und anderes.

......... und daß Nibbels so toll mit auf den Zug gesprungen ist...

Guten Rutsch meinen Freunden und Feinden (Nein AthlonXP Du bist nicht darunter ;))

PeterKa

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: So 31. Dez 2017, 10:59
von Digibike
Wünsch auch Guten Rutsch! Super Arbeit! Respekt!!! Aber so ganz klar wird aus deiner Formulierung am schluß nicht, PeterKa, ob du AtlonXP nicht unter deinen Freunden oder nicht unter deinen Feinden zählst... -Sorry, war spaß... :lol:

Gruß, Christian

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: So 31. Dez 2017, 12:13
von PeterKa
Ich wollte der Phantasie etwas Spielraum lassen ;) Ich denke der Adressat liest es richtig :) Jetzt fehlt mir zum ganzen Glück aber noch auf ein WIKI Link, der mir die grammatikalische Unsauberkeit dieses Satzes, sowie die Nichtigkeit solch linguistischer Ausschweifungen vor Augen zu führen versucht, ohne daß ich es verstehe --- wow was ist das für ein alberner Kauderwelsch wozu man sich in heiligem Zorn hinreissen lässt ;)

PeterKa

Re: Die Z-Achse. Ein Faß ohne Boden ?

Verfasst: So 31. Dez 2017, 12:44
von Digibike
Sorry, meine Schuld! Hatte das Komma hinter deinem Namen vergessen - nun wird´s klarer, oder... :lol: :good: