今回、ほとんどスルーホール部品の緩い2層基板を作ることになったので、KiCadの自動配線(FreeRouting)で遊んでみました。
今回使用したKiCadはVer4.0.7です。
今回作る基板
前回の基板と機能は同じで、9軸と気圧センサ、TWE-lite、MicroSD、あとサーボモータとGPSとのコネクタあたりが載っています。
Nucleoに乗せて使う予定ですが、GPS、TWE-lite、MicroSDが載っているシールドは重宝しそうなので、レベル変換基板も載せてArduino対応にしています。(図で8ピンと20ピンの3DモデルICになっているのがそれ)
ちなみに、ライブラリについては、秋月の変換モジュールはライブラリを自作し、TWE-liteとMicorSDはネットから落としましたが、その他のライブラリはKiCad付属で済みました。最近のKiCadはライブラリがかなり充実しているようです。
自動配線の手順
1、基板外形の上に部品を配置
白線(配線すべき線)があまり交差しないように配置していきます。
2、適切にデザインルールを設定
今回は、elecrowに発注するので、下の図のようにグローバルデザインルールを設定しました。
3、ネットクラスを設定
elecrowによると、配線幅とクリアランスはそれぞれ6mil(0.1524mm)ですが、8mil(0.2032mm)推奨とのことですので、デフォルトはそれぞれ0.2mmずつにしました。ビア径は最小設定で行きます。
ICの電源線をPowerとして、配線幅を0.5mm、サーボ駆動用の電源を1mm幅に設定しました。
4、FreeRoutingが読み込むファイルの書き出し
自動配線ソフト、FreeRoutingが読み込める形式でファイルを書き出します。
Pcbnew(パターン編集画面)から道路工事しそうなひし形に↑↓が書かれているボタンをクリック、「現在のボードを"Spacctra DSN"ファイルへエクスポート」をクリックすると、DSNファイルが書き出せます。
5、日本語文字の削除
2バイト文字は読み込みエラーになるので、書き出したDSNファイルをテキストエディタで開いて日本語文字を削除します。(今回は、ファイルパスのみ。)
6、GitHubから自動配線ソフト"Freerouting"をダウンロード
「github - freerouting」
https://github.com/freerouting/freerouting
7、Freerouting.exeを起動
ダウンロードして解凍したら"freerouting-master\binaries"にFreeRouting.exeがあるので起動します。
8、"Open Your Own Design"をクリックして、書き出したDSNを読み込む。
9、自動配線開始
Autorouterをクリックして、配線が終わるまで待ちます。
最初の1分ぐらいでほとんどの配線が終わって、そこから2時間ほど進まなかったので、未配線を残したまま止めました。
10、配線が終了したら、File→Export Specctra Session Fileで結果を保存します。
11、KiCadへの書き戻し
Pcbnew(パターン編集画面)に戻ってひし形ボタンをクリック、「スペクトラ セッション ファイル(*.ses)のバックインポート」をクリックして、SESファイルを読み込みます。
結線情報データを再構築しますか?のダイアログは"はい"をクリックします。
12、KiCadに自動配線したパターンが適用される
13、調整
※調整内容
・なんでお前そんな配線したん?って配線の引き直し(↓参照)
・両面にGNDベタパターンを配置
・アンテナパターンになりそうな細いベタの削除(配線禁止ゾーン・ベタのみ)
・GNDビアで両面GNDベタの補強
参考:「KiCadでベタGNDにたくさんviaを打つ」
http://idken.net/posts/2017-04-19-kicad_via/
・シルク印刷の調整
・急に機能を追加したくなって、ピンソケット2ピンを追加
なんでお前そんな配線したん?って配線の引き直し作業中
Arduinoシールドは3倍のサイズで印刷すると、ちょうどA4におさまるサイズのようです。画面で見るのと、紙でチェックを入れるのでは作業性がかなり違います。
結果
- 電源ラインは信号線に比べて太く設定したことにより、長く配線を伸ばすコストが高いのか、かなり最初にほぼ最短ルートで決定していました。デザインルールをうまく使うと、電源ラインを引かなくても欲しい配線で引かれるかもしれません。
- 今回は、特にケアをする信号線がなかったので、特に何も引かずにFreeRoutingへエクスポートしましたが、高速な信号線やアナログの信号線は先に配線したほうが良いでしょう。
- 鋭角は回避する自動配線のようです。ただし、直角に曲げるのは容赦なく使ってくるので、その点で修正はけっこうあります。見た目はあまりよくないですが、修正しなくても一応使える配線は出てきます。
- 今回は、裏面をほとんど使わない配置でしたが、両面が混むような配置では自動配線はきれいに動いてくれないかもしれません。
結論
今回程度の回路規模なら、KiCadの自動配線は結構使える。