はじめに
こんにちは、じゃにです.
今回は初めてJLCPCBにPCBAを発注したのでやり方などをまとめます!
※この記事はJLCPCBの提供でお送りします.
WARNING
筆者はロボコン時代は機械設計を担当しており、回路関係に関しては素人です.
記事内の回路構成や、コードを用いて発生した損害について、筆者は一切の責任を負いません.
JLCPCBについて
JLCPCBは、中国に本社がある基板製造の会社です.
すでに多くの人が知っているかもしれませんが、100mm×100mm以下の2層基板であれば、2ドルで製造していただけるなどとても安く高品質な基板を手に入れることができます.
基板以外にも、JLC3DP,JLCCNC(CNC加工、板金加工)などの機械加工サービスも提供されています.
私も高専時代から基板を何度も発注してきましたが、今回初めてPCBAを発注しました.
PCBAとは
PCBAは、Printed Circuit Board Assembly(プリント基板実装)の略です.
JLCPCBでは、作成してもらった基板に部品を実装した状態で届けてもらうことができます!
もちろん基板全部の部品でなく一部のみの実装も可能です.
今回は、片面のチップ抵抗やチップLEDをエコノミックPCBAで実装してもらいました.
今回発注した基板


メインの基板と、XIAO 2350のブレークアウト基板を発注しました.
メインの基板について、表面の表面実装部品(チップ抵抗,LED,スイッチ,CANトランシーバ)を実装していただきました.
実装した基板
今回作成した基板は、XIAO RP2350を使用して、CAN,i2c,UARTなどをだせるようにしたものです.基板上には、駆動電源やCANをデイジーチェーンできるようにXT30(2+2)コネクタを2個載せています.また、駆動電源から制御電源を生成できるようにDCDCコンバータを載せました.
最初は、RP2040-zeroや、RP2040/2350のチップを直接実装しようと思っていましたが、RP2040-zeroの電源回路まわりが都合悪かったり(制御電源をUSBから供給するかバッテリーから降圧して供給するかの切り替え回路が追加しにくかった)、部品の実装を考えてXIAO RP2350を載せることにしました.
また、この基板自体にXIAO RP2350を直接実装するのではなく、後記する理由でRP2350 xiao自体のブレークアウト基板を挟んで接続しています.
↓ XIAO 2350
基板詳細
回路図
機能
- CANバス ×1
- ユーザーLED ×2
- ユーザーボタン ×1
- 7セグメントLED
- DCDCコンバータにより駆動電源から制御電源供給
- XT30(2+2)によるデイジーチェーン接続
- UART,i2C 各1系統
- i2cプルアップ有効 / 無効切り替えスイッチ
- CAN通信終端抵抗有効 / 無効切り替えスイッチ
- 通信用XAコネクタ電源の3.3V / 5V切り替えスイッチ
CAN通信の終端抵抗の有効 / 無効を切り替えるスイッチが2回路だったので、スイッチを切り替えたら連動してLEDが点灯するようにしました.
これにより基板を見た際に終端抵抗が有効になっているか無効になっているかがわかりやすくなりました.

基板図
PCBAの発注
JLCPCB Toolsについて(kicad内での操作)
JLCPCB Toolsの導入については以下の記事を参考にしました.
JLCPCB Toolsの使い方については多くの方が書いていますが、ここでも書きます.
1.まず下の画像の黄色い矢印の先にあるアイコンを押して起動します.

2.アイコンをクリックすると以下のようにポップアップでJLCPCB Toolsの画面が開きます.

3.実装する部品の型番を登録する
今回はLEDを例に部品を選択していきます.
①型番を登録する部品を選択

②Select alike partsをクリックすると、以下のように同じ属性を持つ部品(抵抗の場合は同じ抵抗値の抵抗など)をまとめて選択することができます.

③Assign LCSC numberをクリックします.

④Assign LCSC numberをクリックすると以下のような画面になります.

画面下部に、部品の種類やパッケージサイズから検索される一覧が提示されます.そのなかで自分が使いたい部品を選択してクリックします.
⑤Select partをクリックすると①で選んだ部品にその型番を適用することができます.

⑥割り当て後の画面は以下のようになります.

その他の部品についても型番の割り当てを行ったら発注に進みます.
画像を見てもわかると思うのですが、JLCPCB Toolsないでチップ抵抗の型番指定がうまくできなかった(使うつもりの部品が出てこなかった)ので指定していません.
設計段階からいかのサイトで部品の型番を調べながら、使いたい部品がPCBAの部品としてあるかを確認しながら設計を進めると発注段階で困ったりすることがなくていいと思います.
Parts TypeがBasicかPromotional Extendedの部品なら、PCBAの際にsetup feeがかからないためおすすめです.(Extendedの部品だと1種類につきExtended components feeとして$3が加算されます)
⑦Generateをクリックすると、BOMとCPLが生成されます.
また、発注に必要なガーバーファイルの.zipも同時に生成されます.

JLCPCB内での操作
BOM,CPL,gerberの準備ができたら発注に進みます.
①JLCPCBの発注ページにアクセス

②ガーバーファイルのアップロード

ガーバーファイルを追加をクリックして、先ほど生成した.zipをアップロードします.

ガーバーファイルをアップロードしたら以下のように基板のプレビューが表示されます.

オンラインPCB見積もりの項目は基本的にいじらなくて大丈夫です.基板の色などを好みのものに変更してください(緑以外は、緑の場合に比べて+2日かかります).
③PCBAの設定
PCB組み立ての段の右端にあるスライダーをクリックすると、PCBAの設定画面が開きます.
ここで部品を実装する面や、実装する基板の枚数を選択します.

PCBAタイプとしてエコノミックと標準があります.部品実装が片面 / 両面の違いや、厚み・レイヤーの制限などが異なります.詳しくは以下のページで確認してください.
次へをクリックします.
④BOM,CPLファイルのアップロード
JLCPCB Toolsで生成したBOM,CPLファイルをアップロードします.

生成したBOM,CPLファイルはファイル名の頭にそれぞれBOM,CPLとついているのでどれをアップロードするかなどで迷うことはないと思います.

BOMとCPLを処理するをクリックします.
今回PCBAで実装しない部品について型番を割り当ててなかったのでエラーが出ていますが、無視して次に進みます.

部品一覧の画面に切り替わります.

この鉛筆ボタンを押すことで部品の情報を編集することができます.

適宜部品の情報を編集します.

JLCPCB部品番号を空欄にすることでその部品を実装しないようにできます.
さきほども載せましたが、以下のサイトで部品を調べてJLCPCB部品番号の欄に入力することで適用できます.JLCPCB Toolsでうまく適用できなかったチップ抵抗などについてはこの段階で選択しました.
右のほうの列の選択の欄にチェックマークを入れることで実装するように選択できます.

画面下部の次へをクリックします.

型番を割り当てていない部品があるのでエラーが出ていますが配置しないを選択して無視します.

⑤部品配置の調整
BOMやCPLの情報をもとに部品が配置され、そのプレビューが表示されます.

拡大すると以下のような感じです.
IC付近にあるピンクの点が1番ピン、LEDには+ -で極性が書かれています.
極性がある部品の向きが違ったまま実装されてしまうとうまく動かない基板が出来上がってしまうので、ここで向きをそろえることが必要です.

部品をクリックで選択して、右クリックすると回転する角度を選べます.

すべての部品の角度、極性をしっかりチェックしたらOKです.
すべての向きを揃えたら次へをクリックします.

見積もり&発注画面に切り替わります

カートに保存をクリックしたらカートに追加されます.
届いた基板の様子
基板が到着した時はこんな感じの梱包です.いつも通りの青い封筒の中に青い段ボールで入って届きました.




疑似的に端面スルーホールした部分が心配でしたが、少しバリがある程度ではんだ付けはできそうでした.
はんだ付けして動かしてみた
PCBAしてもらった以外の部品を実装しました.
XIAO 2350のブレークアウトは、ホットプレートの上に載せてはんだを溶かして、その上にXIAO 2350を載せて実装しました.
↓予備はんだしたもの(一番最初に実装したやつではんだの量が多い)

↓ホットプレートでXIAO 2350をはんだ付け

↓実装済みのXIAO 2350ブレークアウト基板

この状態で裏のピンが導通しているかをチェックしないと、XIAO 2350裏面のパッドのはんだ付けがうまくいってない場合に導通していない場合があります(一敗).
当初は以下のようなフットプリントで一枚の基板で実装しようと思ってましたが、大きいスロットの穴があることでその裏面に部品を配置できなくなったりするデメリットがあったので、ブレークアウト基板を1枚挟むことにしました.

ブレークアウト基板は厚さ1mmで発注しており、はんだ付けも問題なかったです.

すべての部品を実装してCAN通信の試験を行おうとしましたがうまく動きませんでした.
CAN通信がうまくできていなかったことから、(研究室の先輩にも見てもらいながら)基板をチェックしたところ、以下の画像のように黄緑の線で囲ったGNDベタが島になっていました.CANトランシーバのGNDがこのGNDに接続されていたためうまく動きませんでした.
冒頭の実装済みの画像のようにGNDをジャンパで接続することで、想定通りの動作をできるようになりました.

終わりに
今回初めてJLCPCBのPCBAを利用しましたが、思っていたよりも簡単に発注できて感動しました.
これまで届いた基板にチップ部品を実装するのに時間をとられていましたが、チップ部品がないだけでも実装がかなり楽になることがわかりました.
今回設計した基板はミスってCANバスを1個しか生やしてなくて,せっかくXT30(2+2)で基板自体をデイジーチェーン接続できるようにしているのに使い勝手が悪くなってしまったので,今後CANバスを複数生やしたバージョンの基板も作成しようと思っています.
今後も利用していきたいと思います!










