Root/
| 1 | #!/bin/sh |
| 2 | PATH=$PATH:/home/qi/cae-tools/cameo |
| 3 | PATH=$PATH:/home/moko/svn.openmoko.org/developers/werner/cncmap/gp2rml |
| 4 | |
| 5 | while [ "$1" ]; do |
| 6 | eval "$1" |
| 7 | shift |
| 8 | done |
| 9 | |
| 10 | if ! [ "$NAME" ]; then |
| 11 | echo "NAME is required" 1>&2 |
| 12 | exit 1 |
| 13 | fi |
| 14 | : ${X0:=0} ${Y0:=0} |
| 15 | : ${X:=0} ${Y:=0} |
| 16 | : ${XN:=1} ${YN:=1} |
| 17 | |
| 18 | |
| 19 | |
| 20 | write=write |
| 21 | yi=0 |
| 22 | while [ $yi -lt $YN ]; do |
| 23 | xi=0 |
| 24 | while [ $xi -lt $XN ]; do |
| 25 | |
| 26 | cameo <<EOF |
| 27 | mm |
| 28 | |
| 29 | gerber 35mil ../$NAME-PCB_Edges.gbr |
| 30 | align 1 $X0 $Y0 # align relative to board corner |
| 31 | translate 4mm 4mm # move to PCB zone assigned to project |
| 32 | array +3mm +3mm `expr $X + $xi` `expr $Y + $yi` |
| 33 | z 0 -58.9mm # board surface (tool fully retracted) |
| 34 | z 1.5mm # slack for extending the tool |
| 35 | z -0.8mm # board thickness |
| 36 | z -0.5mm # tool extra depth |
| 37 | clear |
| 38 | |
| 39 | excellon ../$NAME.drl |
| 40 | drill 7mil 15mil # 12.5-13.5 mil drill |
| 41 | optimize |
| 42 | $write drill.gp |
| 43 | |
| 44 | remainder |
| 45 | mill 25mil 0.01mm # 35 mil endmill; pretend it is a little smaller, |
| 46 | # to compensate for tool/board deflections |
| 47 | $write mill.gp |
| 48 | |
| 49 | remainder |
| 50 | empty |
| 51 | |
| 52 | gerber 45mil ../$NAME-PCB_Edges.gbr # 35 mil endmill, -10 mil deflection |
| 53 | offset |
| 54 | append mill.gp |
| 55 | EOF |
| 56 | |
| 57 | write=append |
| 58 | xi=`expr $xi + 1` |
| 59 | done |
| 60 | yi=`expr $yi + 1` |
| 61 | done |
| 62 | |
| 63 | gp2rml 2 0.5 0.5 mill.gp >mill.rml |
| 64 | gp2rml 2 0.1 0.5 drill.gp >drill.rml |
| 65 | |
| 66 | |
| 67 | cat <<EOF >Makefile.mkmk |
| 68 | SPOOL=/home/moko/svn.openmoko.org/developers/werner/cncmap/spool/spool |
| 69 | CNGT=/home/qi/cae-tools/cngt/cngt |
| 70 | |
| 71 | .PHONY: mill drill cng plot dplot |
| 72 | |
| 73 | mill: |
| 74 | PORT=/dev/ttyUSB0 \$(SPOOL) mill.rml |
| 75 | |
| 76 | drill: |
| 77 | PORT=/dev/ttyUSB0 \$(SPOOL) drill.rml |
| 78 | |
| 79 | cng: |
| 80 | \$(CNGT) -57.4 20 mill.gp |
| 81 | |
| 82 | plot: |
| 83 | echo 'plot "drill.gp" with points, "mill.gp" with lines' | \\ |
| 84 | gnuplot -persist |
| 85 | |
| 86 | dplot: |
| 87 | echo 'plot "< sed /^\$\$/d drill.gp" with linespoints' | \\ |
| 88 | gnuplot -persist |
| 89 | |
| 90 | clean:: |
| 91 | rm -f mill.gp mill.rml drill.gp drill.rml |
| 92 | EOF |
| 93 |
Branches:
master
