Eagle と Modela を使って電子基板を作る その4


2014128_pcb_test

概要
Eagle は電子基板を作成する CAD ソフトです。
Modela は、Roland 社の切削加工機です。
今回は ファブラボ・メルボルンの手法 を部分的に適用してみました。
題材は、7セグ LED の Arduino シールドです。

EagleデータとArduinoスケッチは GitHub で公開しています。

Eagle 側の作業
(1) 回路図 (sch) とボード図 (brd) を作成するところは、ほぼ同じです。
配線を太くしたり、PADを大きくしたりします。
20141227_eagle_sch 20141227_eagle_brd

(2) fablab-mill-n-drill.ulp を使って、ミリング (配線パターンの外形線) とホール (穴) のデータを作成します。
なお、ホールのデータは、小さいので、目視しにくいです。
20141227_eagle_milling

(3) ミリングとホールをひとつにして、dxf 形式でファイルを出力する。
このとき、左右反転 (Mirror) します。

Dr.Engrave 側の作業

1. 配線のと穴の加工
(1) データの作成
配線と穴の dxf ファイルを import します。
残念ながら、大きさの情報は無視されてしまいますが。
bitmap から外形線を抽出するのに比べて、dxf では鮮明な外形線が保持されます。
グリッドを表示して、外形に合わせて、リサイズします。
2014128_engrave

(2) Modelra に 1/64 のエンドミルをつけます。
(3) 加工を指示します。

2. 外形の加工
(1) 配線と穴のデータから、配線と穴を削除して、外形のみにします。
(2) Modelra を 1/32 のエンドミルに変えます。
(3) 加工を指示します。
2014128_milling

穴あけ
(1) 基板を Modela からはずします。
(2) 机に基板を固定します。
(3) ミニドリルに 0.8mm のドリル歯をつけて、穴をあけます。
ピンヘッダには、少し小さいので、穴を大きくなるようにグルグリします。
2014128_dirill

基板の研磨
(1) 基板の縁を平ヤスリで削ります。
(2) 基板の銅箔面を荒い紙ヤスリで磨いて、表面のギザギザをとります。
(3) 銅箔面を研磨剤で磨いて、ハンダが乗りやすいように、表面を滑らかにします。
2014128_polish_2

ハンダ付け
(1) 部品をつけて、裏面をハンダ
付けします。
2014128_pcb_rear 2014128_pcb_front

動作確認
(1) Arduino に今回作った基板を載せます。
(2) Arduino にスケッチを書き込みます。
(3) 全てのセグメントが点灯すれば、OKです。

Arduino スケッチ
000 から 999 まで 0.1秒刻みでカウントアップする 10秒タイマーです。
スケッチには、各セグメントを1つづつ順番に点灯するモードも含まれています。


Eagle と Modela を使って電子基板を作る その3


概要
Eagle は電子基板を作成する CAD ソフトです。
Modela は、Roland 社の切削加工機です。
今回は、ファブラボ・メルボルンの手法を試してみました。
結果としては、うまくいきませんでしたが、少し前進したところもありました。

ファブラボ・メルボルンの手法
前回まで手法 は、Eagle を使って配線パターンを画像情報として作成して、Modela のソフトでベクタ情報に変換する方法です。
ファブラボ・メルボルンの手法は、Eagle を使って、直接 Modela の CAMデータを作成するやりかたです。
Dr.Engrave や fabmodule などは使用しません。
オリジナルの英文 の他に、日本語訳 もあるので、詳しくはそちらをご覧ください。

基本的な流れ
(1) Eagleで、回路図(sch)とボード図(brd)を作成します。
配線を太くしたり、PADを大きくしたりします。
(2) fablab-mill-n-drill.ulp を使って、ボード図(brd)からミリング(配線パターンの外形線)とホール(穴)のデータを作成する。
(3) fablab-mill-n-drill.cam を使って、Modela の制御コードを作成する。
Modela を新たな工作機器として認識させるために、eagle.def の修正が必要です。
(4) Modela に制御コードをUSBシリアル通信で渡す。

実際に出来たこと
(1) Eagleで、回路図(sch)とボード図(brd)を作成します。
今回の題材は、7セグLED SND2537 です。
20141227_eagle_sch 20141227_eagle_brd

(2) の fablab-mill-n-drill.ulp は、オリジナルのままでは、1/30 くらいの小さいデータが作成されます。これは、Eagleのバージョンの違いによるもので、下記に対処方法がありました。
EAGLE ulp generates wrong scale
20141227_eagle_milling

(3) (4) の操作を行いましたが、Modela は全く反応しなかったです。
生成した制御コードに誤りがあるのだと推測しています。
詳しい調査は、そのうちに。

ひとまず GitHub に下記を公開しておきます。
– fablab-mill-n-drill.ulp (修正したもの)
– fablab-mill-n-drill.cam (オリジナル)
– eagle.def

前進したこと
(1) fablab-mill-n-drill.ulp により、配線パターンの外形線のベクタ情報が得られるようになった。
(2) 配線パターンを bitmap 形式の他に、dxf 形式で出力できるようになった。
fabmodule は、dxf 形式を受け付けることはできませんが。
Dr.Engrave は、受け付けることはできます。
次は、Dr.Engrave を使った基板作成を試してみます。

Arduino スケッチ
000 から 999 まで 0.1秒刻みでカウントアップする 10秒タイマーです。
スケッチには、各セグメントを1つづつ順番に点灯するモードも含まれています。

参考
Making Printed Circuit Boards with the Fab Lab
FabLabでプリント基板を作る方法
EAGLE ulp generates wrong scale


Eagle と Modela を使って電子基板を作る その2


20141019_pcb_test

概要
Eagle は電子基板を作成する CAD ソフトです。
Modela は、Roland 社の切削加工機です。
その1 では、Modela でどんな加工ができるのか味見してみました。
今回は、もう少し実用的なものにしてみました。
題材は、3x3 LED マトリックス の Arduino シールドです。

EagleデータとArduinoスケッチは GitHub で公開しています。

全体の流れ
Modela の加工は、 (1)配線 (2)穴あけ (3)外形 という異なるエンドミルを使う3つのステップがありますが。
今回は、穴あけに適切なエンドミルがないので、配線と同時に穴の位置を切削して、あとでミニドリルで穴をあける手順にしました。
また、外形を加工しようとしたところ、原点がずれたようで違うところを切削しようとしたので、外形の加工は諦めて、あとでアクリルカッタで切りました。

Eagle 側の作業
(1) 回路図(sch)とボード図(brd)を作成するところは、ほぼ同じです。
配線を太くしたり、PADを大きくしたり、大きいドリル穴を追加します。
今回は、配線が交わるところがあるので、一部は表面になっています。
基板で配線されるのは、裏面だけなので、表面は手配線します。
20141019_pcb_eagle_sch 20141019_pcb_eagle_brd

(2) 配線とドリル穴のデータを bitimap で出力します。
このとき、左右反転(Mirror) して、白黒画像にします。
20141019_pcb_eagle_pat 20141019_pcb_eagle_drill

(3) Eagle が exportする画像は png形式なので、BMP形式に変換します。

Dr.Engrave 側の作業

1. 配線の加工
(1) データの作成
配線の画像を import します。
グリッドを表示して、外形に合わせて、リサイズします。
近接している PAD の間に、ハンダブリッジしないように、長方形を追加します。
20141019_pcb_engrave_pat

(3) Modelra に 1/64 のエンドミルをつけます。
(4) 加工を指示します。

2. 穴あけの加工
(1) データの作成
穴あけの画像を import します。
外形に合わせて、リサイズします。
外形を削除します。
穴の大きさを 0.1 mmに変更します。
左下は、切削できなかったところあったので、もう一度切削にするために、配線パターンを残しています。
20141019_pcb_engrave_drill

(2) エンドミルはそのままで、加工を指示します。

3. 外形の加工
(1) 配線と穴あけの画像から、配線と穴あけの削除して、外形のみにします。
(2) Modelra を 1/32 のエンドミルに変えます。
(3) 加工を指示します。
(4) 問題発生
原点がずれたようで違うところを切削しようとしたので、外形の加工は諦めて、すぐに止めました。

穴あけ
(1) 基板を Modela からはずします。
(2) 机に基板を固定します。
(3) ミニドリルに 0.8mm のドリル歯をつけて、穴をあけます。
LEDや抵抗にリード線には、この大きさでぴったりです。
ピンヘッダには、少し小さいので、穴を大きくなるようにグルグリします。
手操作のため、ちょっと穴に位置がずれて、ピンヘッダがまっすぐ入らないところもありますが、気にしないことに。
20141019_pcb_drill

外形の切削
(1) 基板をアクリルカッタで切ります。
結構大変だった上に。
途中まで切って、板を割ったところ、断面がギザギザになってしまった。(^^;
(2) 基板の側面を、やすりで磨きます。
20141019_pcb_outline

基板の研磨
(1) 基板の縁を平ヤスリで削ります。
(2) 基板の銅箔面を荒い紙ヤスリで磨いて、表面のギザギザをとります。
(3) 銅箔面を研磨剤で磨いて、ハンダが乗りやすいように、表面を滑らかにします。
20141019_pcb_board

ハンダ付け
(1) 部品をつけて、裏面をハンダ付けします。
(2) 本来の手順であれば、表面の配線は、部品をつけるときに同時に行うべきですが。
忘れてしまったので、あとから空中配線しました。(^^;
回路図とボード図にゼロオームの抵抗をダミーで置くなど、工夫が必要です。
20141019_pcb_rear 20141019_pcb_front

動作確認
(1) Arduino に今回作った基板を載せます。
(2) Arduino にスケッチを書き込みます。
(3) 全てのLEDが点灯すれば、OKです。

課題
(1) エンドミルを交換するため、電源を切ると、Modela の原点がずれます。
(2) 配線の加工で、切削できないところがありました。
20141019_pcb_milling_2


Eagle と Modela を使って電子基板を作る その1


20141012modela_pcb_arduino

Eagle は電子基板を作成する CAD ソフトです。

Roland Modela MDX-15 は、切削加工機です。
Modela には、 Modela Player と Dr.Engrave が付属してます。
Modela Player は3次元データ用です。
Dr.Engrave は2次元データ用です。

概要
今回は、Dr.Engrave を使用しました。
Dr.Engrave が取り込めるのは、BMP形式とDXF形式の画像データです。
BMP形式の画像データから輪郭を抽出します。
DXF形式では、輪郭でなく中心線になってしまい、うまくいきませんでした。
取り込んだ画像データには、大きさの情報がありません。
あらかじめ、外形などを大きさの分かる画像を用意します。
また、小さな図形だと、うまく輪郭を抽出できません。
あらかじめ 、大きめの図形に変換しておきます。

Eagle 側の作業
今回は、LEDと抵抗のみというシンプルな電子基板を作成します。
参考 Eagle を試す

配線と穴あけの2つの画像を作成します。

1. 配線の画像
配線 (top) の幅を、0.04インチ にします。
配線層にPADを追加します。半径 0.02インチ、幅 0.04インチ。
外形 (demenssion) を表示します。
白黒画像で export します。

2. 穴あけの画像。
ホール層 (hole) にドリル穴を追加します。半径 0.01インチ。
白黒画像で export します。

20141012modela_eagle_board 20141012modela_eagle_img_pat 20141012modela_eagle_img_drill

Eagle が exportする画像は png形式なので、BMP形式に変換します。

Modela 側の作業
捨て板を敷いて、基板を固定します。
捨て板には、100均の発砲ボードを使用しました。
固定には、両面テープを使用しました。
外形を切り出したときに、はずれないように、加工する箇所にも両面テープを貼ります。

Dr.Engrave 側の作業

1. 配線の加工
配線の画像を import します。
この時点では、大きさが加工領域になっています。
グリッドを表示して、外形に合わせて、リサイズします。
外形が2重になっているので、1つ削除します。
20141012modela_engrave_pat_bmp20141012modela_engrave_pat_resize20141012modela_engrave_pat_final_

Modela のパラメータを指定します。
「塗り潰をする」を解除する。
「Z切削ピッチ」を0にする。
これを忘れると、加工がいままでも終わりません。
20141012modela_engrave_pat_print

Modela に 1/64 のエンドミルを設置します。
エンドミルの高さを、基板の上面に合わせます。
OK を押して、加工します。
20141012modela_board_milling

2. 穴あけの加工
穴あけの画像を import します。
外形に合わせて、リサイズします。
外形を削除します。
穴の大きさを 0.1 mmに変更します。
20141012modela_engrave_drill_resize20141012modela_engrave_drill_hole20141012modela_engrave_drill_final

Modela に 1/32 のエンドミルを設置します。
手持ちに 1/32 がなかったので、1/16 を使用しました。
穴が大きくなって、半田付けで苦戦しました。

Dr. Engrave から、深さ方向の設定が、うまくいかなかったので。
エンドミルの高さを、基板の下面に合わせて。
強引に穴あけしました。
20141012modela_board_drill

3. 外形の加工
穴あけと同様に加工します。

基板の組み立て
切り出した基板の側面を、やすりで磨きます。
部品をつけて、半田付けします。

20141012modela_board_bare20141012modela_board_front20141012modela_board_rear

留意点
(1) 1/32 のエンドミルで穴あけしたところ、穴が大きくなって、部品が固定されず、苦戦しました。
(2) 1/64 のエンドミルで切削したところ、配線領域と残りの部分との余裕が 0.5mm くらいしかなく、半田ブリッジを起こしやすい。

動作確認
1. 電池をつないで、点灯するか、確認します。

2. Arduino につないで、点滅させます。
切削した面が、半田面になるので、裏表が逆になった。
作った基板が、Arduino の外側になってしまいました。

20141012modela_pcb_test20141012modela_pcb_arduino

まとめ
(1) 加工には 1/64 と 1/32 のエンドミルが必要です。
(2) 加工面は、裏側の半田面になるので、画像の表裏の反転が必要です。
(3) 配線領域と残りの部分との余裕が少ないので、半田ブリッジを起こしやすい。
PADを大きめにするとか、外側にガード領域を作るとか、工夫が必要です。

参考
Dr.Engrave で加工した例