|
||
---|---|---|
FlatCAM_GTK | ||
bugs | ||
descartes | ||
doc | ||
sandbox | ||
share | ||
tests | ||
.gitignore | ||
DblSidedTool.py | ||
FlatCAM.py | ||
FlatCAMApp.py | ||
FlatCAMCommon.py | ||
FlatCAMDraw.py | ||
FlatCAMGUI.py | ||
FlatCAMObj.py | ||
FlatCAMProcess.py | ||
FlatCAMShell.py | ||
FlatCAMTool.py | ||
FlatCAMWorker.py | ||
GUIElements.py | ||
LICENSE | ||
MeasurementTool.py | ||
ObjectCollection.py | ||
ObjectUI.py | ||
PlotCanvas.py | ||
README.md | ||
camlib.py | ||
camlib.pyc | ||
cirkuix.pyc | ||
make_win32.py | ||
requirements.txt | ||
setup_ubuntu.sh | ||
svgparse.py | ||
termwidget.py | ||
upgrade_geos.sh |
README.md
FlatCAM: 2D Computer-Aided PCB Manufacturing
(c) 2014-2015 Juan Pablo Caram
FlatCAM is a program for preparing CNC jobs for making PCBs on a CNC router. Among other things, it can take a Gerber file generated by your favorite PCB CAD program, and create G-Code for Isolation routing.
double sided shell script used for Loop Arduino Shield example from [fritzing](Link URL)http://fritzing.org/
#!python
new
set_sys units MM
# ######### BOTTOM layer
# LOAD
open_gerber /path/to/Gerber/Loop_contour.gm1 -outname BCu_margin
open_gerber /path/to/Gerber/Loop_copperBottom.gbl -outname BCu
open_excellon /path/to/Gerber/Loop_drill.txt -outname BCu_drills
#MIRROR
mirror BCu -box BCu_margin -axis X
mirror BCu_drills -box BCu_margin -axis X
#ALIGNHOLES
aligndrill BCu_margin -dia 3 -box BCu_margin -grid 10 -gridoffset 5 -axisoffset 0 -axis X
#CUTOUT
isolate BCu_margin -dia 3 -overlap 1
exteriors BCu_margin_iso -outname BCu_margin_iso_exterior
delete BCu_margin_iso
geocutout BCu_margin_iso_exterior -dia 3 -gapsize 0.2 -gaps 4
#ISOLATE TRACES
exteriors BCu_margin -outname BCu_exterior
isolate BCu -dia 0.8 -overlap 1
#JOIN TRACES and basic exterior
join_geometries BCu_join_iso BCu_iso BCu_exterior
#CNCJOBS
drillcncjob BCu_drills -tools 100,101,102,103,104 -drillz -2 -travelz 2 -feedrate 5 -outname BCu_drills_0.8
drillcncjob BCu_margin_aligndrill -tools 1 -drillz -2 -travelz 2 -feedrate 5 -outname BCu_drills_3
cncjob BCu_join_iso -tooldia 0.6
#cncjob BCu_margin_cutout -tooldia 3
cncjob BCu_margin_iso_exterior -tooldia 3
#GENERATE GCODE
write_gcode BCu_join_iso_cnc /path/to/Gerber/output/Loop-BCu.pngc
write_gcode BCu_margin_iso_exterior_cnc /path/to/Gerber/output/Loop-BCu-Margin.ngc
write_gcode BCu_drills_0.8 /path/to/Gerber/output/Loop-BCu.drl_0.8.ngc
write_gcode BCu_drills_3 /path/to/Gerber/output/Loop-BCu.drl_3.ngc
# ######### TOP layer
# LOAD
open_gerber /path/to/Gerber/Loop_contour.gm1 -outname FCu_margin
open_gerber /path/to/Gerber/Loop_copperTop.gtl -outname FCu
open_excellon /path/to/Gerber/Loop_drill.txt -outname FCu_drills
#ALIGNHOLES
aligndrill FCu_margin -dia 3 -box FCu_margin -grid 10 -gridoffset 5 -axisoffset 0 -axis X
#CUTOUT
isolate FCu_margin -dia 3 -overlap 1
exteriors FCu_margin_iso -outname FCu_margin_iso_exterior
delete FCu_margin_iso
geocutout FCu_margin_iso_exterior -dia 3 -gapsize 0.2 -gaps 4
#ISOLATE TRACES
exteriors FCu_margin -outname FCu_exterior
isolate FCu -dia 0.8 -overlap 1
#JOIN TRACES and basic exterior
join_geometries FCu_join_iso FCu_iso FCu_exterior
#CNCJOBS
drillcncjob FCu_drills -tools 100,101,102,103,104 -drillz -2 -travelz 2 -feedrate 5 -outname FCu_drills_0.8
drillcncjob FCu_margin_aligndrill -tools 1 -drillz -2 -travelz 2 -feedrate 5 -outname FCu_drills_3
cncjob FCu_join_iso -tooldia 0.6
#cncjob FCu_margin_cutout -tooldia 3
cncjob FCu_margin_iso_exterior -tooldia 3
#GENERATE GCODE
write_gcode FCu_join_iso_cnc /path/to/Gerber/output/Loop-FCu.pngc
write_gcode FCu_margin_iso_exterior_cnc /path/to/Gerber/output/Loop-FCu-Margin.ngc
write_gcode FCu_drills_0.8 /path/to/Gerber/output/Loop-FCu.drl_0.8.ngc
write_gcode FCu_drills_3 /path/to/Gerber/output/Loop-FCu.drl_3.ngc