Quadcept で PCBE のガーバーデータを読み込む

# 1. はじめに
基板アートワーク用 CAD である PCBE は、1996年に公開され、
現在もアップデートされている息の長いフリーウェアです。

回路図 CAD とネットリストで連携するのは難しいですが、
簡単なパターン設計には非常に有用で、方眼紙に鉛筆で書くような手軽さで
基板設計ができます。

以前から PCBE で作成していた基板データが多数あり、
Quadcept で外形やパターンの流用を行うため、
ガーバーデータで Quadcept に受け渡しを行いたいと思います。

PCBE のインストーラに、サンプルデザインとして含まれている Sample-3 を例題にします。

__PCBE は最新バージョン(0.63.13 以降)を使用してください。__
ガーバー出力の書式が変更されて、Quadcept で直接読めるようになりました。


# 2. 使用環境
Windows 10 Pro 64bit (21H2)
Quadcept Professional 10.6.4.0
PCBE 0.63.13

# 3. PCBE でガーバーデータの出力

PCBE で Sample-3 を開いたら、メニューバーから
ファイル - ガーバー出力
を選択します。

![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/955220/0e19383a-60cb-e065-6ccf-0ca15dc3b7ba.png)


ガーバー出力設定はデフォルトのままで良いです。

出力レイヤとしてチェックを入れるのは、

```
1: パターン-Ａ
2: パターン-Ｂ
3: シルク-Ａ
4: シルク-Ｂ
5: レジスト-Ａ
6: レジスト-Ｂ
7: 外形
8: 孔
42: 孔(NO-TH)
```

になります。

![2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/955220/c569ff5f-adb9-b8bd-41be-4a3a357ce4be.png)
![3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/955220/6931e3e3-2112-25be-f648-30206a5f814c.png)


# 4. ガーバーデータのリネーム

そのままだと出力ファイル名がわかりづらいので、
バッチファイルで処理してわかりやすくします。

バッチファイルは、Kuni/JA1UZG 氏が公開されているものに手を加えています。
http://blog1.bakw.sub.jp/?eid=1088622


```0_rename.bat
REM PCBE to Fusion PCB setup

 SET PCBNAME=Sample-3

 REM Fusion PCB用旧ファイル削除
for %%a in (GTL GBL GTS GBS GTO GBO TXT GRB GML) do if exist %PCBNAME%.%%a.gbr del %PCBNAME%.%%a.gbr
 REM Fusion PCB用ドリルデータ削除
for %%a in (_TH _NTH) do if exist %PCBNAME%%%a.TXT.drl del %PCBNAME%%%a.TXT.drl
 REM PCBEの作製した旧ファイル残骸削除
for %%a in (gout.lst hout.lst hole.hol) do if exist %%a del %%a


 REM Top layer 部品面 xx.GTL
 REN pattern-A.grb %PCBNAME%.GTL.gbr

 REM Bottom layer ハンダ面 xx.GBL
 REN pattern-B.grb %PCBNAME%.GBL.gbr

 REM Solder Stop Mask top 部品面のレジスト層 xx.GTS
 REN resist-A.grb %PCBNAME%.GTS.gbr

 REM Solder Stop Mask Bottom ハンダ面のレジスト層 xx.GBS
 REN resist-B.grb %PCBNAME%.GBS.gbr

 REM Silk Top 部品面シルク xx.GTO
 REN silk-A.grb %PCBNAME%.GTO.gbr

 REM Silk Bottom ハンダ面のシルク xx.GBO
 REN silk-B.grb %PCBNAME%.GBO.gbr

 REM 外形 xx.GML
 REN board.grb %PCBNAME%.GML.gbr

 REM NC Drill NCドリル情報(スルーホール有り) xx_TH.TXT
 REN hole.grb %PCBNAME%_TH.TXT.drl

 REM NC Drill NC ドリル情報(スルーホール無し) xx_NTH.TXT
 REN noth-hole.grb %PCBNAME%_NTH.TXT.drl

 SET PCBNAME=

```

# 5. リネーム後のレイヤ内容

リネーム後の拡張子が示すレイヤは次の通りです。

![4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/955220/378b403a-7620-0886-99e2-dd5d43e78ef3.png)

```
GBL.gbr: ボトム面 銅箔
GBO.gbr: ボトム面 シルク
GBS.gbr: ボトム面 ソルダマスク(レジスト)
GML.gbr: 外形
GTL.gbr: トップ面 銅箔
GTO.gbr: トップ面 シルク
GTS.gbr: トップ面 ソルダマスク(レジスト)
NTH.TXT.drl: 非スルーホール ドリル
TH.TXT.drl: スルーホール ドリル
```

# 6. Quadcept で読み込み
Quadcept PCB Designer を開いたら、ファイル - 入力 - ガーバー/NC ドリル
を選択して、.gbr と .drl ファイルを全て読み込みます。

![5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/955220/1dec08cc-d7de-5df2-66a2-403a49280d0c.png)


ガーバー入力のダイアログで、該当する層と層種類に設定して OK を押します。

ドリルデータについては、ガーバー入力で System/Drill 層に読み込む方法が無いため、
とりあえず Other/Keepout と Oher/DesignRule層に読み込みます。

![6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/955220/4ce799a8-2426-7802-1f7f-c1599e2aeced.png)


# 7. 結果

正常に読み込むことができました。
ネットリストと連携されていないので、フリーハンドで各層に描画したのと同じ状態です。

![7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/955220/1a5940f0-c1ae-461e-72cf-7e7087a373da.png)


PCBE のベタは多角形ではなく、閉鎖図形内をラインで埋める方式です。
PCBE 側でベタを解除してから Quadcept に持ち込んだ方が、
分かりやすいかもしれないですね。