以前、JLCPCBの実装サービスを利用する方法をこちらの記事にまとめた。
この記事の中では、部品の向きをチェックし、正しくないものは向きを修正するようにエンジニアに依頼すればOKのように書いた。 たしかにそれでやってもらえるのだけど、毎回、チェックして依頼するのは面倒。ちょっと不安でもあるし。
部品配置リスト(CPLファイル)を修正して向きを正しくしておけば上のような依頼は不要。だけど、そのファイルを修正するのが面倒だし間違ってしまう可能性もある(部品数が多いとなおさら)。
ここで(ようやく)気づいた。向きが正しくならないのは、KiCadのライブラリとJLCPCBが想定しているフットプリントの向き(0度の基準)が一致していないからだろう。ならば、ライブラリを修正してJLCPCBで正しく認識されるようにすれば解決するはず。CPLファイルの修正なんて不要だし、エンジニアへの依頼もいらない。
というこで、以下、その手順。
基板設計
まずは普通に回路図を入力し、基板設計を行う。回路図入力の段階で具体的な部品決めが必要なのは先の記事の通り。なお、下の図の3D表示は表面実装部品だけを表示させている。



JLCPCBの実装サービスに必要なファイルを作る(ガーバ、BOM、CPL)。



これで、JLCPCBの実装サービスに登録すると、部品配置チェックの際にこうなる。

これが問題。Q1(トランジスタ)とU1(アンプIC)の向きが正しくない。Q1の方はわかりにくいが、180度回転している。
フットプリント修正(ライブラリ)
ここからが本題。上で見たように、この基板ではトランジスタとICの向きが間違っている。そこで、これらのフットプリントを修正する。
フットプリントライブラリからの読出し
フットプリントエディタを立ち上げ、対象のフットプリントを開く。

回転
180度ずれているので、これを180度回す。まず、全選択(Ctrl+A)。

右クリックでメニューを開き「左回転」。または、単に「R」。これを二回実行。もちろん、「右回転」を二回でもOK。

反転した。これでいいのだけど、ついでなので、「REF**」などの配置を元の位置に移動しておく。

ライブラリに登録
元のライブラリの方はそのまま残しておき、別に新しくライブラリを作ってそちらに登録する(そもそも、元のライブラリは読出し専用なので書き込めない)。ということで、「新規ライブラリー…」を選択。

グローバルなライブラリにするか、このプロジェクト専用にするかを決める。他の基板でも使いたいので、今回は「グローバル」にしておく。

保存するフォルダとライブラリ名を決める。今回は「JLC_PCBA」としてみた。

これで、フットプリントの入れ物(ライブラリ)ができたので、そこに保存する。



新たに作った「JLC_PCBA」ライブラリに登録された。
3Dモデルも回転
フットプリントは回転できたけど、これだけでは終らない。3Dビューワで表示させてみると、3Dモデルは元のまま。

フットプリントと180度ずれている。

ということで、3Dモデルも回転させる。
「フットプリントのプロパティ…」を開く。

3Dモデルタブを選択。


拡大表示。

「回転」の「Z」軸を「180度」に設定する(数字を直接入力してもいいけど、三角印を二回クリックすると180度に設定されるのでその方が簡単)。
これでOKなので、右下の「OK」ボタンをクリックする。

念のため、3Dビューワでも確認してみる。

今度は大丈夫。
この状態で保存。

これでトランジスタは完了。
おさらい
おさらいを兼ねてICのフットプリントも同様に回転させてライブラリに保存する。
フットプリントエディタで目的のフットプリントを開く。

これを回転させるのだけど、問題は回転角度。元の絵は上の状態で、これを反時計回りに90度回して実装した。それをJLCPCBの部品配置チェック画面で見たら反時計回りに90度だけ余計に回っていた。ということは、最初から反時計回りに90度回しておけば、基板エディタでは回さずにそのまま実装する(0度)ことになるはず。
ということで、「Ctrl+A」で全選択し、「R」で回転(反時計回りに90度)。「REF**」などの文字位置も調整。

ライブラリに保存。先程作った「JLC_PCBA」ライブラリに入れる。

追加された。

3Dモデルの向きも調整する。「フットプリントのプロパティ…」を開く。

「3Dモデル」タブを選択。

Z軸に対して回転させてフットプリントに合わせる。

「OK」で閉じる。

3Dビューワでも確認しておく。

大丈夫なので、「保存」。

フットプリントライブラリの追加(確認)
新しく作ったフットプリントライブラリ(JLC_PCBA)を使用するように設定する。
「フットプリントライブラリーを管理…」を開く。

ここに新しいライブラリを追加しようと思ったら、すでに追加されてアクティブ状態になっていた(一番下の行)。

したがって、ここでは確認するだけで閉じてOK。他のプロジェクトでこのライブラリを使用する場合には、この画面で追加登録する。
基板修正
フットプリント差替え
当該部品のフットプリントを新しく作ったものに差し替える。

回路図上で対象のシンボルのプロパティから変更しても良いし、「フットプリント割り当てツール」を開いてそちらで変更しても良い。


下は、「フットプリント割り当てツール」で置き換えた様子。今回は対象部品がそれぞれ一つずつ(Q1とU1)しかないけれど、もし、同じ部品があればそれらも一緒に変更する(複数あるなら、回路図上で一つずつ変更するよりもこちらの画面でまとめて変更するほうが手っ取り早い)。変更が済んだら「OK」で閉じる。

部品の向き修正
基板エディタを開いて、部品の変更を反映する。


変更した部品を適切な向きに直す。

単純に回転させるだけでOKだった。3Dでもチェック。

期待通り。
JLCPCBにアップロード
これで部品配置リスト(CPLファイル)を作って、改めてJLCPCBのサイトで基板製造と部品実装の手続きを進める。

今度は問題なく、Q1もU1も正しい向きになっている。あとは発注すればOK(のはず)。
なお、前回進めた手続きを呼び出してCPLファイルだけ差し替えたのでは上手くいかなかった(部品の配置がでたらめになった)。改めて一から発注手続きを行ったら問題なかった。この原因は不明(追求するより、手続きをやり直したほうが早い)。
まとめ
KiCadで設計した基板でJLCPCBの部品実装サービスを利用するときに部品の向きの修正が面倒だと思っていたのだけど、KiCadのフットプリントライブラリをJLCPCBの基準に合わせたものにしておけば良いことに気づき、それをやってみた。
これ以降は修正したライブラリのフットプリントを使えばよいだけなので簡単。
この方法で作った基板が届いた。結果はOK。
コメント