【電子工作】小型可変電圧電源を作る

直流安定化電源があると便利

電子工作の電源としては、乾電池の1.5VやUSBの5V、ACアダプタでよく見る12Vなど、用途に応じて、いろいろな電圧の電源を使用するため、ひとつ直流安定化電源を持っておくと、とても便利。

Amazonでよく売れているこちらの商品は、2024年9月24日時点で、7,199円で重さが1.1kg、大きさが8.5 x 15.5 x 18 cm、出力が30V10Aとなっている。
私が以前、AliExpressで購入したToolkitRC P200というGaNを使用した小型の直流安定化電源は、2022年3月購入時点で、9,415円で重さが425g、大きさがが6.3 x 7.8 x 11 cm、出力が30V10Aだった。
どちらも趣味で電子工作を楽しむ分には十分な製品だと思うが、それなり大きさがあるため作業台に据え置きなら良いが、私の場合、普段は仕舞っておく形で使用していたため、少し使うのが億劫な時があった。

USB-PD PPS

そんな中、ノートパソコンの電源をUSB-PD(Power Delivery)対応のアダプタからとれることを知り、そのためのトリガケーブルを買ったり、USB-PDの仕様を調べていたら、USB-PD PPS(Programmable Power Supply)という仕様があることを知った。
そして、USB-PD PPSとは、なんと電圧を3.3 – 21.0V 20mV刻みで、電流は最大5A 50mA刻みで制御できるという機能だった。(電源ソースによって対応する範囲が異なる)

つまり、Anker Nano II 65Wのような小型のUSB充電器も、5.0-21.0Vの可変電圧、電流が最大3.25Aの電源として使える機能が備わっているということなのである。(対応範囲は、こちらの記事を参考に記載)
同様にUSB-PD PPS対応のモバイルバッテリーもそのような機能を持っているということが分かった。

このPPSの機能を使って可変電圧電源を作れれば、小型で持ち運びも簡単な電源を作れるのはないか、ということで、今回の小型可変電圧電源の作成に取り組み始めた。

PicoPD

そして、その用途に最適なハードウェアがすでに製品化されていた。
それが、PicoPDである。
こちらの製品は、Raspberry Pi Picoに、PDコントローラのDiodes Incorporated AP33772が組み込まれているような製品となり、RP2040マイコンからAP33772をコントロールすることで、USB-PD及びUSB-PD PPSに対応した電圧・電流制御が可能な機能が備わっている。

こちらを使用すれば、今回作成した小型可変電圧電源の厚さを半分くらいには出来ると思う。
しかし、Elecrowで海外からの購入になること、こちらを使用すると作る要素が少なくなってしまうため、使用するか悩んでいたところ、国内でAP33772を使用したUSB-PD PPSコントローラ基板の製品を見つけたため、そちらを使用することにした。

部品紹介

ということで、今回は上のような部品を使用して小型可変電圧電源を作成した。
・マイコンは、USB-CコネクタのRaspberry Pi Pico互換ボード(TYPE-C USB – 16MB)
AP33772使用 USB PD PPSコントローラー基板 – 頒布所 – BOOTH
・スイッチは、タクトスイッチ3つ
0.96インチ 128×64ドット有機ELディスプレイ(OLED) 白色
・出力のON/OFFなどのためのMOSFET、コンデンサ
・外装は3Dプリンターで作成

制御ファームウェアは、PlatformIOを利用し、AP33772の制御部分は、PicoPDを作成しているCentyLabさんが公開しているものをベースに流用させて頂いた。
制御ファームウェアのソースコード3Dプリンタ用のモデルファイルなど一連の情報は、以下のGithubリポジトリで公開している。
1step4ward/tiny_pps (github.com)

組み立て

外装部分は3つに分かれている

OLED画面とスイッチを取り付けて…

PDコンローラ基板に出力部分と取り付けて…

マイコン基板に接続用のコネクタを取り付けて…

ケースに押し込む!

押し込む!

気合で押し込む!

出来上がり!(半日はかかった~)

実際に使ってみて

オシロで出力電圧波形をとりながら、動作確認をしてみたが、良い感じで動作している。
負荷には、50W10ΩJのメタルクラッド抵抗を使用。
(ここまで出来るまでに、出力ON/OFF用のMOSFETなし & 不十分な制御のファームウェアで、自宅のSwitchbot ロックに電源供給してみて壊している…涙)

この小型電源は、箱部分の大きさが80 x 40 x 21mm、重さが52g。
簡単に棚から取り出して、USB PD PPS対応のアダプタに繋げて使用できるので、とても使い勝手良い。
ファームウェアは、電圧の上下、ON/OFFが出来る程度の最低限の実装になっているので、ソフトを改良すれば、さらに使い勝手を良くできるだろう。
ただ、もっと小型化できる余地が見えているので、ソフト改良よりも、さらなる小型化がしたいと思っている。

外装のモデルファイルやファームウェアのコード

外装のモデルファイルやファームウェアのコードは、Githubで公開中。
1step4ward/tiny_pps (github.com)

さらなる小型化を

PicoPDを使用すれば、サイズを半分くらいにできるだろう。専用のPCBを作ればさらに小さくできそうだ。
また、マイコンから直接USB-PDのCC通信を行えれば、より小型化出来て、部品コストも大きく減らせる。
どこまで出来るかわからないが、次は、もっと小型のものを作ろうと思う。