Re: Klipper mit dem RF1000
Verfasst: Fr 23. Okt 2020, 20:04
TeamSpeak ist ja schön und gut, interessanter wären Konfigurations-Dateien o.ä.
Mit Klipper, odere generell? Ich denke ja, dass die Repetier-Firmware da einen recht großen Anteil dran hat. Die Steps kommen einfach nicht zur richtigen Zeit, vor allem an den Übergängen zwischen den Bewegungen nicht. Außerdem ist die Firmware recht fundamental auf eine für meine Zwecke (Kugelumlaufspindel auf X/Y) zu niedrige Stepfrequenz beschränkt, weil es dann Überläufe bei den Berechnungen gibt (und die Berechnungen sind aus Geschwindigkeitsgründen in Assembler und mit Tabellen - sehr häßliche und schwer verständliche Sache, zumal mir die Berechnungsformel nicht überall klar ist).AtlonXP hat geschrieben:Ein weiteres Manko unserer Boards ist, dass unsere Stepper sehr rau laufen.
Ich bin mir nicht sicher, ob die TCM Treiber überhaupt besser sind. Die Beschreibung ließt sich zwar ganz toll, weil sie mit zahllosen Trademarks um sich werfen, dahinter stecken aber vermutlich auch nur relativ einfache Features, die unser DRV8711 zumindest zT. auch kann. Ich finde in dem Thread leider auch keinen Bericht, ob die ganze Aktion was gebracht hat (und nehme daher eher an, dass nicht).AtlonXP hat geschrieben:Zenox hat hier ein paar vielversprechende Versuche gemacht.
viewtopic.php?p=26999#p26999
Wir habe ein EEPROM, in dem z.B. die HBS-Matrizen abgelegt werden. Das findet sich auch im Schaltplan vom RF1000 (erste Seite genau mittig). Das wäre mit Klipper dann einfach unbenutzt, denn die MCU-Firmware ist dann relativ dumm und die komplette Intelligenz steckt im Host (Rasberry Pi oder was auch immer).AtlonXP hat geschrieben: Haben wir nicht auch noch einen Zusätzlichen ROM Speicher auf der Platine?
Im Schaltplan ist davon jedoch nichts zu finden.
Ja da habe ich durchaus drüber nachgedacht. Allerdings ist auch das nicht so einfach: Ich möchte die DMS nicht verlieren, d.h. ein neues Board müsste entweder ein eigenes Design (bzw. modifiziertes Design eines open source Boards) sein, oder das Board müsste erweiterbar sein, so dass man den Teil dort anschließen kann. Das ist aber noch der einfachere Teil. Wenn man hardwaremäßig in der Lage ist, die DMS auszulesen, muss die Firmware das auch noch können. Die Situation ist dann am Ende wieder nicht unbedingt viel besser als aktuell: ich müsste eine Menge Features im MCU-Code nachpflegen, die Firmware muss dafür open source sein, und ich muss mich erstmal mühsam einarbeiten. Mit Klipper geht das alles viel schneller, zumal dort auch schon eine Menge der nötigen Features in ausreichend modularer und flexibler Form vorhanden ist, so dass man die ohne häßliche Hacks nutzen kann.AtlonXP hat geschrieben:Wäre ein aktuelles Board mit Modifikationen für unsere RF Klasse nicht die besser Lösung?
Da ist viel Entwicklungsarbeit in Klipper reingegangen. Das Problem ist im Prinzip gelöst, zumindest erstmal ohne DMS. Die Kommunikation erfolgt mit einem speziellen Binärprotokoll, in dem z.B. die Anzahl und Frequenz der Schritte eines Steppers zu einem bestimmten Zeitpunkt übertragen wird. Auch werden die Uhren exakt synchronisiert, um Probleme durch Drifts der Uhren zu vermeiden. Auf der Webseite ist ein Benchmark veröffentlicht mit der maximal möglichen Schrittfrequenz (https://www.klipper3d.org/Features.html ganz unten). Wir haben einen 16MHz AVR, damit sollten demnach 100000 Schritte pro Sekunde auf 3 Achsen gleichzeitig möglich sein. Bei Repetier ist deutlich früher Schluss, schon alleine weil 16 Bit Berechnungen benutzt werden und dann spätestens bei 65000 ein Überauf passiert - aber lange vorher schon passieren unsaubere Dinge. (Ganz zu schweigen davon, dass selbst langsame Bewegungen nicht korrekt berechnet werden, das ist aktuell mein Hauptproblem).af0815 hat geschrieben:Für mich stellt sich eine Frage generell - wie soll der Mega aka MCU mit dem RasPi effizient bidirektional kommunizieren ? Die serielle USB Emulation möge für GCode ausreichen, aber für das diskutierte, inklusive DMS und anderer Parameter, da habe ich meine Zweifel.