Precies, zover was ik ook al, @Zjokkeh welke foutmeldingen krijg jij als je het python script start ?
Precies, zover was ik ook al, @Zjokkeh welke foutmeldingen krijg jij als je het python script start ?
Golden Member
Misschien kan Zjokkeh het bronbestand wat geconverteerd moet worden hier plaatsen.
Ik krijg die meldingen niet. Waarschijnlijk iets mis in mijn Python shell dan? Als ik egxmake start gebeurd er niets...
c code:
C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake>python egxmake.py
C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake>
Bronbestand:
Golden Member
Als je Python goed installeert op je Windows 10 machine (daar ging ik even van uit) hoef je het commando Python niet eens in te typen maar zou egmake.py <enter> voldoende moeten zijn in een DOS/CMD box.
Python installer :
https://www.python.org/ftp/python/3.8.0/python-3.8.0.exe
[Bericht gewijzigd door bprosman op donderdag 17 oktober 2019 12:23:48 (17%)
Waarschijnlijk zit er ergens bij de installatie iets mis...
Op 17 oktober 2019 12:23:41 schreef Zjokkeh:
Waarschijnlijk zit er ergens bij de installatie iets mis...
Ik heb het opnieuw geinstalleerd en nu lijkt het script te werken, hij geeft alleen nog deze error:
c code:
C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake>egxmake.py -o c:\test\test.nc
usage: C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake\egxmake.py
[-h] [-o FILE] [-m FILE] [-t TYPE] [-n NAME] [-p mm] [--no-warnings]
[--no-info] [--no-fix] [--no-error] [--ack-feed-rate]
GCODE-FILE
C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake\egxmake.py: error: the following arguments are required: GCODE-FILE
Golden Member
Je geeft met -o alleen je output bestand aan , niet je input.
het is : egxmake.py -o <uitvoerbestand> <te converteren bestand>
-h geeft je wat meer info :
code:
C:\Data\CO_Python>egxmake.py -h
usage: C:\Data\CO_Python\egxmake.py [-h] [-o FILE] [-m FILE] [-t TYPE]
[-n NAME] [-p mm] [--no-warnings]
[--no-info] [--no-fix] [--no-error]
[--ack-feed-rate]
GCODE-FILE
Generate a milling script for Roland EGX engravers from a G-Code script.
positional arguments:
GCODE-FILE A G-Code script file
optional arguments:
-h, --help show this help message and exit
-o FILE, --out FILE Write output to file
-m FILE, --generate-meta FILE
Write .meta file
-t TYPE, --layer-type TYPE
Layer type [DRILL TRACK MECH SILK], TRACK by default
-n NAME, --layer-name NAME
Layer name, filename by default
-p mm, --precision mm
Tool minimim precision
--no-warnings Don't print warnings
--no-info Don't print info
--no-fix Don't output 'needs fixing' messages
--no-error Don't print errors
--ack-feed-rate Acknowledge script feed rate instead of leaving it to
the machine.
C:\Data\CO_Python>
[Bericht gewijzigd door bprosman op donderdag 17 oktober 2019 13:03:28 (84%)
Ok, ik ben zover dat ik het script aan de praat krijg.
Dank aan iedereen hiervoor. Bij het compileren stuit ik nog op enkele errors. Waarschijnlijk G - codes die de Roland taal niet kent?
c code:
C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake>egxmake -o c:\test\test.rol c:\test\test.nc
[FIX] Ignored opcode <G20 - Units: Inches>.
[FIX] Ignored opcode <G90 - Absolute coordinates>.
[FIX] Ignored opcode <G94 - Inches per minute>.
[NFO] Ignoring feed rate (3.15 inch/min -- 1 mm/sec)
[FIX] Ignored opcode <M3 - Spin CW>.
[NFO] Tool RPM must be set to 5000 RPM.
[NFO] Ignoring feed rate (3.15 inch/min -- 1 mm/sec)
[NFO] Ignoring feed rate (3.15 inch/min -- 1 mm/sec)
[WRN] Warning at 762: G01 with positive Z and non-null X/Y, ignoring Z.
Traceback (most recent call last):
File "C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake\egxmake.py", line 39, in <module>
gcode.compile(conf)
File "C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake\gcode\compiler.py", line 278, in compile
command()
File "C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake\gcode\compiler.py", line 234, in command
move_linear()
File "C:\Users\zjokk\Documents\EGX-20\Heavydeck\egxmake\gcode\compiler.py", line 202, in move_linear
g.out_f.write('PD%d,%d;' % (inch2egx(cx), inch2egx(cy)))
TypeError: a bytes-like object is required, not 'str'
Is dit dezelfde test.nc file, die hierboven heeft geen 762 regels.
Hij wil met die inch2egx een waarde maal 2540 doen om millimeters te krijgen. Echter is een waarde die hij tegenkomt geen getal (byte) maar een tekst (str)
In de test.nc hierboven zie ik deze regels met 'Z':
code:
(Feedrate_Z: 79.9998 mm/min)
(Z_Cut: -0.2 mm)
(Z_Move: 1.999 mm)
(Z Toolchange: 12.7 mm)
(Z Start: None mm)
(Z End: 12.7 mm)
G00 Z1.9990
G01 Z-0.2000
G00 Z1.9990
G01 Z-0.2000
G00 Z1.9990
G00 Z1.9990
G00 Z12.70
Geen G01 met positive Z en een aanwezige (non null) X en Y.
Eigenlijk heel veel dit:
G01 X1.3856 Y2.8025
G01 X0.9119 Y3.8865
G01 X0.9138 Y3.8769
G01 X0.9184 Y3.8629
Maar geen 762 regels
Ik vrees dat egxmake ook niet doet wat het moet. Ik vrees dat het apparaat voor de vuilbak is. De g-code maak ik met Flatcam. Die g-code probeer ik dan om te zetten met egxmake. Als ik de g-code in een simulator ingeef voert die dat perfect uit. Ik heb 1 programma gevonden dat een postprocessor heeft specifiek voor de egx-20 namelijk VCARVE, maar de kost een stuk uit je rug.
Mijn ideëen zijn op.
Bedankt voor de tip. Voorlopig nog geen succes hiermee.
Converteren naar een afbeelding en die weer importeren?
Het is geen rocket science. Moet toch te doen zijn. Nogmaals: kwam die error door dezelfde test.nc? file want die komt dan veel regels te kort.
Het kan zelfs zijn dat je door een simpel probleem met 'dos returns' nu het bestand niet kan omzetten..
Ik denk dat de EGX-30 en de EGX-20 niet dezelfde taal spreken. Als ik het het voorbeeld uit de sample dir naar mijn EGX-20 stuurde klopte het ook niet. De spindel draaide niet en het leek gewoon niet te kloppen. Misschien ligt de fout bij mij? Ik ben aan het experimenteren met Freemill.
De code lijkt me bijna handmatig in te kloppen:
Ga naar X,Y
Zakken Z
Ga naar X,Y
Etc.. voor beide talen... behalve wat uitzonderingen kan je 99% met één 'regexp-regel' aanpassen..
Als je een file hebt die wel werkt als voorbeeld wil ik het wel een gooi geven.
Je bedoeld een "roland-taal" file die op de machine "iets" deftig freest?
Op 17 oktober 2019 17:12:06 schreef Zjokkeh:
20\Heavydeck\egxmake\gcode\compiler.py", line 202, in move_linear
g.out_f.write('PD%d,%d;' % (inch2egx(cx), inch2egx(cy)))
TypeError: a bytes-like object is required, not 'str'[/code]
regel 202
TypeError: a bytes-like object is required, not 'str'
In python 2.x was dit mogelijk in 3.x niet
Golden Member
Op 17 oktober 2019 22:19:22 schreef Zjokkeh:
Bedankt voor de tip. Voorlopig nog geen succes hiermee.
Neem eens contact op met Lex Lennings. De Nederlandse maker. Die is heel behulpzaam.
Op 19 oktober 2019 07:30:07 schreef Zjokkeh:
Je bedoeld een "roland-taal" file die op de machine "iets" deftig freest?
Ja gewoon 'iets'. De taal is behoorlijk basic. Omzetten van inch naar mm
Dit:
G01 X1.3856 Y2.8025
G01 X0.9119 Y3.8865
G01 X0.9138 Y3.8769
G01 X0.9184 Y3.8629
Wordt zoiets:
PD3000,4000
PD2500,6000
Etc... je zou het in Excel kunnen doen. Degene die het python script schreef is een beetje doorgeslagen in de complexiteit, het decoderen wordt ook heel omslachtig gedaan..
Hoi,
Het is mij dan uiteindelijk gelukt. Via Flatcam, met posprocessor MDX-20 op schaal x 2.54. Wat foefelen met de diameter en freesdiepte, et voila:
Nen dikke mercie aan alle meedenkers hier!
Golden Member
Dat ziet er niet slecht uit voor een apparaat dat je bijna in de vuilbak gegooid had! Goed gedaan
Tnx Elmowww. JA stel je voor zeg... Ik krijg het soms nogal snel op mijn systeem.
Op de foto zie je de cutter waar de EGX-20 mee freest. Jammer genoeg zijn er geen boortjes in dit formaat, anders kon ik in één keer de gaatjes ook boren.
Hello,
I found in my work place similar engraver EXG-30A, and reading this forum I was trying to mill PCB but... I tried directly from Eagle PCB and this program is printing/milling pretty well but "positive" view only. Then I Tried all kind of conversion thru grab-Gcode - InkScope but I given up.
Originally for this engraver producer sales Dr Engraver program what is very poor option and not useful for PCB - It can work only with .bmp or .det extension. May is possible to adopt py script to EXG-30A engraver?
What I foung on internet that this device use CAMM-GL coding.
Thank you for help and any suggestions
BR
Dan