Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

was ist "Stand der Technik" bei 32bit

geschrieben von Matthias1 
was ist "Stand der Technik" bei 32bit
16. October 2019 13:50
Hallo,

ich bin neu hier, daher eine kurze Einführung: Ich beschäftige mich schon einige Zeit mit 3D Drucker. Kurz mein Drucker: Klassischer x / y Drucker, Selbstbau hauptsächlich aus alten Mechanikteilen und China Elektronikteilen (3mm Aluminium Heizbett, indiktiver Sensor, TMC2130, Display 12864, (China-) MK10 Extruder mit PLA)
Generell habe ich nicht viel Bedarf an gedruckten Teilen; wenn doch sind es "einfache" Teile die ich dann mit OpenScad entwerfe und drucke - das klappt soweit auch. Mein Fokus liegt generell mehr auf dem Drucker selbst, hauptsächlich versuche ich den Drucker zu verbessern eigentlich immer Richtung Qualität und drucke dann Test/Kalibrierobjekte. Vor einiger Zeit habe ich mich an Benchy versucht - daran bin ich bzw. der Drucker gescheitert. (das ist eigenlich aber ein anderes Thema) Daraufhin habe ich jedenfalls gedacht ein Umau auf 32Bit wäre an der Zeit. Bisher hatte ich die Kombination Arduino Mega mit Ramps 1.4 und Marlin Firmware daher fand ich eigenlich den Schritt auf Arduino Due mit Ramps-FD und Marlin 2.x naheliegend obwohl ich über die Problematik mit dem Ramps-FD V1 Board vorher gelesen hatte. Kurzum ich habe einen (quasi defekten) China-Clone bestellt, umgebaut und die einzelnen Komponenten funktionieren inzwischen auch. Parallel dazu habe ich von der Version 2 in China auch eine Leiterplatte bestellt (das war für mich eine Premiere aber es ging einfacher als ich mir das vorgestellt hatte). Die (Leer-)Platine ist inzwischen auch eingetroffen. Eigentlich wollte ich die nun bestücken aber das scheint mir außerhalb meiner Möglichkeiten zu liegen, daher - und damit komme ich zum Punkt, meine Fragen:
Was ist eigentlich Stand der Technik bei 32 Bit Steuerelektroniken? Ich habe viel dazu gelesen aber finde dafür keine so richtig klare Antwort wie man das "normalerweise" macht.Ich bin in vielen Punkten ein Fan von Mainstream (Ramps 1.4 war/ist das ja bestimmt) und würde das bei 32 Bit gerne auch so machen wollen. Habe ich mich verständlich ausgedrückt? Ist es ein üblicher Weg, die Leerplatine zu bestücken oder eine alte Version umzubauen? Zu Ramps-FD finde ich nicht so umfangreiche/aktuelle Informationen wie ich es mir vorstelle, daher wollte ich das konkret fragen. Ich habe prinzipiell kein Problem China-Artikel einzusetzen (mir ist auf jeden Fall bewusst das die Qualiät des Gelieferten immer dem gezahlten Preis entspricht und es normalerweise nicht auf Anhieb funktioniert, daher muss man sich intensiv damit beschäftigen - lernt dann aber auch dazu). Wert würde ich daruf legen eine Lösung zu haben die Viele einsetzen und zu der es umfangreiche Informationen gibt (so wie Ramps 1.4) - und nach Möglichkeit auch kein all-in-one (weil bei mir doch öfters etwas kaputt geht).

Viele Grüße
Matthias
Re: was ist "Stand der Technik" bei 32bit
16. October 2019 19:25
Hallo Matthias und willkommen im Forum!

Ein paar interessante Fragen, die Du ansprichst. Was ich rauslese:

(1) was bringt 32-Bit-Elektronik am 3D-Drucker?
(2) Wie kann man 32-Bit-Elektronik am besten umsetzen?

Zu (1): Über den Sinn von 32-Bit-Elektronik am 3D-Drucker gibt es unterschiedliche Ansichten. Eine sehr umfassende Diskussion des Themas findest Du hier: [3dprinting.stackexchange.com]. Als relativ sicher gilt, dass eine komplexe Kinematik (z.B. bei einem Delta-Drucker) stark von der höheren Rechenleistung profitiert. Es geht zwar auch mit 8-Bit (mein erster Kossel hat noch immer ein altes Arduino-Mega-Board eingebaut), aber speziell in Kurven geht dem Drucker "der Schmäh aus". Insbesondere bei höheren Geschwindigkeiten fängt er dann bei Kurven und Kreisen zu ruckeln an, was sich natürlich nicht so gut auf die Druckqualität auswirkt. Wenn das Board Leistungsreserven hat, dann ist das natürlich ein Vorteil.

Du schreibst, Du hast einen "klassischen X/Y-Drucker" - ich nehme an, dass Du damit einen kartesischen Drucker meinst. Die zugrundeliegende Kinematik dieses Druckers ist recht einfach zu berechnen. Wenn der Drucker schon perfekt kalibriert ist und man noch nach den letzten Optimierungspotenzialen sucht, kann ein 32-Bit Board vielleicht eine leicht bessere Druckqualität oder (wahrscheinlicher) eine etwas höhere Geschwindigkeit bei gleicher Druckqualität bringen. Bei einem mäßig gut kalibrierten Drucker, wird der Wechsel auf 32 Bit alleine wohl keine sichtbare Verbesserung bringen - insofern kannst Du auch bei 8 Bit bleiben.

Es gibt aber noch ein paar andere Gründe, auf 32-Bit zu wechseln:

  1. Komfort: Die gängigen 32-Bit-Boards lassen sich meist viel angenehmer konfigurieren. Wo du bei Marlin auf 8 Bit einen Wert in einer unübersichtlichen Config änderst, dann kompilierst und das Board neu flasht, ist es bei 32-Bit Boards häufig nur eine (oft sogar übers Netzwerk erreichbare) Textdatei, die man ändern und danach das Board neustarten muss.
  2. Sicherheit: denkst Du darüber nach, Deinen 3D-Drucker übers Internet fernzusteuern? Z.B. über Octoprint? HackerInnen könnten, wenn Sie Zugriff auf Dein Octoprint bekommen, eine Firmware ohne Sicherheitschecks (z.B. Thermal Runaway) über das USB-Kabel auf deinen Drucker flashen und dann eine Grillparty bei Dir daheim veranstalten. Die Standard-Bootloader vieler 32-Bit-Boards lassen sich oft nur über eine Datei auf einer SD-Karte flashen, wodurch dieser Angriffsvektor entschärft wird.
  3. Zukunftssicherheit: Mittelfristig werden die 32-Bit-Boards die 8-Bit-Boards ersetzen. Ist so.
  4. Mehr Spielraum für Peripherie und andere Basteleien: 32-Bit-Boards haben meist ein paar freie GPIO-Pins und genug freie Rechenleistung um Spielereien, wie ein Grafik-Display, einen Filament-Sensor, Motortreiber-SPIs oder anderes anzuschließen.

Zu (2):
Gängige Software-Lösungen sind:
  • Duet (https://www.duet3d.com/): Hab ich selber nicht probiert, einige Leute sind sehr glücklich damit. Ist aber relativ teuer und ein eher abgeschlossenes System.
  • Smoothieware (http://smoothieware.org/): Gutes Projekt mit sehr guter Dokumentation. Neben eigener Hardware gibt es auch chinesische Klone, die deutlich günstiger sind (wobei man mit einem Klon zum Untergang von Smoothieware beiträgt). v2 des Boards wird schon seit ewigen Zeiten angekündigt, kommt aber nicht. Die (oder der?) Smoothieware-Entwickler treten(tritt) in Foren und anderen Social Media-Kanälen häufig sehr kolerisch auf, weshalb sich schon viele ehemaligen UserInnen von Smoothieware abgewendet haben. Interessante Feature Requests (wie Pressure Advance) werden seit Jahren nicht umgesetzt (https://github.com/Smoothieware/Smoothieware/issues/645).
  • Marlin 2.0: Ist das jetzt schon endlich released? Jedenfalls werden hier einige Design-Entscheidungen von Marlin 1 weitergetragen was einerseits gut ist (Marlin funktioniert ja recht gut) andererseits aber auch Nachteile hat (z.B. muss Marlin 2.0 nach meinem Verständnis weiterhin jedes Mal neu geflasht werden, wenn Du in den Firmware-Settings was änderst).

Was die Hardware betrifft musst Du Dir nicht selbst was zusammenstellen (das wäre zwar ein sehr spannendes Projekt, aber es gibt auch fertige Alternativen). Duet läuft glaub ich nur auf Duet Boards. Smoothieware läuft auf Smoothie-Boards, aber auch auf einigen Klonen. Günstige China-Klone wären z.B. das Makerbase MKS SBase 1.3 (bitte nicht verwechseln mit vielen anderen Boards die ähnlich heißen) oder das BigTreeTech SKR 1.3. Marlin 2.0 läuft auf vielen verschiedenen Boards, darunter auch die genannten Smoothieware-Boards (siehe hier: [github.com]).

Was ich noch nicht erwähnt habe, ist meine Lieblingslösung: Klipper (https://www.klipper3d.org/). Viele Leute haben schon einen Raspberry Pi mit Octoprint vor ihren 3D-Drucker gehängt. Klipper teilt die Rechenaufgaben einer 3D-Drucker-Firmware auf diesen Raspberry Pi und das Board auf. Auf dem Pi werden neben Octoprint alle komplexen Kinematik-Rechnungen gemacht. Das 3D-Drucker-Board bekommt dann nur noch Befehle, wie weit es den jeweiligen Stepper-Motor drehen soll. Außerdem ist Klipper noch komfortabler in der Bedienung, weil man Firmware-Config-Änderungen direkt im Browserfenster (im Octoprint-Menü) durchführen kann. Klipper funktioniert sowohl mit 8-Bit als auch mit 32-Bit Hardware. Im Falle eines kartesischen Druckers ist es wohl für die Qualität wirklich egal, ob Klipper auf 8 oder 32 Bit läuft (auch wenn hier ausgerechnet wird, wie viel besser Klipper auf 32-Bit-Boards laufen kann: [github.com]).

Zusammenfassung:
  • Viele Leute hier im Forum beweisen, dass man mit alter 8-Bit-Technik auf Marlin oder Repetier super Ergebnisse erzielen kann, es hängt also weit weniger von der Firmware ab als Du vielleicht glaubst.
  • Wenn Du Deiner Software ein Upgrade verpassen willst, würde ich Dir Klipper empfehlen.
  • Wenn Du zusätzlich auch die Hardware upgraden willst, würde ich Dir das BigTreeTech SKR 1.3 empfehlen (https://www.aliexpress.com/item/32980090169.html)

2-mal bearbeitet. Zuletzt am 16.10.19 19:27.
Re: was ist "Stand der Technik" bei 32bit
17. October 2019 13:47
Hallo Spindoctor,
zunächst einmal vielen Dank für deine ausfühliche Antwort. Ich möchte einige Punkten nochmal kommentieren weil ich möglicherweise nicht klar genug geschrieben hatte was ich eigentlich will.

Die 32 Bit Umstellung wollte ich in Angriff nehmen weil es mir zeitgemäß erschien, ich hatte verstanden das man "normale" Dinge mit 8 Bit problemlos machen kann. Technisch konkret brauche ich es wahrscheinlich nicht wirklich, das dachte ich mir eh schon und du hast es bestätigt.
Ja mein Drucker ist kartesisch (mit den ganzen Bezeichnungen habe ich mich bisher nicht weiter beschäftigt und kartesisch ist sicher nicht das beste Konzept). Die Druckqualität reicht prinzipiell derzeit für meinen Bedarf, perfekt kalibriert ist er wahrscheinlich aber nicht, sonst würde er ja Benchy drucken können, denke ich. Das ist evtl. dann aber ein Thema für ein anderes Forum, daher nur kurz: Einen 20x20x20 Würfel druckt er 20x20x20 (mit Schieblehrengenauigkeit gemessen), das Heizbett ist auf 0,2mm gelevelt (das bekomme ich nicht besser hin) der Extrudertemperatur bleibt +/-1C konstant.
Meine Kommentare zu den aufgeführten Wechselgründen:
Die einfache Konfigurierbarkeit wäre für mich kein Argument (ich sehe für mich die Marlin Varinte eher als Vorteil; man muss zuerst nachdenken was man ändern will) und ins Internet soll (kommt) mein Drucker nicht. Ich kann mir gut vorstellen das in 3-4 Jahren 32 Bit Standard ist, aber ich wollte halt jetzt schon damit anfangen.

Die verschiedenen Softwarelösungen waren mir schon aufgefallen, ich konnte mir aber nicht richtig vorstellen das diese völlig unabhängig nebeneinander bestehen und es nicht einen Mainstream gibt, bei der Software würde ich aber um wieder konkret zu werden ohnehin bei Marlin 2.x bleiben. Es steht tatsächlich überall "Beta" aber ich habe bisher keine Problme damit.

Bei der Hardware scheint es genau so zu sein, es scheint - anders als ich erwartet / gehofft hatte - auch da keinen Mainstream zu geben, einige konkrete Rückfragen habe ich dazu aber:
Du erwähnst Ramps-FD nicht bzw. gehst nur kurz auf den Selbstbau ein - ist das wirklich eine Sackgasse? Oder Nische? (ich würde schon jemanden finden der mir das Board bestückt oder notfalls selbst SMD Löten lernen)
Das erwähnte BigTreeTech SKR Board hatte ich schon zuvor gesehen aber die Verwendung nicht in Erwägung gezogen weil Marlin nicht in der Liste der unterstützten Software steht.
Auch Octoprint hatte ich mir schon einmal angesehen aber eine Verwendung dann nicht weiterverfolgt.

Zusammenfassung:
So einfach wie ich dachte oder es mir vorgetellt hatte ist es offensichtlich nicht.
Wenn das BigTreeTech SKR Board mit Marlin 2.x läuft (entweder das kann jemand direkt bestätigen, oder ich recherchiere es am Wochenende) werde ich es bestellen, bis dahin werde ich erst einmal mit meinem modifizierten Ramps-FD V1.A Board weiterbasteln, das Board läuft ja schon fast.

Viele Grüße
Matthias
Re: was ist "Stand der Technik" bei 32bit
17. October 2019 16:31
Lieber Matthias!

Zunächst mal ist ein kartesischer Drucker für normale Heimanwendungen (also nicht übermäßig groß und mit Schwerpunkt auf die Druckqualität, nicht auf die Ästhetik des Druckers) derzeit wohl schon das beste Konzept. Würde ich zumindest sagen.

Auf Deine Erfolge und Schwierigkeiten beim Drucken eines Benchy oder anderen Druckobjekten geh ich mal nicht ein - da gibt's andere Leute im Forum, die Dir besser helfen können. Dafür würde ich dann an Deiner Stelle aber einen eigenen Thread starten.

Davon abgesehen bist Du offensichtlich eh schon sehr überzeugt davon, was Du machen möchtest: Du willst ein 32-Bit-Board mit Marlin 2.0 betreiben. Das wäre nicht mein Weg (aus den erwähnten Gründen bin ich von Klipper überzeugt), aber nach allem was ich weiß, sollte es möglich sein und kann auch zu guten Druckergebnissen führen. Ich kann Dir dabei aber nicht weiterhelfen, weil ich Marlin 2.0 weder selbst ausprobiert habe, noch jemanden kenne, der es probiert hat.

Ein Board selbst zu designen und zu bestücken ist ein Gedanke, den ich nie hatte und der ziemlich sicher auch nicht mehrheitsfähig wird. Wenn Du es Dir zutraust und es gerne machen willst: warum nicht. Ich glaub nicht, dass es notwendig ist, aber es gibt schlechtere Arten, seine Zeit zu verbringen. Jedenfalls lernst Du sicher viel dabei...

Ohne es selbst ausprobiert zu haben bin ich jedenfalls sehr überzeugt davon, dass das SKR 1.3 mit Marlin 2.0 läuft und zwar aus den folgenden Gründen:

  1. Im SKR 1.3 steckt ein LPC1768 ARM-Cortex M3, der unter Marlin 2.0 (bei anderen Boards) als lauffähig angeführt wird
  2. BigTreeTech wirbt selbst damit (siehe hier: [de.aliexpress.com]) - sie haben sogar einen eigenen Fork für Marlin 2.0 verlinkt (den ich aber nicht verwenden würde)
  3. Auf der Github-Projektseite von Marlin 2.0 gibt es eine Reihe von (bereits gelösten) Issues mit dem SKR 1.3 (siehe z.B. hier: [github.com])

Das alles überzeugt mich. Und mit 15 € ist die Investition auch nicht so groß...

32-Bit-Board-Mainstream gibt es meines Wissens noch nicht - vielleicht auch deshalb, weil es nicht mehr so notwendig ist. Das RAMPS war in der 3D-Drucker-Geschichte (glaube ich) ein Riesen-Fortschritt, weil man es damit erstmals geschafft hat, selbstgebaute 3D-Drucker mit einer halbwegs kompakten Platine zu betreiben. Dadurch konnten die Maker-3D-Drucker ihren Durchbruch schaffen. Heute laufen die gängigsten HeimanwenderInnen-Firmwares auf den meisten Boards die man kaufen kann. Welches Board man dann im Endeffekt kauft ist fast egal, solange das was man damit machen will funktioniert...
Re: was ist "Stand der Technik" bei 32bit
18. October 2019 14:26
Hallo Spindoctor,

nochmals vielen Dank für deine Unterstützung - du hast mir sehr weitergeholfen (ich denke vor allem der letzte Absatz hat mir Klarheit zu meinen Fragen verschafft). Ja, bei Marlin möchte (werde) ich zumindest erst einmal bleiben; damit hatte ich seinerzeit angefangen, damit war ich immer zufrieden. Das SKR Board habe ich jetzt bestellt - ein eigenes Board designen wollte ich ohnehin nicht. Ich habe nach den Plänen von Github in China eine Platine für Ramps-FD V2 fertigen lassen, die liegt nun hier aber da das Bestücken schwieriger ist als ich dachte bleibt sie erst einmal liegen.

Sobald das neue Board da ist und läuft werde ich mich nochmal an Benchy versuchen, denke ich (das war eh der Plan)

Viele Grüße
Matthias
Re: was ist "Stand der Technik" bei 32bit
19. October 2019 04:17
Freut mich, dass ich Dir helfen konnte.

Mit dem Benchy kannst Du übrigens auch schon vorher anfangen.

Ich würde an Deiner Stelle mal einen XYZ-Würfel (https://www.thingiverse.com/thing:1278865) und/oder eine Calicat (https://www.thingiverse.com/thing:1545913) drucken und mehreren Seiten fotografieren. Wenn Du die Fotos und ein paar Angaben zu Deinem Drucker und deinen Settings hier in einem neuen Thread hochlädst, kann Dir bestimmt wer helfen.

Das Benchy ist ein schwieriges Modell, also lass dich nicht entmutigen. Wichtig ist auf jeden Fall, dass du es (nicht so wie ich bei meinem ersten Versuch) kleiner skalierst - dann wird es nämlich noch schwieriger!
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen