2018年7月23日月曜日

先日発注した基板が、土曜日に発送されていたようです。


17日発注なので、 今回は5日で発送ですね。はやか~

明日か明後日には受け取れると思うので、楽しみですな。

10枚で発注したけどelecrowガチャ、いくつになってるかな・・・

2018年7月17日火曜日

KiCadの自動配線

今回、ほとんどスルーホール部品の緩い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の自動配線は結構使える。

2018年7月15日日曜日

KiCadでビアのプロパティを一括で変更する方法

久しぶりにKiCadを開いてプリント基板を作ったら,デザインルールのビアの設定を忘れていて,全部のビアの直径が 0.0048mmだけ大きかったので,テキストエディタで直します.


4層基板であること以外はいつも通りだったのですが,ビアのデザインルールの設定を忘れていました.




elecrowに発注しようと思っていたのですが,ビア径は0.6048mm以上でした.

「PCBサービスのQ&A」, elecrow,
<https://www.elecrow.com/wiki/index.php?title=Q%26A_for_PCB_service>より

6milは0.1524mmですので,6mil + 0.3mm + 6mil = 0.6048mmでビア直径は0.6048mmです.(#ヤードポンド法死すべし慈悲はない
さらに,ドリル直径も0.4mmに設定していますので,0.3mmに変える必要があります.

おそらく,加工誤差の範囲でしょうから,これで出しても,なにも言われないでしょうけど・・・(変えずに作って出した記憶ありますし)
気付いてしまったので,直しておきたい.けど,手作業で変えるにも55個ビアがあるので,めんどくさいな・・・と.

なんか方法がないかなと思って,とりあえずボード図のファイルをテキストファイルで読み込んでみました.


ビアらしき文があったので,一度KiCadを閉じて適当に置き換えてみました.


KiCadで再度開いてみると,ビアがちゃんと変更できてました.


無事にDRCも通ったので問題ないようです.引き直しにならなくて良かった!

以上が,ビアの一括変換の方法です.文字の大きさはKiCadの機能で一括で変更できますが,ビアを打ち間違える機能は無いようです.まぁ,需要ないですしね.

結論:引く前によくよくデザインルールは検討しましょう.