Menu

My Works
- LEDチェッカ
- 太陽電池式回路テスタ
- TTL Pong
- DSP プリセットラジオ
- 電動式 CVCC 電源装置
- OLED MP3 プレーヤ
- etc.

Report
- MIDI のハードウェア
- aitendo DSPラジオ一覧表
- etc.

Parts Collection
- Logic IC
- Calculator LSI
- CMOS Melody IC
- etc.

Blog

Recent Updates

主な更新のみ

24/09/11
- MCU-based Melody ICs

24/08/12
- MCU-based Melody ICs

24/03/10
- Logic IC Collection


電動式 CVCC 電源装置の製作

初版公開:2013/09/17
最終更新: 2023/05/26



(外観)

ジャンク屋で電動ボリュームが手に入ったので、電源装置に応用してみました。作った当初は電動 VRを使うこと自体が目的だったものの、実際に作って使ってみたところ、なかなか実用的なインタフェースができたと自負しています。

CVCC 電源装置とは、CV(Constant Voltage; 定電圧) および CC(Constant Current; 定電流) の 2 つの機能を持つ電源装置です。たとえば二次電池の充電や LED の試験などにも使える、実験用電源に最適な電源装置です。適切に CC を設定することで、実験中の故障トラブルを防ぐこともできます。

電圧値・電流値をデジタル表示することを考えると、電圧・電流の設定もデジタルで操作できれば便利です。一方で、ボリューム操作で出力電圧を手軽に変化できると都合の良い状況もまた多く生じます。これらの相矛盾する欲求をかなえるため、今回の製作では電動ボリュームによりアナログ・デジタル両方で出力電圧を一元的に設定可能なインタフェースを実現しました。フロントパネルにテンキーと電圧設定ボリュームが見えると思いますが、テンキーから数値を入力するとボリュームが設定値まで勝手に動くという、非常にユニークな電源装置です。もちろん手動でのボリューム操作も可能です!

この電源装置の 2 つのインタフェースを示した上図のように、テンキーの入力値をもとに電動ボリュームを出力電圧によってフィードバック制御します。制御状態にない場合はクラッチによりボリュームを自由に動かすことが可能です。アナログボリュームだけの電源装置より正確に電圧を調節することができ、ありがちなロータリエンコーダによる電圧設定インタフェースよりも早く直感的に操作することができます。

低発熱・低ノイズもこの電源装置の特徴です。リニアレギュレータは発熱が多く、装置が大型になりがちです。またスイッチングレギュレータではノイズやレギュレーション特性が悪く、この手の実験用電源装置には適しません。今回はスイッチングレギュレータ+リニアレギュレータの 2 段構成により、0〜12V・2A (24W) までの低ノイズ出力をファンレス・小型筐体で実現しています。12V2A 出力はちょっと物足りないと思われるかもしれませんが、私はマイコン工作がメインなのでこれで必要充分なのです。過ぎたるは及ばざるが如しです。

0V からの出力電圧に対応するために回路規模はやや大きくなってしまいましたが、電動ボリューム以外特殊な部品は使っていないので容易に製作可能だと思います。今回の製作では aitendo の決算セールをうまく利用できたので、思いのほか安く・楽しく製作することができました。

この電源装置の特徴

基本仕様

プロジェクト一式・ダウンロード

詳細説明

構成

上図にブロック・ダイアグラムを示します。メイン MCU には使い慣れた AVR マイコン ATMEGA88V、表示器基板 MCU には ATtiny2313 を使用しています。

今回の製作ではフロントパネルに LED とスイッチマトリックスを配置するので、ともするとメイン基板 - フロントパネル基板間の配線が多くなりがちです。上図のようにフロントパネルのデバイスの処理はフロントパネル内で完結するようにして、メイン基板とのインタフェースにシリアル通信を用いることで、配線を最小限に抑えています。欠点としてはデバッグがほんの少し面倒になることです。

プリレギュレータ

リニアレギュレータ一段構成としてしまっては、装置の PD(総消費電力)が 30 W 以上になってしまい、今回のような小型筐体ではファンを使わない限り放熱が追いつきません。今回はプリレギュレータとしてバックコンバータを使用することで効率の改善を図り、ファンレス小型筐体を実現します。ちょうど aitendo で LM2576 互換 IC を用いた電源基板16V 電源のセットを安くゲットできたので、以下のように改造して使用します。

(改造箇所)

  1. 抵抗 R1、R12 の取り外し(明らかに部品の定格オーバのため)
  2. インダクタを許容電流の余裕があるものに交換する
  3. フィードバック分圧抵抗 R9 を取り外し、4.7k に交換
  4. D2 と SW1 を短絡(SW1 は MOSFET による電子 SW に交換)
  5. 入力キャパシタを Lo-Z 品に交換

とこのように改造することで、3A 程度の出力ができるようになります。出力電圧を決定する SW2 は 2.5V のみ ON にして使用します。回路図にあるように、フィードバック端子は外部に取り出して、外部電流によってメインレギュレータの出力とプリレギュレータ出力をトラッキングするようにしています。

プリレギュレータの出力電圧はメインレギュレータの出力に比例するよう調整します。メインレギュレータの電圧調整用 VR の出力をフィードバックループに組みこむことで、出力電圧 + 1.5 V 〜 2.0 V 程度を出力するように設計しています(この値は調整可能です)。これにより、メインレギュレータの出力トランジスタの消費電力を最大でも 4 W 程度に抑えることができ、本体の省電力化・小型化が実現できます。

メインレギュレータ

OPAMP によるディスクリート構成のリニアレギュレータで、出力電圧は 0V から調節できます。出力トランジスタ周辺の構成を工夫することで、エミッタフォロア出力にもかかわらず、ドロップ電圧を最大 1.5V 程度と低く抑えています。エミッタフォロアというのがポイントで、これは低ドロップアウト・高安定度のトレードオフの最適解だと思っています。回路はまじめに設計したつもりですが、CVCC 電源ははじめて作ったので、いろいろ粗があるかもしれません。

ハイサイドで電流検出を行い出力電流表示と電流制限を行いますが、0 V 出力との兼ね合いで OPAMP 電源には負電圧が必要です。できればローノイズで mA オーダの電流が必要なので、ICL7660 を用いたチャージポンプ・コンバータによって負電圧 (-5V) を生成します。

合計で OPAMP を 9 回路使っています。出力 0 V から 2 A までの電流を検出させるために、少し複雑な回路になってしまいました。高級な IC を使えば電流・電圧センシングなんて一発なのですが、それでは自作としておもしろくないと思いますので、一般的な OPAMP で回路を構成しています。精度にはオフセット電圧の影響が当然ありますが、他のものより 10 倍多くそれが影響する OPAMP(回路図中 U1)には高精度の OP07 を使用します。本当は U3 も高精度アンプを使いたいところですが、タダみたいな値段の LM324 と VR によるオフセット調整でどうにかします。ひとえに私のパーツボックスの都合によります。

電流・電圧は適切なレンジに変換して、マイコン(ATMEGA88)によって ADC を行い、秒間 5 回程度の頻度でフロントパネルを更新します。64 倍オーバサンプリングによって ADC の分解能を上げています。

電動 VR

ジャンクで入手した ALPS の RK168 というもので、グランド共通に 100 kΩ が 2 回路入りです。モータ定格は 5V でした。Bカーブですがセンタタップつきなので 50% 付近にフラットな領域があり、使いどころが限られる物です。オーディオ機器用の大型 VR なので操作感は非常によいです。

モータドライバには 三洋 の LB1641 が 6 個 100 円だったので使ってみましたが、もちろん一般的な正転・逆転モータドライバが使用できます。出力電圧の制御対象にする都合上、ほどほどにモータを遅く動かしたいので、バイポーラのドライバが適しています。

MCU

メイン基板の MCU (ATMEGA88) は電圧・電流の AD 変換と、電流制限リファレンスの生成、フロントパネル基板との通信が主な仕事です。オーバサンプリングによって ADC の見かけ上の分解能を向上しています。(が、もともと抵抗に 1% 品を使用していることもあり、分解能ほどの精度は出ないかもしれません。)

電動 VR を制御してテンキーにより設定された電圧に調整するのもメイン MCU の仕事です。あまり凝った制御はしていないのですが、一応設定値の±0.1V 以内には自動で動くようになっております。

前回の設定(定電流設定値、定電流モード ON/OFF )は EEPROM に書き込まれるので、たとえ電源を切ったとしても再開時には前回行った設定が再現されます。

フロントパネル

フロントパネルには LED とキーマトリックスを配置します。これらは配線量が多くなるので、フロントパネル基板として分離させて、メイン基板とは 2 線式インタフェースによって信号をやりとりすることにします。通信する内容はディスプレイやインジケータの表示内容と、スイッチの押下情報です。マイコンに 20 ピンの ATtiny2313 を使用しましたが、IO ポートが足りなくてけっこうややこしいことになってしまいました。LED には高輝度のものを使用することを前提に回路定数を設定しています。

インジケータ LED は上記写真のように 4 つ(下のオレンジ3つと、照光式SW)あり、それぞれ (1) 電源インジケータ (2) 電流制限インジケータ (3) 出力イネーブル (4) 定電流設定イネーブルです。視認性を上げるため LED の手前にクリアレッドの塩化ビニル板を取り付けています。カメラの都合で区別しづらいですが、3 つのインジケータ LED はオレンジ色で現物はきれいなので気に入っています。

キーマトリックスには「キーパット(4x4)[KEYPAD-4X4]」を 100 円でゲットできたのでこれを使用しましたが、以下のように若干の改造が必要です。なお、回路図の配線はコネクタを左手に見てテンキー配列になるように書いています。

  1. シルク印刷されたキー配列がワンボードマイコン仕様であり使いづらいので、テンキー配列とみなして使用します。
  2. コネクタが操作面に向かって実装されていて使いづらいので、裏面に実装しなおしました。
  3. ねじ穴のひとつがちょっとずれているので注意が必要です(このせいでフロントパネルの穴あけをミスしてしまいました)。
  4. 塩化ビニル板でカバーを製作して、操作しやすくしています。

基本的に aitendo で手にはいるモジュール基板は使うのにコツがいるので、ある意味で上級者向けだと思います。

リモートセンシング

(13/09/27)新規機能

負荷に大電流を流す場合、配線抵抗分の電圧降下をキャンセルするために、リモートセンシングと呼ばれる機能が用いられます。今回は OPAMP 一段の作動増幅によって実現しましたが、電圧帰還ループに位相遅れを伴うため、配線などの状態によっては応答特性の悪化を伴う可能性があります。リモートセンシングの必要ない場合を考え、回路図にはリモートセンシングありとなしの 2 つのバージョンを用意しました。

回路図に示すように、センス配線は出力端子直近で接続し、ノイズが乗ってもコモンモードになるように、より線かシールド線で配線を行うことが望ましいです。また、出力切り離し時に帰還ループが切断されないよう、74HC4066 によるアナログスイッチによってバイパスを行います。

製作

基本的に機械工作は得意ではないので、以下は参考にならないかもしれません。

ケースにはタカチの SY-150A を使用しています。市販の同クラスの電源に比べてコンパクトサイズです(AC アダプタ外付けなので当然といえば当然なのですが)、まだまだ内部スペースに余裕があります。前面パネル面積が小さいので、出力端子を後部に取り付けたのですが、実際使いづらかったので急遽前面に継ぎ足しました。仕上げが雑なのはご愛嬌です・・・。

大きなパルス電流が流れる DC-DC 回路と mV 単位の測定を行うアナログ回路が同居しているので、メイン基板の GND の引き回しには注意が必要です。

筐体内部は以下の写真のようになっています。フロントパネル基板 - 主基板間は 2 線式シリアルインタフェースを使用したので、写真のように配線の引き回しはシンプルです。その反面フロントパネル基板の配線は非常に面倒で、丸一日つぶれてしまいました。7 セグ LED の手配線は大変ですね。

メインレギュレータのトランジスタには余裕をもって 10W まで対応可能な放熱器を取り付けています。

フロントパネル基板はフロントパネルにねじ止めしています。目立たないよう黒く処理されたねじを使用しています。フロントパネルは主に黒の塩化ビニル板で作りました。

製作が終わったらしかるべき調整を行います。詳しくは回路図を参考にしてください。

操作方法

前面パネル説明

出力電圧を 3.3 V に設定する

制限電流値を 100 mA に設定する

設定した電流値を確認する

定電流モード ON/OFF を切り替え

ソフトウェア校正

ソフトウェア側で OPAMP のオフセット校正を行います。(ハードウェア側の校正の後に行います)

  1. テンキーと操作
  2. 2 秒以上待って出力端子をショートします。
  3. Enter ボタンを押し、画面が切り替わるまで待ちます。(30秒程度かかります)

活用例

付録

OPAMP とオフセット電圧

*太字は高精度品
1回路
 型番      | 価格  | 電源     | Vio(typ) | Vio(max) | Input | Output | 備考
uA741      | \25   | ±15V    | 1mV      | 6mV      |       |        |
OP07CP    | \75   | ±3-18V  | 60uV     | 150uV    | 2V    |        |
OPA177GP  | \125  | ±3-18V  | 20uV     | 60uV     | 2V    |        | OPA07の改良品
OPA277PA  | \170  | ±2-18V  | 20uV     | 50uV     | 1.5V  |        | OPA177の改良品
NJM5534    | \60   | ±3-22V  | 0.5mV    | 4mV      |       |        |

2回路
 型番      | 価格  | 電源     | Vio(typ) | Vio(max) | Input | Output | 備考
LM358N     | \20   | 3-32V    | 2.9mV    | 7.0mV    | GND   | GND    |
NJU7062D   | \80   | 3-16V    |          | 2mV      | GND   | GND    | CMOS
LMC662CN   | \80   | 5-15V    | 6mV      | 6.3mV    | GND   | R2R    | CMOS
TLC27M2    |       | 3-16V    | 1.1mV    | 10mV     | GND   | GND    | CMOS
uPC1458C   |       | ±8-16V  | 1.0mV    | 6.0mV    | 2V    | 3V     | 741互換
NJM13404D  | \40   | 2-14V    | 0.5mV    | 4mV      | GND   | GND    |
NJM4580DD  | \40   | ±2-18V  | 0.5mV    | 3mV      |
NJM4558DD  | \25   | ±4-18V  | 0.5mV    | 6mV      |
OPA2277PA | \300  | ±2-18V  | 20uV     | 50uV     | 1.5V  |        | OPA277の2回路入
NJM2119D  | \250  | 4-36V    | 90uV     | 450mV    | GND   | GND    |

4回路
 型番      | 価格  | 電源     | Vio(typ) | Vio(max) | Input | Output | 備考
LM324N     | \25   | 3-32V    | 2mV      | 7mV      | GND   | GND    |
LMC6484AIN | \200  | 3-15V    | 0.75mV   | 1.35mV   | R2R   | R2R    | CMOS
OPA4277PA | \700  | ±2-18V  | 20uV     | 50uV     | 1.5V  |        | OPA277の4回路入

今回使用したキーパーツ

マイコン ATmega88(ATMEL)
マイコン ATtiny2313(ATMEL)
バックコンバータ LM2576-ADJ 互換品
電動ボリューム RK168(ALPS)
モータドライバ LB1641(SANYO)