2026年6月6日土曜日

プログラマブルシンクモジュール(1)



電源から決めた電流をひっぱるモジュールを作りたい。電源回路や電池の評価に使う。

世の中には電子負荷とか充放電試験装置とかあるにはあるんだけど、プログラム可能なステップ数やサンプリングレートが限られてたり、制御範囲が所望の範囲じゃなかったりってことで、こういう場合は自分で作ってしまおう。ちな、成功する保証はない。

目次
  1. 仕様
  2. 方針
  3. 回路設計

  1. 仕様    
  2. 仕様ってほどでもないけど、
    • シンク回路
      • 電源 : USB
      • 制御範囲 : 0uA~100uA
      • ステップ数 : できるだけたくさん
      • サンプリングレート : できるだけ早め(~250kS/s)
    • モニター回路(電圧の変動をモニター)
      • 電源 : USB
      • 計測範囲 : 0V~4.2V
      • サンプリングレート : 250kS/s
    (目次)

  3. 方針    
    • シンク回路
    • オペアンプによる定電流回路をベースにして、VrefをDACで制御する。DACのrefはマルチプレクサで選択できるようにして、広い範囲で細かく調整できるようにする。<--これがミソってか工夫したところ。
      能書きはこれくらいで、ズバリこんな感じ。
      ちなみに、ここに出てくる抵抗は高精度じゃないといけなくて、出力段のオペアンプは超低オフセットじゃないといけない。
    • モニター回路
    • ボルテージフォロアで受けて、分圧して、マイコンのADCで測定するっていう簡単なものにします。こんな感じ。

    (目次)

  4. 回路設計    
    • シンク回路
      • DACのREFに入れる電圧の精度
      • 高精度な基準電圧源を高精度な抵抗で分圧する、、、+/-0.1%, 15ppm/deg.C
      • 出力段のオペアンプのオフセット
      • これが冴えないと、0Aにしたいときに0Aにできない
        まあ、オフセットができるだけ小さいものを選ぶ
      • 検出抵抗の精度と安定度
      • ここで安定して狙った電流になるかどうかが決まる、、、+/-0.1%, 15ppm/deg.C
      • ノイズをできるだけ抑える
      • 制御電圧にノイズが乗ってしまうともう何やってるかわからなくなる、、、どんだけ電源をきれいにできるかが課題、、、フェライトビーズを使いつつデカップリングコンデンサをふんだんに入れる
        で、こうなる
        ラダー抵抗は2,18,180,1800ohmになっていて、REF3020の出力2.048Vを2.048V, 204.8mV, 20.48mV, 2.048mVとして出力して、MCP6004がボルテージフォロアとして電圧をコピーして、TMUX1004で選択して、MCP4921で4096分割する。なので、LSBは500uV, 50uV, 5uV, 0.5uVとめっちゃ細かく刻めるってもくろみ。そうすることで、
        I_max[uA] LSB[uA]
        102400 25
        10240 2.5
        1024 0.25
        102.4 0.025
        って感じで制御できるはず。まあ、オペアンプの精度にかかってますけど、、、
        制御内容は大したことないので、マイコンは5V系でSPIが高速でパタンをたくさん覚えられる(Flash容量が大きめの)AVR128DB28を選択。
    • モニター回路
      • ボルテージフォロアで電圧をコピーしてから分圧する
      • ボルテージフォロアで受けることで評価対象からシンク回路以外に電流が流れることを防止する
      • ADCはマイコン内蔵
      • 単体のADCは高い!むしろそれなりのマイコンを使った方がいろいろラクできる、、、いずれにしても高速に計測した大量のデータを一時的に高速に保存するために外付けのSRAMが必要
        で、こうなる。
        AD変換した結果を高速にSRAMに放り込みたいので、マイコンはATSAMD21E18Aを選択。
    • AW
    • こんなかんじにしてみた
      、、、結構ぴっちぴち;
    (目次)


つづく


現代の暴君、、、ってか現在は暴君の時代なのかも(๑╯ﻌ╰๑)