Hallo, ich hätte eine kleine Frage an euch. Ich habe mir eine eigene Steuerung gebaut und Programmiere gerade meinen X-Mega. Linien in alle Richtungen zu Fräsen nach Bresenham ist kein Problem. Bei G2 und bei G3 kann ich mit einmal einen 4tel Kreis fräsen, so wie im Bild, Bresenham wiki berechnet nur einen 8tel Kreis. Wenn ich von B nach C fräsen muss lasse ich meine berechnung von A laufen, aber die Stepper werden nicht getaktet, erst wenn ich meine berechneten Koordinaten berechnet habe das ich an B ankomme, takten auch die Stepper. Und dann soweit bis ich C erreicht habe. Frage ? Gibt es auch noch eine andere Möglichkeit Kreissegmente zu Steppen ? Gruß Schuby
Max S. schrieb: > Frage ? > Gibt es auch noch eine andere Möglichkeit Kreissegmente zu Steppen ? Unendlich viele. Aber keine effizientere als Bresenham.
Max S. schrieb: > aber die Stepper werden nicht getaktet Da ist noch ein Fehler in der Software. Und den musst du finden und beheben. Die Antwort auf die Frage: "Warum werden die Stepper nicht getaktet?" führt dich zum Ziel. > Programmiere gerade meinen X-Mega. Lass doch mal sehen...
Man muß nur 8 8tel-Kreise malen/millen. Und am Ende jedes 8tels das Koordinatensystem um eine 8tel-Kreis weiterdrehen. Spiegeln wie auf einem Bildschirm bringt ja auf der Fräse unerwartete Ergebnisse.
c-hater schrieb: > Unendlich viele. Aber keine effizientere als Bresenham. Kommt drauf an, wie du die Effizienz berechnest. Wenn es auf konstante Verfahrgeschwindigkeit ankommt, steht man mit Bresenham alleine ausgesprochen schlecht da.
Lothar M. schrieb: > Max S. schrieb: >> aber die Stepper werden nicht getaktet > Da ist noch ein Fehler in der Software. Und den musst du finden und > beheben. Die Antwort auf die Frage: "Warum werden die Stepper nicht > getaktet?" führt dich zum Ziel. > >> Programmiere gerade meinen X-Mega. > Lass doch mal sehen... Sorry das hast du falsch verstanden. Ich lasse die Stepper nicht takten. Bitte bedenke das mein Fräser auf Punkt B steht, es soll von B nach C gefräst werden. Nach Bresenham werden immer 1/8 Kreis berechnet, das ist mir klar. Aber ich muss meine Berechnung von A aus starten, diese berechnungen werden gelöscht bis meine berechnung B erreicht hat, erst dann fräse ich und Takte meine Stepper. Gruß Schuby
:
Bearbeitet durch User
Ist dir Grbl schon aufgefallen? Die erzeugen beliebige Kurven. Der eine Teil erstellt kurze Segmente, die sich ohne Beschleunigung aneinander hängen lassen. Und der Bresenham arbeitet dann die Segmente ab. Ist für Atmega implementiert.
Ein Kommentar schrieb: > Ist dir Grbl schon aufgefallen? > > Die erzeugen beliebige Kurven. Der eine Teil erstellt kurze Segmente, > die sich ohne Beschleunigung aneinander hängen lassen. Und der Bresenham > arbeitet dann die Segmente ab. Ist für Atmega implementiert. grbl habe ich mir angeschaut, aber da blicke ich nicht ganz durch wie die das machen gruß schuby
Hier steht recht viel hintergrundinfo dabei: <https://computergraphics.stackexchange.com/questions/1496/is-there-some-kind-of-bresenham-algorithm-or-equivalent-for-scanline-rendering-a>
Hallo, Danke an alle die mir geantwortet haben. Ich habe es jetzt bissel anders gelöst wie bei Herrn Bresenham. Über Sin Tan, das alles muss an einer CNC Fräse getestet werden. Aber vorher habe ich mir ein kleines Tool gebaut um das alles zu sehen. gruß Schuby
Max S. schrieb: > Ich habe es jetzt bissel anders gelöst wie bei Herrn Bresenham. > > Über Sin Tan,... Zu Zeiten von Herrn Bresenham war der Sinus noch gar nicht erfunden :) Der Witz am Bresenham ist, dass er zum einen nur simpelste Integerrechnungen braucht und auch direkt immer nur der benachbarte Pixel (d.h. ohne Lücken bzw. Wiederholung) bestimmt wird. Wenn man ein paar FLOPs mehr als in den 1960ern zur Verfügung hat, ist das natürlich egal. Ausserdem kann der Bresenham-Kreis auch nur mit quadratischen Pixeln (1:1 Verhältnis) umgehen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.