AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

G-Code Viewer

Ein Thema von Rudirabbit · begonnen am 29. Dez 2016 · letzter Beitrag vom 1. Jan 2017
Antwort Antwort
Rudirabbit

Registriert seit: 27. Sep 2006
111 Beiträge
 
#1

G-Code Viewer

  Alt 29. Dez 2016, 18:48
Hallo,
Bin gerade dabei das Senderprogramm für meinen Lasercutter mit einem G-Code Viewer aufzupeppen.
Also G-Code Parsen, erstmal die einfachsten G-Gode Befehle implentieren.

Und das ganze in einer Paintbox darstellen.
Auf den ersten Blick schaut es nicht schlecht aus, aber warum sind vor allem die Kreise so pixelig ?
Im G-Code sind das keine Vollkreise, sondern die werden aus Kreisbögen gebildet.
Ich nutze hier die arc Methode von Canvas.

Das es besser geht, zeigt z.b NC Corrector.


Doch mir fällt nichts Richtiges ein, hier eine Art Antialiasing einzubauen

Habe auch den G-Code mit dabei, damit Vergleiche mit anderen G-Code Viewer möglich sind.

Grüße Rudi
Miniaturansicht angehängter Grafiken
screen.png  
Angehängte Dateien
Dateityp: txt deckelneu_0003.nc.txt (3,5 KB, 20x aufgerufen)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: G-Code Viewer

  Alt 30. Dez 2016, 11:00
Hallo,
du könntest GDI+ benutzen oder du malst die Kreise 10 mal so gross
in ein eigenes Bitmap und packst dass dann per StretchDraw in dein Original-Bitmap rein.
Das hatte bei mir komischerweise geklappt.
Heiko
  Mit Zitat antworten Zitat
Rudirabbit

Registriert seit: 27. Sep 2006
111 Beiträge
 
#3

AW: G-Code Viewer

  Alt 30. Dez 2016, 11:36
GDI+ habe ich noch nie benutzt

Die Werte der G-Code Zeilen sind ja alles float Werte in mm.
Ich hatte diese Werte gleich nach dem Parsen in Pixel auf int gerechnet.

Ein großer Fehler, denn die Fehler summieren sich auf.

Habe den Code nun geändert, ich rechne nun alles in float.
Erst wenn ich auf das Canvas greife, wird gerundet.

Das Ergebnis schaut nun sehr viel besser aus.

Was mich zum Grübeln bringt ist, die Steuerung auf dem ARM der den Laser steuert habe ich im Prinzip auch so geschrieben.
Also erst alles in Steps umrechnen, die Ergebnisse von dem Cutter sind trotzdem sehr gut.
Denke weil die Auflösung mm -> Steps höher ist.
Vermutlich könnte man hier noch was optiemieren.
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#4

AW: G-Code Viewer

  Alt 30. Dez 2016, 14:49
Es gibt bereits ein gutes Tool:
Ich nutze http://camotics.org/ für das GCode anschauen.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Sender

Registriert seit: 25. Nov 2008
2 Beiträge
 
Delphi 2009 Professional
 
#5

AW: G-Code Viewer

  Alt 30. Dez 2016, 15:53
Innerhalb der Kreisabschnitte des Beispielcodes befinden sich extreme "Leichen".

In jedem "Kreis" ist ein G1 mit Koordinaten, die der G2 schon angefahren hat.

Aus den Unterteilungen würde ich einen Vollkreis machen, der sich dann auch einfacher zeichnen lässt.
Angehängte Dateien
Dateityp: txt Test.txt (1,3 KB, 18x aufgerufen)
  Mit Zitat antworten Zitat
Rudirabbit

Registriert seit: 27. Sep 2006
111 Beiträge
 
#6

AW: G-Code Viewer

  Alt 30. Dez 2016, 19:39
Innerhalb der Kreisabschnitte des Beispielcodes befinden sich extreme "Leichen".
Ich erzeuge derzeit den G-Code mit Inkscape und dem Laserplugin.
Das funktioniert nicht immer Optimal.
Habe das schon gesehen, die Maschine frisst den Buggy G-Code jedenfalls.
Es wird halt nur nochmal an die selbe Stelle gefahren, da die Maschine schon an der Stelle steht passiert nicht viel.

Schön ist es nicht, für ernsthafte Laserjob's würde ich das manuell entfernen.

Aus den Unterteilungen würde ich einen Vollkreis machen, der sich dann auch einfacher zeichnen lässt.
Bringt dann nur bei diesem Sketch eine Verbesserung, das Ding soll flexibel sein und (fast) jeden G-Code anzeigen können.

Wie schon gesagt,Code nun geändert,ich rechne nun alles in float.
Und schaut nun schon viel besser aus.


Ein Problem besteht noch,ich male die Kreisbögen im Delphi Senderprogramm mit der arc Funktion von Canvas.

Dazu wird ein rect aufgespannt wo der Bogen drinliegt, es kann bei bestimmten G-Codes passieren das z.b eine Ecke des Rects negativ berechnet werden.
Dann spackt die Darstellung natürlich ab.
Miniaturansicht angehängter Grafiken
screen.png   imag0470.jpg  
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.633 Beiträge
 
Delphi 12 Athens
 
#7

AW: G-Code Viewer

  Alt 31. Dez 2016, 11:10
Wieviel Watt hatt denn der Lasercutter, wenn du Holz schneiden kannst?
Kannst du vielleicht ein Bild davon machen oder passt das Gerät nicht aufs Bild?
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
Rudirabbit

Registriert seit: 27. Sep 2006
111 Beiträge
 
#8

AW: G-Code Viewer

  Alt 31. Dez 2016, 19:18
Hi,

Ein 40 Watt CO2, der Tisch ist von einem Industrieverwurf (ca. 20 Jahre alt).
Hatte schon Servomotore drauf, die ich übernommen habe.
Deshalb auch die beiden UHU Endstufen links im zweiten Bild.

Die Steuerung basiert auf einem SAM3X8E ARM Cortex-M3.
Software dort drauf ist auch von mir.

Der Laser lief hier bei dem Holz mit ca. 1/3 der Leistung, da geht schon noch viel mehr.
Wobei man die CO2 Röhren nicht dauerhaft mit der angegebenen Peak Leistung betreiben sollte.

Das ist mit ein Grund warum bei vielen Leute das Rohr nicht lange halt.

Mir geht es hier eher um den Spaß am Bauen und Programmieren und Löten
Das ganze soll halt finanziell im Rahmen bleiben, deshalb auch das hässliche OSB Platte Gehäuse.
Das Laserzeug ist schon teuer genug

PS:
Damit jetzt keine Diskussion entsteht, wegen der Sicherheit mit dem Laser.
Ich befasse mich seit ca. 2 Jahren damit.
Und habe mich von einem Profi persönlich anleiten lassen.(war der Verkäufer der Röhre und HV Netzteil)
Eine Schutzbrille für die 10600nm passend habe ich auch.

Klar man muß schon wissen was man tut, und den entsprechendem Respekt haben.
Miniaturansicht angehängter Grafiken
imag0428.jpg   imag0427.jpg  
  Mit Zitat antworten Zitat
Rudirabbit

Registriert seit: 27. Sep 2006
111 Beiträge
 
#9

AW: G-Code Viewer

  Alt 1. Jan 2017, 20:19
Mein G-Code Viewer/Sender Programm ist inzwischen auch etwas besser geworden.
Ein erster Ansatz den man zeigen kann, verarbeitet aber nur den G-Code Dialekt der von Inkscape Laser Plugin erzeugt wird.
Andere G-Codes werden einen Fehler produzieren.
Der Parser müßte dann erweitert werden.

Mit dem Mausrad kann skaliert werden.
Die Grafik wird noch etwas unkontrolliert verschoben.
Angehängte Dateien
Dateityp: zip testme.zip (318,0 KB, 84x aufgerufen)

Geändert von Rudirabbit ( 1. Jan 2017 um 20:49 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz