Prusa i3 Umbau zum Laser Gravierer

TobyTetzi

Erfahrener Benutzer
#1
Hallo,

da ich mich weiterhin mit dem Laser Umbau beschäftige, hier nun ein paar News.

Ich hatte ja das Bangood 2,5 Watt Laser Modul zerlegt um die Konstantstromquelle zu ersetzten.
Der original Treiber lässt es nicht zu, die Laserdiode in der Leistung zu regeln, daher sollte ein neuer
TTL Eingang - Laser Dioden Treiber an den vorhanden.
Da das vorhandene TTL Modul defekt ist - der Strom lässt sich nicht einstellen - habe ich mir auf die Schnelle
ein Labornetzteil genommen - 5,20 Volt, 1,9 A eingestellt - und lasse nun über den D9 Ausgang des Ramps
einen FET ansteuern der die Leistung der Laserdiode steuert.
Die Labornetzteilvariante ist nicht die beste, aber für den Moment ok und brauchbar.

Mit dem Demo Programm PicLaser von http://jtechphotonics.com/ lässt sich damit schon Mal die hälfte eines Bildes lasern.

Fiat-Abarth-595-SS-729x486-ea684b5aa3ee2684.jpg

20151219_182232_resized.jpg

20151219_184534_resized.jpg

Jetzt gibt es noch ein weiteres kostenloses Programm von http://3dpburner.blogspot.de/2015/02/3dpburner-image2gcode-image-to-gcode.html

Dieses Programm gefällt mir sogar noch besser als das Erste, leider gibt es den falschen G-Code aus.
Ich hoffe auf diesem Wege jemanden zu finden, der sich mit C# auskennt und den OpenSource Code passend machen kann.

Der G-Code von PicLaser sieht so aus
; File: Fiat-Abarth-595-SS-729x486-ea684b5aa3ee2684.bmp
; 12-20-2015 at 23:01:20
; PicLaser v. 2.0.0
; UNREGISTERED DEMO VERSION
; AUTOMATIC SKIP LINES ENABLED
; J-Tech 3D
; FeedRate = 500
; Pixel Resolution = 0.1000
; Max. Laser Value 63.0000
; Min. Laser Value .0000
; Engraving Angle = Horizontal

G21
G1 F500
G1 M106 S
G1 X0.00 Y0.00
M03
M106 S63.0000
G1 Y48.5000
G1 X72.8000
G1 Y0.0000
G1 X0.0000
M106 S
M03
G1 X0 Y0
M106 S30.1412
G1 X0.1 Y0
M106 S31.1294
G1 X0.2 Y0
M106 S31.6235
G1 X0.3 Y0
M106 S31.1294
...
...
Der G-Code von Image2Gcode so
(Generated by 3dpBurner Image2Gcode v0.1)
(@Dez.20.2015 23:03:02)
M5

(Header)
G0 X0 Y0
(Header end)
G90

G21

F500

G0X0Y66.6
G1

M3

X0Y66.42S42
X0.18
X0.36S41
X0.54
X0.72S42
X0.9
X1.08S43
X1.26S44
...
...
Es fehlen die M106 Sxxx Befehle um die Laserleistung zu regeln und es fehlen die G1 Befehle vor den XY Befehlen.

Gruß Toby
 

TobyTetzi

Erfahrener Benutzer
#6
Hallo,

Steffen, danke für die Info.

Gfunk, ich habe grade VS2013 geöffnet, den Code erstellen (den Gcode, wie er es macht) ist ganz einfach, Zeile für Zeile.
Da ich etwas C kenne, durch meine Mikrokontroller ;) verstehe ich den Programm Code etwas.

Jetzt stellt sich nur die Frage ob ich wirklich "nur" ein G1 und ein M106 in einer Zeile einfügen muss oder in zwei Zeilen.

Das G1 vor den X/Y Befehlen hab ich bereits drin. :rolleyes:

Gruß Toby
 

TobyTetzi

Erfahrener Benutzer
#7
Hallo,
So sieht der erzeugte G-Code jetzt aus.

(Generated by 3dpBurner Image2Gcode v0.1)
(@Dez.21.2015 11:56:40)
M5

(Header)
G0 X0 Y0
(Header end)
G90

G21

F500

G0X0Y66.6
G1

M3

G1 X0 Y66.42 M106 S42
G1 X0.18
G1 X0.36 M106 S41
G1 X0.54
G1 X0.72 M106 S42
G1 X0.9
G1 X1.08 M106 S43
G1 X1.26 M106 S44
...
...
 

SteBa

Erfahrener Benutzer
#9
Also so wie ich das verstanden habe, muss das M106 Kommando in einer separaten Zeile stehen. Lies dir doch einfach mal den Link vom RepRap Forum genau durch, Toby.
 

locomarco

Erfahrener Benutzer
#11
Wenn die Firmware den G-Code nach DIN 66025 versteht, können die Zusatzbefehle (M-Codes) im gleichen Satz wie die Verfahrbewegung stehen. Die Zusatzbefehle wirken dann schon vor der Bewegung.

In dem Link ist auch erklärt dass M106 nicht alleine in einer Zeile stehen darf. Wenn dann muss nochmal ein M400 davor.
Die Verfahrbefehle landen nämlich erst im Zwischenspeicher, M106 aber nicht. Das wird sofort ausgeführt, sobald der Satz eingelesen wurde.
 

TobyTetzi

Erfahrener Benutzer
#12
So,

habe den G-Code mal laufen lassen.

Zuerst musste ich noch ein paar Fehler beheben, manchmal stand kein G1 davor, manchmal ein G1 zu viel :rolleyes:

Erster Test - Laser wird gesteuert - X Fährt - Y nicht

Zweiter Test - Laser wird nicht gesteuert - X Fährt - Y Fährt

Ich bin dabei :eek: hab's gleich

Gruß Toby
 

TobyTetzi

Erfahrener Benutzer
#13
Eine Frage,

womit oder wie kann ich am einfachsten in einer Textdatei nach etwas suchen und dann vor jedem Ergebniss ein "Enter" also neue Zeile machen?

Ich würde gerne probieren ob der Code so läuft,
da ich noch nicht weiß wie ich im Programm eine neue Zeile für den M106 Sxxx Befehl erstelle.

So sieht es grade aus, nur muss das M106 in eine neue Zeile.

;(Generated by TobyTetzi Image2Gcode v0.1)
;(@Dez.21.2015 13:52:08)
M106 S0

;(Header)
G0 X0 Y0
G0 Z0
;(Header end)
M106 S0

G21

G1 F500

G0X0Y66.6
G1

M3

G1 X0 Y66.42 M106 S42
G1 X0.18
G1 X0.36 M106 S41
G1 X0.54
G1 X0.72 M106 S42
G1 X0.9
G1 X1.08 M106 S43
G1 X1.26 M106 S44
G1 X1.44
G1 X1.62
G1 X1.8
G1 X1.98 M106 S43
G1 X2.16
G1 X2.34
G1 X2.52
G1 X2.7
G1 X2.88
G1 X3.06
G1 X3.24 M106 S44
G1 X3.42
G1 X3.6 M106 S45
...
...
Gruß Toby

EDIT:
Den M106 Befehl vor dem XY zu bekommen ist einfach. Muss ich noch ändern.
 

locomarco

Erfahrener Benutzer
#14
Sowas geht mit den meisten Texteditoren (zb. Notepad++). Das M106 in die nächste Zeile zu schieben ist damit kein Problem, aber das M106 gehört in die Zeile darüber, das ist damit nicht so einfach zu machen.

Am besten du versucht das direkt im Sourcecode anzupassen.

Screenshot (12).png Screenshot (13).png
 
Zuletzt bearbeitet:

TobyTetzi

Erfahrener Benutzer
#15
Yeah !!!

Marco, Du bist heute mein Held!

Ich habe mir zwar auch das Notepad++ installiert, es damit aber nicht hinbekommen.
Es hat mit immer ein \n vor jedem G1 (das war meine Suchauswahl) gesetzt.

ABER - der Hinweis auf das "\n" war es. :eek:

Das PC Programm gibt nun G-Code aus, der nach Änderung der Dateiendung,
sofort von Marlin verarbeitet werden kann.

Der Umriss wird in diesem Programm (Image2Gcode) nach dem Bild gelasert, anders als bei PicLaser,
das macht erst den Rahmen, dann das Bild.
Image2Gcode fängt mit dem Bild oben rechts an, PicLaser dagegen unten links.


20151221_153403_resized.jpg

20151221_153917_resized.jpg

Als Nächstes werde ich das Programm dahin verändern, das die Ausgabedatei ausgewählt werden kann.
Also für Original- und Marlin- G-Code.
Dann muss ich noch alle Änderungen für vertikal Linien einfügen.
Die Dateiendung werde ich dann auch noch ändern.

Dann könnt ihr gerne Anfragen stellen. :rolleyes:

Gruß Toby
 

locomarco

Erfahrener Benutzer
#16
Immer wieder gerne :eek:

Das \n sollte eigentlich verschwinden, wenn man unter Suchmodus "Erweitert" anklickt.
Dann wird das nicht als Text geschrieben, sondern als neue Zeile.
 

TobyTetzi

Erfahrener Benutzer
#17
So, von der Grundschul-Weihnachtsfeier zurück.

Kurz davor ist das Bild fertig geworden.
Das Bild ist etwa 1/2 mal größer als von PicLaser (oben rechts auf dem Kopf)
und die einzelnen Linien sind deutlich zu erkennen.
Da muss noch mal nachgebessert werden.
Entweder mehr horizontale Linien, das Bild verkleinern oder dem Laser mehr Leistung geben.
Es waren ja auch nur 1/4 der verfügbaren Leistung.

20151221_163358_resized.jpg

Gruß Toby
 

Chriss_:)

Erfahrener Benutzer
#18
Hi Toby,

hast du jetzt ein Programm dafür geschrieben oder machst du die Umwandlung mit Notepad++? ;)

Mit C# und Regex sollte das umschreiben inkl. M-Befehl vor G recht schnell gemacht sein... :) Wenn du Hilfe brauchst, melde dich! ;)

Schöne Grüße aus dem Sauerland!
Chriss
 

Chriss_:)

Erfahrener Benutzer
#20
Hi Toby,

ok, hatte das gestern noch drüben gesehen, hatte aber nur am mobilen Endgerät geschaut, daher das übersehen! ;)

Das Programm wurde in c# geschrieben? ;) Gehst du derzeit Zeilenweise durch den gCode oder nutzt du da auch Regex? ;) Rein Interessehalber... :p

Kannst ja mal Deinen Code hier einstellen, wenn du magst! :)

Schöne Grüße aus dem Sauerland!
Chriss
 
RCLogger

FPV1

Banggood

Banggood

Oben