ドローン制作 2-5: PCB の設計

Electronics

本記事ではドローンの PCB を設計していきます。過去記事は以下。

回路図

最終的に PCB レイアウトは以下のようになりました。以下の節で設計のポイント等について解説していきます。

PCB 配線
PCB 配線(表面)
PCB 配線(裏面)
3D Viewer (表面)
3D Viewer (裏面)

基板概形

基板概形は FreeCAD で設計しました。真ん中と四隅の穴は基板とドローンのフレームを固定するために作りました。最初真ん中の 4 つで固定でしようと思ったのですが、そこで固定するとコネクタの通り道がないことに気づき、四隅にもネジ穴を作っています。真ん中の 4 つの穴は消しても良かったのですが、軽量化のため残しておきました。

基板概形
Model

ポイントは以下のとおりです。

  • 基板全体直径は 60mm とした。前回は 45mm x 45mm の正方形だった。
  • ネジは M3 を使う想定でネジ穴直径は 3.2mm としている(半径 1.6mm)。
  • ネジ穴は回路部品と干渉しないように配置する。
  • 四隅のネジ穴は slot で概形を作った。
  • 四隅のネジ穴の外径と内径の半径差は 1mm とした。
  • PolarPattern で四隅にネジ穴を配置する。
最初に設計したネジ穴(軽量化のため残した)
四隅のネジ穴
slot を四隅のネジ穴に使う
PolarPattern で四隅に配置

こちらで説明した方法で、設計した基板概形を Edge.Cuts に適用しています。

基板概形を .dxf ファイルから import する

ポイント

以下の記事で回路設計のポイントに関して述べています。

今回のドローンの PCB 設計では以下のことに気をつけます。

  • 基板の概形は丸型とする(FreeCAD で設計)。
  • ラッツネスト(ピン同士の配線)がなるべく交差しないように部品を設置する。
  • 配線はパッドに対して垂直に入るようにする。
  • MT3608 に関して
    • ノイズ低減のため、入出力コンデンサは IC の近くに配置されていて GND ベタにつながっている必要がある。
    • フィードバック回路の部品(抵抗・コンデンサ等)をできるだけ IC の近くに配置し、ノイズ源(インダクタ・MOSFET・IMU・高速クロック IC 等)を遠くに配置すべき。
  • IMU は基板の真ん中にくるよう調整する。
  • 表面も裏面も GND ベタで囲う。
  • スイッチを押せるように部品を配置する。
  • PH 2.0 コネクタに外からケーブルを差し込めるように部品を配置する。
  • 電源線にはなるべくビアは使わず、なるべく太く短めの配線とする。
  • モータに流れる電流は最大 2A と仮定して、0.8mm の太さの Trace を使う。それ以外は 500mA 以下の電流が流れると仮定し、0.15mm の太さの Trace を使う(厳密には 0.12mm 以上であれば良いが少し太めの線を使う)。Calculator はコチラ
  • ESP32・センサの消費電流に関しては以下で、いずれも 500mA 以下である。
ESP32-DevKitC に供給が必要な電流 (5.2 Recommended Operating Conditions)
2A の電流が流れるときの Trace の太さは 0.8mm

500mA の電流が流れるときの Trace の太さは 0.12mm

※ 次回のドローン基板設計時は、ノイズの影響を極力減らすため、センサ類とマイコンを積んだ基板・モータと電源用の基板をそれぞれ別で設計した方がよい(2 つ基板を作る)かもと思っています。

DRC (Design Rule Check)

38 個の Violation がありますが、すべて問題のないエラーです。以下でこれらのエラーについて説明していきます。

他に出ていたエラー(たとえば未配線部品など)はすでに解決済みです。

これらのエラーは 5 種類に大別されます。

順番に見ていきます。

Warning: Silkscreen overlap

Silkscreen 同士が重複していることにより warning が発生しています。ESP32-DevKitC と他の部品を同じ場所に配置しているためです。

Warning: Silkscreen overlap

以下の写真は前回制作したドローン基板です。このように ESP32 モジュールと他の素子は階層構造にできるので、特に問題はないです。

基板の階層構造

Warning: Silkscreen clipped by solder mask

Silkscreen が solder mask の上に乗っているというだけで特に問題ないと思うので、この warning も無視します。

Warning: Silkscreen clipped by solder mask

Error: Board has malformed outline

segment has null or very small length: 59 nm

segment の長さがすごく短いと言われていますがちょっと理由がわからないです。このまま基板を発注してみて指摘を受けたら設計修正しようと思います。

Error: Board has malformed outline

Warning: Silkscreen clipped by board edge

Silkscreen が Edge.Cuts で切られてしまっているというのが warning の原因のようです。問題ないと思うのでそのまま発注します。

3D Viewer で見るとたしかに Silkscreen がカットされているのがわかります。

Warning: Silkscreen clipped by board edge
3D Viewer で見た図

Error: Courtyards overlap

これも部品の重複に関するエラーですが、先ほど記したように部品を階層構造にできるので問題ないです。

Error: Courtyards overlap

まとめ

配置してみたら部品が大きすぎることに気づいて部品を変更したり、DRC で配線忘れに気づいたりで結構大変でしたが、無事 PCB の設計を終えました!

次回記事でいよいよ PCBWay に基板を発注します。

コメント