11月25日発売 書籍『Arduinoと3Dプリンタでロボットを作ろう』を出させて頂きました!

【自作基板 / JLCPCB】CH217Kで作る短絡・過電流保護機能付きブレッドボード用電源スイッチモジュールの製作!

CH217Kは、過電流保護や加熱保護などの機能を備えたUSB電源ライン保護向けのUSBスイッチICです。

【電子工作】USB電源ライン保護のスイッチIC『CH217K』を使ってみる!

便利なチップだったことから、USB電源の保護および手動で電源のオン・オフが出来るスイッチ基板を以前製作したことがあります。

製作したボードは非常に使い勝手が良く、負荷側が短絡した場合や過電流を検知した場合に自動でUSB電源ラインを強制OFF出来ることから、自作基板の製作時にパーツ実装後の短絡チェッカーとしても役立っています!

【電子工作 / 自作基板】CH217Kを使ったUSB電源保護ボード『USB Power Toggle』の製作!

このボードを日常的に愛用している中で、「ブレッドボード上でも同じように安全に電源をオン・オフ出来たら便利だな!」と思い、保護機能付きブレッドボード用電源スイッチモジュールとして、今回あらたに製作してみることにしました。

基板サイズを極力小さくすることで、すでにブレッドボード上に組んだ回路にも組み込みやすく、回路全体の電源スイッチとして使える構成になっています。

また、組んでいる回路(負荷)側で短絡や過電流が発生した場合には、従来のボード同様に電源を強制的にオフにしてくれるため、ブレッドボードでの試作時の事故防止にも役立つ便利な電源スイッチモジュールとして仕上がりました。

短絡・過電流保護機能付きブレッドボード用電源スイッチモジュールの製作

ボードコンセプト & 仕様

本基板のブレッドボードでの占有サイズを6×4ピッチ(15.24mm×10.16mm)まで小型化し、すでにブレッドボード上に回路を組んでいる場合でも後から組み込みもしやすいサイズ感を意識して製作しました。

使い方はとてもシンプルで、電源ラインにこのスイッチモジュールを挟むだけで、スイッチによる電源のオン・オフの切り替え、また設定した電流値を超えた場合の過電流検知による強制電源オフ、そして短絡発生時にも電源を強制的にオフにするといった機能を備えています。

過電流や短絡を検知した場合は、エラー表示用LED(ERR)を点灯させると同時に電源ラインを強制的に遮断し、負荷側の回路を保護する動作としています。

対応電圧は2.7V~5.5Vとなっており、ブレッドボード上で組んだ3.3V / 5V系マイコン周辺回路の保護機能付き電源スイッチとして、特に使いやすい構成となっています。

負荷側で短絡が発生した場合には、即座に電源を強制OFFにして回路を保護します。

また、過電流を検知した場合も同様に電源を遮断します。
動画では 1.0Aに設定した状態で動作確認を行っています。
一度異常を検知すると、再度スイッチを押すまで電源はONにならない仕様にしています。

基板設計

ブレッドボード上である程度自由に配置出来るように、基板サイズとピン配置にこだわりました。

縦方向はブレッドボードのセンター溝を跨げる4ピッチ、横方向は必要な回路が収まる最小サイズの6ピッチとし、結果として6×4ピッチ(15.24mm×10.16mm)のボードサイズとなっています。

ブレッドボード上での占有面積を最小限に抑え、かなり小さくまとめることが出来ました。
正直、これ以上サイズを小さくするのは厳しそうです!

CH217Kが短絡や過電流を検知した際の強制OFF制御や、エラーLEDの点灯といった本ボードの基本動作については、当初はロジック回路のみで構成する予定でした。

しかし、どうしてもこの基板サイズに収めることができず、前回製作したボード同様にマイコンチップにATtiny202を使用する構成としました。

初回のみ制御用のプログラムを書き込む手間が発生しますが、マイコンを使うことで部品点数を大幅に減らすことが出来ました。

全体の回路構成は以下のようになりました。

CH217Kは、ISETピンに接続する外付け抵抗の値により400mA~2.7Aまでの電流値の制限をかけることが出来ます。

上記回路ではRSET(R1)の値を56kオームとし、1.0Aの制限をかけています。
これ以上の電流(過電流)が負荷側(VOUT)に流れると、異常を検知し強制的にスイッチをオフにします。

MEMO
ISETピンが未接続ではCH217Kが正常に動作しません。
使用用途により制限をかけたい電流値(400mA~2.7A)を決め、適切な値の抵抗を取り付けて下さい!
詳しくはデータシートを参照下さい。

極小サイズの基板となりますが、上手くまとめることが出来ました。

基板上下に配置したピンヘッダー、IN(VIN) / G(GND) / OUT(VOUT)はそれぞれ内部的に接続されています。

そのため、ブレッドボードのセンターを跨いだ配置や片側レーンだけを使った配置のどちらにも対応でき、配線の自由度も高い電源スイッチモジュールとして使いやすい構成になっていると思います。

JLCPCBに発注

基板の発注は、JLCPCBを利用しました。

本ボードの基板データ(ガーバーファイル)を以下からダウンロード出来るようにしておきます。
何かの参考になればと思います。

今回製作した基板は両面実装基板となっています。
とは言っても、表面に実装している部品はLEDとタクトスイッチのみなので、本来であれば全て手はんだで実装する、または背面パーツはリフローするといった実装方法でも十分対応出来る構成です。

今回はあえてJLCPCBのPCBAサービスを利用し、両面実装基板としてアセンブリを依頼しました。

JLCPCBの標準PCBAを利用した両面実装基板のアセンブリ、また極小サイズ基板におけるエッジレールの扱いなど、個人的に気になっていた部分の確認&検証も兼ねて発注したものとなります。

本基板のPCBAに関する詳細や発注時の設定、注意点などについては以下の記事にまとめています。

JLCPCBのPCBAサービスを利用し、両面実装基板を試してみました!

また、JLCPCBの基本的な基板発注方法は、こちらの記事でまとめています。
あわせて見て頂ければと思います。

【電子工作 / 基板製作】これから始める自作基板。JLCPCBでの基板発注ガイド(2025年版)

基板の到着

配送方法にOCS Expressを選択し、発注からおよそ10日ほどで実装済み基板が手元に届きました。

JLCPCBのPCBAサービスは、基板単体のみの製造とほぼ変わらないスピード(プラス1日ほど)で進行する印象があり、今回のように両面実装基板であっても通常の片面PCBAと体感的にほとんど変わらない納期でした。

JLCPCBでは、両面実装基板のPCBAは標準PCBA扱いとなります。
標準PCBAではエッジレールの取り付けが必須となっており、最小基板サイズは70mm×70mmという制約があります。

では、今回製作した基板のようにそれよりもはるかに小さい基板サイズの場合は、どのような扱いになるのか?

JLCPCBにエッジレールの取り付けをお任せした場合、基板本体のサイズに対して全体サイズが70mm以上になるようにエッジレール幅が自動的に計算され、Vカットライン付きで取り付けられるようですね!

これは、自身でエッジレール付き基板として設計する場合も同様で、少なくとも一辺が70mm以上になるように基板サイズを調整し設計する必要があります。

極小サイズの基板で標準PCBAを依頼する際には、このエッジレールの扱いを事前に理解しておくと安心ですね!

本基板の発注に関しては、こちらの記事でもまとめています。

JLCPCBのPCBAサービスを利用し、両面実装基板を試してみました!

また、JLCPCBのPCBAサービスには、[エコノミックPCBA]と[標準PCBA]があります。
違いなどについては、こちらの記事でもまとめています。
あわせて見て頂ければと思います。

JLCPCBのパーツ実装サービス『エコノミックPCBA』と『標準PCBA』について!

ファームウェアの書き込み

今回PCBAサービスを利用したので、基板到着後、残りのピンヘッダーを取り付けて完成させました。

最後にATTiny202に制御用プログラムを書き込みます。
プログラムの書き込みは、Arduino IDEを使います。

UPDIでの書き込みに対応したATTinyを扱ったことがない方は、ボードパッケージ[megaTinyCore]のインストールが必要となります。

このボードパッケージのインストール方法やATtiny202へのスケッチ書き込み方法は、こちらの記事で詳しくまとめています。
あわせて見て頂ければと思います。

【電子工作 / Arduino】ATtiny202をArduino IDEで使う環境メモ!

プログラムの書き込みには、UPDIプログラマが必要となります。
UPDIプログラが無い場合は、Arduinoに少しパーツを追加すれば書き込むことが出来ます。(上記記事を参考)

UPDIプログラマとの接続

UPDIプログラマ(またはArduino)との接続は、本基板の[UPDIパッド]を使います。
以下のようにプログラマと接続します。

このようなポゴピン(2.54mmピッチ)があれば、ピンヘッダー取り付け前にはんだ付け無しで書き込めますが・・・
無い場合は、UPDIパッドにワイヤーをはんだ付けして行って下さい!

制御プログラムの書き込み

接続が出来たら、以下プログラムを書き込みます。

Arduino IDEのボード等の設定を以下のようにし、

ATtiny202は生チップ(未使用)なので、まず[ブートローダーを書き込む]を実行し、フューズの書き換えを行っておきます。

続いて、[書き込み装置を使って書き込む]からプログラム本体を書き込めば完了です!

このプログラムの書き込みは初回のみ必要となり、以後必要になることはないので接続したワイヤーを外してお使い下さい!

使用方法

本ボードの動作電圧範囲は、2.7V~5.5Vとなっています。

使用方法は簡単で、本ボードの[IN][G(GND)]ピンに電源を接続し(または回路の電源部分に挟む)、[OUT][GND]間にその先の回路(負荷)を接続するだけです。

スイッチを押すごとにOUT側への電源供給のオン・オフが切り替わり、また負荷側に短絡が発生するとエラーLEDが点灯し強制的に電源がオフになります。

また、設定したリミット(ISETピンに接続した抵抗値により設定)以上の電流が流れると、これも強制的にスイッチがオフとなります。

以上が本ボードの仕様となります。

使い方は非常に簡単で、ブレッドボード上で試作回路を組む際に役立つと思います!

使用パーツ一覧

本基板で使用したパーツの一覧です。

今回はテストも兼ねてPCBAサービスを利用ましたが、手はんだやリフローによるパーツ実装も十分可能な基板となっています。

製作される方がいましたら、自身でパーツを用意して実装した方がコスパ良く製作出来ると思います。

パーツ定数入手先
コンデンサ
(0603)
C1/C3 100n
C2 10μF
AliExpress
抵抗
(0603)
R2/R3 1kΩ
R1 56k(※電流制限値により調整)
AliExpress
LED
(0603)
LED1(Green)通電ランプ
LED2(Red)エラーランプ
AliExpress
保護スイッチICU1 CH217KAliExpress / 秋月電子
MCUU2 ATtiny202(SOIC-8)AliExpress / 秋月電子
タクトスイッチ
(SMD)
SW1 タクトスイッチ 6mm×6mmAliExpress / 秋月電子
端子J2/J3 ピンヘッダー(1×3P)ーーー
MEMO
R1はCH217Kの電流制限値(ISET)を決定するための抵抗となります。
本ボードはブレッドボード上での試作利用を想定しているため、56kΩを実装し電流制限値をおよそ1.0A程度に設定しています。
400mA-2.7Aの範囲内で設定可能なので、使用用途により抵抗値を調整して下さい!

最後に!

今回は、CH217Kを使ったブレッドボード用の保護機能付き電源スイッチモジュールを製作してみました。

ブレッドボードでの試作は手軽な反面、配線ミスや一時的な短絡によってマイコンやパーツを壊してしまうリスクが常にあります。

本ボードは、スイッチによる電源のオン・オフに加え、短絡や過電流検知時の電源強制オフ機能、またブレッドボードに組み込みやすいコンパクトなサイズで仕上げ、試作時の安全性と使い勝手を両立させることを意識して設計しています。

特に、予期せぬ異常が発生したら強制的に自動で電源を落としてくれるという点は、ブレッドボードでの試作ではかなり安心感があります!

また、JLCPCBのPCBAサービスで細かい部分の仕様を確認出来たのも、個人的には大きな収穫でした。

これからブレッドボード試作環境の定番電源スイッチとして活用していく予定です。
同じようにブレッドボードで試作を行う方の参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。