Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

Marlin auf Arduino-Due mit RADDS / RAPS128

geschrieben von Willy 
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
05. March 2015 14:46
Quote
Traumflug
Ich freu mich schon drauf, um die Marlin Kreise tanzen zu können, ...

Vorfreude ist die schönste Freude ... macht die Teacup deswegen so laaaaaangsam Fortschritte, damit sie länger anhält?

Duck und weg spinning smiley sticking its tongue out

LG, Willy


3D gedruckter Messerschärfer +++ RADDS für den Arduino-Due +++ Meine Drucker
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
05. March 2015 15:16
Quote
Willy
... macht die Teacup deswegen so laaaaaangsam Fortschritte, damit sie länger anhält?

Die Teacup ist der Marlin längst voraus. Manche verkünsteln sich halt lieber an Displays, Andere bringen den Drucker geschmeidig zum laufen.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
05. March 2015 16:45
boah Traumpflug das wird nix mit geschmeidig bei teacup smiling smiley

also bitte beweise antreten und dann reden.
ich habe den spass schon ausprobiert und das war weit von geschmeidig entfernt.


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 05:08
Quote
Wurstnase
Großes Update auf die aktuelle Dev von der 8bit.

Marlin4Due V1.0.3

Grundfunktionen sollten alle klappen. Afaik macht nur grad das Display durchschalten Probleme. Tester sind gerne gesehen.

Jo der Drehknopf funktioniert nicht. Hast du eine Idee woran das liegen könnte?

1-mal bearbeitet. Zuletzt am 06.03.15 05:09.


Grüße Philipp

exiguus v1.4 Bautagebuch

Mein Blog inkl. Newsletter
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 05:48
Quote
Le-Seaw
boah Traumpflug das wird nix mit geschmeidig bei teacup smiling smiley

Ist schon längst passiert.

Quote
Le-Seaw
also bitte beweise antreten und dann reden.

Beweise? Bei der Marlin wird immer noch an der Beschleunigung herum gebastelt, siehe oben.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 06:21
von einem speed den teacup nie erreicht smiling smiley


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 07:31
Quote
Le-Seaw
von einem speed den teacup nie erreicht smiling smiley

Mit einem 5-10 Mal so schnellen Prozessor die doppelte Geschwindigkeit zu erreichen ist jetzt nicht gerade ein Ruhmesblatt.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 07:34
sauber erreichen
nicht so husch husch


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 08:28
Quote
Le-Seaw
sauber erreichen

So wie gemessen hier ...



... oder lieber auf die theoretischen Eierkurven weiter oben im Thread vertrauen?


Generation 7 Electronics Teacup Firmware RepRap DIY
     

Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 08:37
Btw. Die Eierkurve ist etwas verfälscht. Aber das ist eh nur gebastel gewesen um zu verstehen wie das ganze funktioniert. Bei den Eierkurven wird nen Quadstep als ein Schritt dargestellt und daher kommen dann die Eierkurven.

Ist das richtig, dass Teacup den Interrupt-Timer über die Beschleunigung berechnet?

Speedtechnisch ist mit 96kHz so erstmal alles ausgereitzt. Allerdings dafür mit Display und mit Bettkorrektur. Zumindest das Display saugt tatsächlich an der Performance.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 09:14
Quote
Wurstnase
Ist das richtig, dass Teacup den Interrupt-Timer über die Beschleunigung berechnet?

Der Timer gibt direkt den Takt für die schnellste Achse vor. Beim beschleunigen und bremsen feuert er entsprechend langsamer. Wenn ich die Frage richtig verstanden habe, ist die Antwort als Ja.

Quote
Wurstnase
Zumindest das Display saugt tatsächlich an der Performance.

Kann man das nicht vermeiden, indem man nur dann das Display schreibt, wenn man Zeit übrig hat, also ohne Interrupt? Wenn das Display ruckelt ist das ja kein Drama.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 09:19
Quote
Traumflug
Quote
Wurstnase
Ist das richtig, dass Teacup den Interrupt-Timer über die Beschleunigung berechnet?

Der Timer gibt direkt den Takt für die schnellste Achse vor. Beim beschleunigen und bremsen feuert er entsprechend langsamer. Wenn ich die Frage richtig verstanden habe, ist die Antwort als Ja.

Marlin berechnet den Timer aus der Schrittrate direkt. Also Timerfrequenz/Schrittrate = Counter (ganz grob). Ich hab mir nur mal kurz den dda angesehen und da hast irgendwas mit Timerfrequenz/acc oder so ähnlich.

Quote
Traumflug
Quote
Wurstnase
Zumindest das Display saugt tatsächlich an der Performance.

Kann man das nicht vermeiden, indem man nur dann das Display schreibt, wenn man Zeit übrig hat, also ohne Interrupt? Wenn das Display ruckelt ist das ja kein Drama.

Das Display läuft über den Temperatur-Interrupt. Jetzt stelle ich meine Aussage aber wieder in frage ob das wirklich an der Performance sägt.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 10:40
Quote
Wurstnase
Marlin berechnet den Timer aus der Schrittrate direkt. Also Timerfrequenz/Schrittrate = Counter (ganz grob). Ich hab mir nur mal kurz den dda angesehen und da hast irgendwas mit Timerfrequenz/acc oder so ähnlich.

Das hier ist die entscheidende Zeile:
      dda->c_min = move_duration / target->F;
Timerfrequenz ist die Frequenz der CPU, also 16 oder 20 MHz. move_duration ist die Zeit in CPU-Takten, die die ganze Bewegung braucht, wenn man Beschleunigung und bremsen weg lässt. c_min ist dann also die Anzahl der CPU-Takte zwischen zwei Schritten im Bereich der höchsten Geschwindigkeit. Auf diese Zeit wird der Timer gestellt.

Auf den Rampen wird c alle 2 Millisekunden neu berechnet, abhängig von der Zahl der bereits erfolgten bzw. noch zu tätigenden Schritte. Dann ist c die Zeit, auf die der Timer eingestellt wird. Diese Berechnung findet ausserhalb des Step-Interrupts statt, deswegen ist der Step-Interrupt mit etwa 400 CPU-Takten (für 8-bit) recht schnell.

Wichtig auch: der Timer misst die Zeit zwischen zwei Schritten, nicht die Zeit, nachdem er eingestellt wurde. Wird timer_set() (bisher setTimer()) aufgerufen, ist ein Teil dieser Zeit schon abgelaufen, wird aber dennoch berücksichtigt. Der Code dafür ist in timer_set() bzw. setTimer().

Quote
Wurstnase
Das Display läuft über den Temperatur-Interrupt. Jetzt stelle ich meine Aussage aber wieder in frage ob das wirklich an der Performance sägt.

Siehst Du die kleinen Pickel bei gleichbleibend hoher Geschwindigkeit auf dem Bild oben? Da habe ich auch die Temperaturmessung im Verdacht.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 11:41
Quote
Traumflug
Quote
Wurstnase
Marlin berechnet den Timer aus der Schrittrate direkt. Also Timerfrequenz/Schrittrate = Counter (ganz grob). Ich hab mir nur mal kurz den dda angesehen und da hast irgendwas mit Timerfrequenz/acc oder so ähnlich.

Das hier ist die entscheidende Zeile:
      dda->c_min = move_duration / target->F;
Timerfrequenz ist die Frequenz der CPU, also 16 oder 20 MHz. move_duration ist die Zeit in CPU-Takten, die die ganze Bewegung braucht, wenn man Beschleunigung und bremsen weg lässt. c_min ist dann also die Anzahl der CPU-Takte zwischen zwei Schritten im Bereich der höchsten Geschwindigkeit. Auf diese Zeit wird der Timer gestellt.

Auf den Rampen wird c alle 2 Millisekunden neu berechnet, abhängig von der Zahl der bereits erfolgten bzw. noch zu tätigenden Schritte. Dann ist c die Zeit, auf die der Timer eingestellt wird. Diese Berechnung findet ausserhalb des Step-Interrupts statt, deswegen ist der Step-Interrupt mit etwa 400 CPU-Takten (für 8-bit) recht schnell.

Hmmm... Ok. Wenn ich das jetzt richtig verstehe:
Ich habe aktuell ne Geschwindigkeit von sagen wir mal 100mm/s (bei 80steps/mm heißt das 8.000 steps/s).
Wenn ich jetzt weiter beschleunige dann wird die Geschwindigkeit nur alle 16 steps angepasst?!? (1s/2ms = 500 -> 8000/500 = 16)


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 11:50
Quote
Wurstnase
Hmmm... Ok. Wenn ich das jetzt richtig verstehe:
Ich habe aktuell ne Geschwindigkeit von sagen wir mal 100mm/s (bei 80steps/mm heißt das 8.000 steps/s).
Wenn ich jetzt weiter beschleunige dann wird die Geschwindigkeit nur alle 16 steps angepasst?!? (1s/2ms = 500 -> 8000/500 = 16)

Ja, richtig. Um der Physik genüge zu tun reicht das. Sollte es je nicht reichen kann man das Intervall auch kleiner stellen.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 13:10
Ah ok... Danke. Dann wundert es mich allerdings auch nicht warum Teacup soviel schneller ist.
Das größte Problem sind halt die Rampen und bei Marlin wird das bei jedem Step (bzw. im zweiter oder vierter bei double/quadstepping) neu berechnet.

Der Rest ist ähnlich wie Teacup. Zum Beginn eines neuen Trapez wird die maximale Geschwindigkeit berechnet und dann einfach abgerufen wenn diese erreicht wird.
Wo da im Gleitlauf die Grenzen liegen beim Due mit Marlin habe ich noch nicht getestet. Da muss ich mir mal überlegen wie man die Rampe ähnlich entschärfen kann. Die Resourcen dafür sind echt gewaltig!

Als grober Anhaltspunkt. Theoretisch kann man über Timerfrequenz/Steprate berrechnen. Dividieren ist aber so teuer, dass Schrittraten nur bis grob 46kHz machbar sind.
Über einen lookuptable wird das ganze umgangen und mit Shift und addieren gearbeitet. Hier erreicht man dann die 96kHz.

Wenn man jetzt unabhängig die Steprate berechnen kann, sollte das ganze noch deutlich zu steigern sein.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
06. March 2015 15:18
Quote
Wurstnase
Da muss ich mir mal überlegen wie man die Rampe ähnlich entschärfen kann.

Die Firmware nehmen, die das schon gemacht hat. Sonst hängst Du bei der nächsten Iteration (gleichmässige Schritte für alle 4 Schrittmotoren) wieder vor dem gleichen Problem. Das Display-Zeugs kannst Du ja mitbringen.

Wäre aber nicht das erste Mal, dass sich Marlin & Co. viel Arbeit damit machen, bei der Teacup abzugucken. Das FastIO-Zeug haben die auch von da. :-)

Die beste Schrittverteilung hat übrigens zur Zeit die dc42 Firmware. Die berechnet nicht nur jeden Schritt für jeden Motor exakt, sondern auch gleich noch die Karthesisch -> Delta Transformation. Das Splitten längerer Bewegungen fällt dann weg.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 02:27
Ne, das werde ich nicht nach Marlin bringen. Der Physik mag das vielleicht genügen, aber was sagen die Ohren dazu?
Ich werd einfach mal testen was der Die allgemein im single-step ohne Rampe schaffen könnte. Hab auch schon ne Idee die sehr einfach ist umzusetzen.

Das beim Duet habe ich gelesen. Aber was bringt mir eine super Schrittauflösung bei 1/16, wenn ich mit eine wenig ungenaueren Auflösung mit 1/128 fahren kann. Der Fehler ist so minimal. Warum also 32bit mit alten 1/16 Treiber (A4983?!?) mischen?

Die Idee dahinter ist nicht schlecht, aber wird bei zunehmender Performance egalisiert. Ich fahre lieber mit ner leisen Maschine und "alter Software" bei etwa gleicher Genauigkeit als bei dc42.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 04:48
Mal Semi OT: Ich verfolge das hier sehr gespannt und will auch mal loslegen. 2 Fragen zum RADDS, die sicher jemand sehr schnell beantworten kann.
1) versorgt das RADDS den DUE automatisch mit Spannung, kann also der runde Stecker des DUE frei bleiben
2) kann ich das RADDS ohne Änderungen mit 15V betreiben ohne das mir was abbrennt? Wenn nein, was kann ich tun (außer neues Netzteil) (Hintergrund ist, das ich das RADDS am K8200 verwenden will)


K8200: Display VM8201, E3Dv6, Doppel Z mit Kugelgewindespindel, Auto Bedleveling mit kapazitivem Sensor, Doppel Spannungsversorgung 15/24V, GT2 Extruder Umbau, BuildTak, bekennender Cura Fan

Threema: 7RVXK99W
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 05:04
1) Ja
2) Ja


Grüße
Marco

Thingiverse
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 06:17
wenn es ein 1.2 ist dann ja zu 15V
bei 1.1 bin ich mir da nicht so sicher.


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 06:33
vorsicht Wurstnase Branch ist eingestellt für Autoleveln und corexy, wenn das nicht euer Drucker ist das auch ändern smiling smiley


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 07:36
Quote
Wurstnase
Der Physik mag das vielleicht genügen, aber was sagen die Ohren dazu?

Was der Physik genügt, genügt auch den Ohren. Im Bereich um eine Millisekunde gibt es noch mehr Dinge, die vom Ideal abweichen. Zum Beispiel das Verhalten des Rotors im Schrittmotor, der ja keine eckigen Bewegungen macht, sondern sich bei jedem Schritt auf die neue Position erst mal einpendelt. Oder das PWM nebst Decay der Strombegrenzung, das auch nur mit einer endlichen Frequenz arbeitet.

Quote
Wurstnase
Das beim Duet habe ich gelesen. Aber was bringt mir eine super Schrittauflösung bei 1/16, wenn ich mit eine wenig ungenaueren Auflösung mit 1/128 fahren kann.

Möglicherweise, dass das 1/16 genauer als das 1/128 ist. Immerhin fällt ja das Path-Splitting weg, der Schlitten des Deltas fährt also nicht eine leicht wellenförmige Bahn, sondern exakt gerade.

Wenn Teacup gerade versucht, die dc42-Strategie auf 8-bit anzuwenden bedeutet das auch, dass es auf einem 32-bit dann mit 1/128 schnell genug ist. Doch da ist der dc42 im Moment wenig hilfreich, der schimpft lieber wie ein Rohrspatz darauf, dass man sich überhaupt noch mit 8-bit abgibt.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 08:38
Hehe ja das habe ich auch gelesen. Bei nem Delta kann ich mir wirklich vorstellen, dass diese Strategie am besten ist. Ich denke aber stark in CoreXY smiling smiley

Warum dc42 schimpft wenn er selbst noch veraltete Hardware verbaut Frage ich mich?

@le-seaw
Das mit der Config werde ich nachher mal wieder ändern.

Liest Willy noch mit? Der ist doch immer pfiffig was Display-Sachen angeht. Vielleicht hat er ne Idee warum das Rad nicht geht und der Knopf selbst auch springt...

Edit: Kann mal wer von euch Pin11 bei nem Due-Clone mit M42 P11 Sxxx das PWM testen? Meiner mag es irgendwie nicht. Bin auch schon kurz davor mir mal nen Ersatz zu kaufen...

1-mal bearbeitet. Zuletzt am 07.03.15 08:41.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 08:57
Quote
Wurstnase
Liest Willy noch mit? Der ist doch immer pfiffig was Display-Sachen angeht. Vielleicht hat er ne Idee warum das Rad nicht geht und der Knopf selbst auch springt...

Logisch les' ich mit smiling smiley

Am besten mal mit einem Multimeter messen, ob der Input-Pullup aktiviert ist (wurde bei Repetier je nach Konfiguration mal vergessen) und auch auf der Display-Platine ankommt. So ganz traue ich den Flachbandkabeln nicht ...

LG, Willy


3D gedruckter Messerschärfer +++ RADDS für den Arduino-Due +++ Meine Drucker
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 09:04
Ah, das kann durchaus sein da ich WRITE geändert habe gegenüber der bobc-Variante und das bei Pullups nicht funktioniert.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 10:11
der ganze displaycode kommt aus dem neuen marlin rüber oder?
also sozusagen v1.02 reingestreckt?


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 10:35
Jein... Ich habe fast jede Zeile Code angefasst.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 11:28
Hab den Fehler... Dank Willy!
Update kommt in den nächsten 10 Minuten.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Marlin auf Arduino-Due mit RADDS / RAPS128
07. March 2015 11:42
cool smiling smiley


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen