電池の充電回路を作るにあたって、電流を電圧に変換する必要が生じたので、どうやったらいいか考えてみる。

オペアンプを使ったI-V変換回路(電流−電圧変換回路)というのがググったら見つかったので試してみましたが…

i-v1

このシミュレーションを見る限りうまくいってますけど。

I1の電流はオペアンプの入力インピーダンスが無限大なので全てR1に流れる。そうすると−入力端子と出力端子間の電圧はI1R1になる。
+入力端子は0Vで、なおかつ負帰還が掛かってるのでバーチャルショートとなるため、−入力端子の電圧も0V(になるようにオペアンプが動く)。
そうすると出力端子の電圧は-I1R1。(上の例では-1m×1K=1)
というわけですが。

正負2電源を使ってるから、この回路でいいんですが…。
実際に作りたいのは5V単一電源で動く充電器です。
負電圧を出力できないのできっとちゃんと動きません。
なんとかして出力を正の電圧にできないだろうか…。

単純に考えると、オペアンプの+と−を入れ替えちゃうというのが思いついたのでシミュレーションしてみましたが…
そのまま入力端子だけを入れ替えるとモロに正帰還となるためVoutが最大になるだけでした。おまぬけ。
なので負帰還も掛けてみよう、というわけで−端子と出力端子をボルテージフォロワ的に接続…すると、−端子はGNDにつながってるので出力は0V固定に…。うあああ。
じゃあ負帰還をかけるところにも抵抗を入れて…

ていうか、わけわかんなくなってきたので普通に抵抗の両端の電圧を測る事にします。
普通に差動増幅回路でいいかと思いましたが、調べてみるとインストゥルメンテーションアンプという回路があるそうです。

i-v3

抵抗がすべて同じなので増幅率は3倍のはず。
グラフ左端ではVin+=12V, Vin-=7Vで差が5V、3倍したら15Vなので合ってますね。

利点としては、入力がオペアンプ直結なのでインピーダンスが高い。だそうです。でもこれ、ボルテージフォロアと差動増幅回路でも同じなんじゃね?とか思ったり…。
まあ、R3を∞にしてR1とR2を0にしたインストゥルメンテーションアンプとも言えますが…。

i-v4

結果は見た感じ同じですよね…。
入力インピーダンスも高いはずだし。
欠点は増幅率を抵抗1本で設定できないくらいなのかな。
しかしオペアンプを3個組み立てるのはめんどくさい…。

充電器を作るにあたっては電池の電圧と充電電流を測りたいので、ボルテージフォロア3個と差動増幅器2個で全部こなす、というのもできそうです。が、オペアンプ5個というと現実問題としてどうやってもIC2つ使う事になってしまうのがこれまためんどくさい…。

そもそもリチウムイオン電池充電用のIC(LM3622とかLTC4054とか)が秋月とかで買えればこんなめんどいことしなくていいんだけどなーw

充電電流に関しては微小抵抗の両端の電圧を測りたいので、入力インピーダンスが高い事が必要ですが、電池の電圧に関しては電池の出力インピーダンスなんて激低だと思うので普通の差動増幅器でいいかなーとか。
でも電池の電圧が4.2VなのでRail-To-Railなオペアンプが必要になる感じ。

オペアンプで計測した結果をPICのA/Dに入力して制御するのがいいかな。

あー、でもそれとは別に定電流回路と定電圧回路も必要なのかー…。

通販で買えるところがあったからLTC4054買っちゃおうかなw