guyver
27-12-2005, 14:27
Ciao a tutti.
Vista la cronica penuria di CAM ( Computer Aided Manufacturing) per Linux e Osx (tranne l ottimo ma costoso e complesso Proe (linux) e MacCad per osx (io nn ne conosco altri)), ho pensato che sarbbe buona cosa la realizzazione di un cam open a 2 assi 2 assi e 1/2 per la gestione di macchine a controllo quali Water Jet e CN (per esempio contornatrici).
Io sono una chiavica in C quindi al massimo posso dare aiuti e fare betatestig,
anni fa ho fatto un programma simile in vb6 ma era molto primitivo anche se adatto allo scopo.
Cmq l'idea di base è quella di relizzare , tramite cad, il percorso utensile (una polilinea orientata) di esportarlo in dxf (un formato testuale facile da gestire) e generare il Gcode (il percorso utensile per il Cn)
Esempio di gcode
N10 G00 Z3.000000
N20 G00 X2148.632808 Y-2398.198158
N30 G01 Z0.000000
N40 G01 X2153.632808 Y-2398.198158 Z0.000000
N50 G02 I10.000000 J0.000000 X2173.632808 Y-2398.198158
N60 G01 X2173.632808 Y-2402.198158 Z0.000000
N70 G02 I46.247722 J-83.651263 X2209.273562 Y-2390.855328
N80 G02 I169.663533 J-1683.969011 X2299.163150 Y-2384.211000
N90 G03 I-2.739024 J123.713799 X2326.442133 Y-2380.545214
N100 G03 I-22.405065 J88.491044 X2347.425343 Y-2372.366743
N110 G01 X2347.425343 Y-2357.321138 Z0.000000
N120 G02 I31.966803 J3.188384 X2348.889255 Y-2344.052281
N130 G02 I16.910948 J-5.553807 X2371.502969 Y-2332.744789
N140 G02 I-7.917395 J-23.409269 X2387.172005 Y-2348.781184
N150 G02 I-34.577987 J-10.885192 X2388.832193 Y-2360.625181
N160 G01 X2388.832193 Y-2375.670011 Z0.000000
N170 G03 I-21.738591 J51.098255 X2411.570751 Y-2357.819029
N180 G01 X2411.570751 Y-2311.075300 Z0.000000
N190 G02 I13.405576 J-2.813687 X2428.820263 Y-2300.741726
N200 G02 I-3.586199 J-12.265734 X2437.411088 Y-2309.130718
N210 G01 X2437.884190 Y-2300.912156 Z0.000000
N220 G02 I42.143497 J-53.225149 X2468.113561 Y-2287.301353
N230 G02 I13.417496 J-75.269569 X2504.188749 Y-2289.549239
N240 G02 I-15.000702 J-48.344576 X2531.441963 Y-2310.022222
N250 G03 I-7.721424 J12.757734 X2538.632825 Y-2297.202286
N260 G01 X2543.632825 Y-2297.202286 Z0.000000
N270 G02 I15.000000 J0.000000 X2558.632825 Y-2282.202286
N280 G03 I0.000000 J15.000000 X2573.632825 Y-2267.202286
N290 G01 X2583.632825 Y-2267.202286 Z0.000000
N300 G00 Z3.000000
2 cosette e poi basta
G0 sono movimenti in rapido (spostamenti senza lavorazione)
G1 movimento lineare in velocità di lavoro
G2 movimento circolare orario
G3 " " anti orario
x y z sono le coordinate di inizio fine
I J sono le corodinate x y del centro del arco
Vista la cronica penuria di CAM ( Computer Aided Manufacturing) per Linux e Osx (tranne l ottimo ma costoso e complesso Proe (linux) e MacCad per osx (io nn ne conosco altri)), ho pensato che sarbbe buona cosa la realizzazione di un cam open a 2 assi 2 assi e 1/2 per la gestione di macchine a controllo quali Water Jet e CN (per esempio contornatrici).
Io sono una chiavica in C quindi al massimo posso dare aiuti e fare betatestig,
anni fa ho fatto un programma simile in vb6 ma era molto primitivo anche se adatto allo scopo.
Cmq l'idea di base è quella di relizzare , tramite cad, il percorso utensile (una polilinea orientata) di esportarlo in dxf (un formato testuale facile da gestire) e generare il Gcode (il percorso utensile per il Cn)
Esempio di gcode
N10 G00 Z3.000000
N20 G00 X2148.632808 Y-2398.198158
N30 G01 Z0.000000
N40 G01 X2153.632808 Y-2398.198158 Z0.000000
N50 G02 I10.000000 J0.000000 X2173.632808 Y-2398.198158
N60 G01 X2173.632808 Y-2402.198158 Z0.000000
N70 G02 I46.247722 J-83.651263 X2209.273562 Y-2390.855328
N80 G02 I169.663533 J-1683.969011 X2299.163150 Y-2384.211000
N90 G03 I-2.739024 J123.713799 X2326.442133 Y-2380.545214
N100 G03 I-22.405065 J88.491044 X2347.425343 Y-2372.366743
N110 G01 X2347.425343 Y-2357.321138 Z0.000000
N120 G02 I31.966803 J3.188384 X2348.889255 Y-2344.052281
N130 G02 I16.910948 J-5.553807 X2371.502969 Y-2332.744789
N140 G02 I-7.917395 J-23.409269 X2387.172005 Y-2348.781184
N150 G02 I-34.577987 J-10.885192 X2388.832193 Y-2360.625181
N160 G01 X2388.832193 Y-2375.670011 Z0.000000
N170 G03 I-21.738591 J51.098255 X2411.570751 Y-2357.819029
N180 G01 X2411.570751 Y-2311.075300 Z0.000000
N190 G02 I13.405576 J-2.813687 X2428.820263 Y-2300.741726
N200 G02 I-3.586199 J-12.265734 X2437.411088 Y-2309.130718
N210 G01 X2437.884190 Y-2300.912156 Z0.000000
N220 G02 I42.143497 J-53.225149 X2468.113561 Y-2287.301353
N230 G02 I13.417496 J-75.269569 X2504.188749 Y-2289.549239
N240 G02 I-15.000702 J-48.344576 X2531.441963 Y-2310.022222
N250 G03 I-7.721424 J12.757734 X2538.632825 Y-2297.202286
N260 G01 X2543.632825 Y-2297.202286 Z0.000000
N270 G02 I15.000000 J0.000000 X2558.632825 Y-2282.202286
N280 G03 I0.000000 J15.000000 X2573.632825 Y-2267.202286
N290 G01 X2583.632825 Y-2267.202286 Z0.000000
N300 G00 Z3.000000
2 cosette e poi basta
G0 sono movimenti in rapido (spostamenti senza lavorazione)
G1 movimento lineare in velocità di lavoro
G2 movimento circolare orario
G3 " " anti orario
x y z sono le coordinate di inizio fine
I J sono le corodinate x y del centro del arco