2019年7月7日日曜日

Analog Discovery2を利用して電子部品に流れる電流量を計測してみた


背景

Analog Discovery2とは、USBでPCに接続して利用する形式のオシロスコープです。
PICマイコンで低消費電力の時計を作った方が利用されていたので、真似して使ってみました。

Analog Discovery2を扱ってみた所、プログラムを動かすのに複数のソフトウェアのインストールが必要だったり、電流値を測定するには抵抗が必要だったりして、電流量測定までに一苦労だったので、備忘録を兼ねて電流量の測定方法を共有します。

使ったもの

これらを使いました。
  • USB接続できるPC
    Ubuntu18.04で動作を確認しました。
  • Analog Discovery 2
    PCにUSB接続して使う形式のオシロスコープです。
    早く欲しかったので自分は秋月電子から購入しましたが、メーカーから直接買うと秋月で買うより数千円安くなると思います。
    メーカー直販には学割があるので、電気系の学生はそれを利用すると安く買えると思います。
  • 小さい抵抗: 今回は10Ω
    手元に小さい抵抗が無かったので、120Ωの抵抗を12並列して10Ωを作りました。
    理想としては3W1Ω3W0.1Ωなどの抵抗を(電力量が許容を超えているなら並列接続するなどして)利用するのが良いと思います。
  • ブレッドボード
    これを利用することで、はんだ付けせずに電子部品を接続できます。
  • オスメスジャンパワイヤ
    AnalogDiscovery2から信号線を引き出すのに利用します。
  • オスオスジャンパワイヤ
    ブレッドボード上の信号の取り回しにりようします。
  • 電流量を測定したい部品
    今回は1kΩの抵抗、赤と青のLED、ProMicroの電流量を測定してみました

Analog Discovery2用のソフトウェアをインストール

Analog Discovery2を使うために、Adept2というボードのドライバ(多分)とWaveFormsというソフトウェアをインストールします。
(UbuntuでなければWaveFormsのインストールだけで良いかもしれません。)

Adept2
WaveForms

それらをダウンロードして、Adept2 -> WaveFromsの順にインストールします。

Ubuntuの場合は下記のようなコマンドでインストールできます。
コマンドに含まれるバージョンは、インストールしたものに合わせて変えてください。
waveformsは依存するライブラリがあるので、apt installにfix-brokenオプションを加えてインストールするのが便利です。
sudo dpkg -i digilent.adept.runtime_2.19.2-amd64.deb
sudo apt --fix-borken install ./digilent.waveforms_3.10.9_amd64.deb

UbuntuにWaveFormsを先にインストールしようとすると、下記のエラーが出てインストールできません。
フォーラムでAdept2が無いのが原因ということで解決していますが、エラーを見たただけではAdept2が無いのが原因と分からないので、Adept2が要るということに注意が必要です。
dpkg: パッケージ digilent.waveforms の処理中にエラーが発生しました (--install):
 依存関係の問題 - 設定を見送ります
desktop-file-utils (0.23-1ubuntu3.18.04.2) のトリガを処理しています ...
gnome-menus (3.13.3-11ubuntu1.1) のトリガを処理しています ...
mime-support (3.60ubuntu1) のトリガを処理しています ...
man-db (2.8.3-2ubuntu0.1) のトリガを処理しています ...
shared-mime-info (1.9-2) のトリガを処理しています ...
処理中にエラーが発生しました:
 digilent.waveforms

AnalogDiscovery2をPCにUSB接続した状態でWaveFormsを起動すると、Analog Discovery2を認識した状態でWaveFormsが起動します。


電流測定回路を作成

Analog Discovery2を使うためのソフトウェアの準備はできたので、今度は測定対象の回路を作ります。

AnalogDiscovery2の1+と1-のピンからオスメスジャンパワイヤで信号線を引き出して、10Ωの抵抗(10Ωの抵抗を持っていなかったので、120Ω10並列)に接続しました。
この抵抗を介して電流量を測定したい部品に電力を供給し、抵抗の電圧を計測することで電流量を測定します。


Analog Discovery2から回路に給電

Analog Discoveryは±5V700mAまでなら回路への給電が可能です。
今回測定する対象は700mA以下でどうさするものなので、この給電機能を利用しました。

WelcomeタブのSuppliesを選択します。


V+を5Vに合わせて「Master Enable is Off」を選択すると、Analog Discovery2のV+と↓(GND)の間に5Vが供給されます。


V-は負の電圧を出力するピンなので、V+とV-ではなく、V+と↓(GND)を接続することに注意してください。


給電中はSuppliesタブに赤丸が表示されます。


1kΩの抵抗の電流量を計測

試しに1kΩの抵抗の電流量を計測してみます。

先ほど作った電流測定回路を通して1kΩに5Vを供給します。
5VはAnalog Dicvoery2のV+から供給します。



回路図はこちらです。


では、電圧をWaveFormsで確認します。
WaveFormsのWelcomeタブ左側のScopeを選択してオシロスコープ画面を表示します。


オシロスコープ画面でRunを選択すると、測定が始まります。


測定結果が表示されました。


表示されたものの結果の値が小さくて見づらいため、表示単位を変更します。
画面右側のOptionsのChannel1のRangeを 20 mV/div にしてみます。(測定値によって都合の良い単位に変更してください。)


先ほどより結果が見やすくなりました。


グラフ上でダブルクリックするとマウスカーソルの位置に縦線が表示され、線と交差する値が表示されて便利です。


Stopを選択してグラフの更新を止めると、動いていないグラフを分析できます。


測定結果は約48mvでした。
使っている抵抗は10Ωなので、オームの法則に割り当てると、

I = V/R = 0.048 / 10 = 0.0048

となり、4.8mAが流れているということになりました。

1kΩの抵抗に5Vを供給したときの電流量の理論値は、

I = V/R = 5/1000 =0.005

となり、理論値5mAに対して4.8mAが計測できたので、誤差約2%で計測できたようです。

WaveFormsの電圧表示を電流量表示に変換

電圧を抵抗値で割って電流量がグラフに表示されたら自分は嬉しいので、WaveFormsの表示機能を利用して電流量を表示します。

WaveFromsのScope画面右側のAdd ChannelからCustomを選択肢ます。


Mathチャンネルが追加されるので、チャンネル下部の計算式を選択します。


計算式設定画面が表示されるので、計算式を「C1/10」(C1/利用する抵抗値)に、単位をAに変更してOKを選択します。


電圧の測定単位を変えたときと同様に、見やすい単位に変更してください。


M1として電流量がグラフに表示されるようになりました。


表示しなくても良いグラフは、名前の横のチェックを外すことで隠せます。


電流量だけを表示するグラフができました。


装置の電流量を測定

電流量を測定できる状態になったので、いくつかの装置の電流量を測定してみました。

赤色LED + 1kΩ抵抗



約2.9mAでした。


青色LED + 1kΩ抵抗



約2.2mAでした。
青は強いと自分は思っていたので電流量が多いものかと思っていましたが、赤色より電流量は低いという結果になりました。
青色を光らせる電圧さえ確保できれば、今回試したLEDに関しては、消費電力は赤より青の方が少なくなるようです。


LチカするProMicro

以前RXとTXのピンでLチカ出来ると判明したProMicro(ProMicroでLチカする方法)を0.5秒単位でこのように光らせて電流量を測ってみました。
  1. 全部消灯
  2. RX点灯
  3. RXとTX点灯
  4. TX点灯
  5. 最初に戻る


表示幅が短い時間だと、レギュレータから発生しているであろう波は分かりますが、LEDの状態変化による電流量の変化は一覧できません。


マウルのスクロールや2本指タップの上下スクロールで表示時間幅を短くしたり長くしたりできます。
10秒前後の変化を表示するように変更してみたところ、LEDの状態によって電流量が変わっていることがグラフで分かりました。


両方のLEDを点灯しているときは約44mAでした。


片方のLEDを点灯しているときは約38mAでした。


LEDを点灯していないときは約31mAでした。


今回試したProMicroは、通信用のLEDを1つ点灯することで約7mAの電流が流れると分かりました。

自分が遭遇した、困った場面の対応方法

長くした表示時間を短く戻したいとき

スクロールでグラフの表示時間を長くすることは出来るのですが、長くした後にスクロールで短い表示に戻ろうとすると、「The base time will be extended」とエラーが出て短くできないことがあります。

そういう場合は、Scopeタブ右側のTimeのBaseを小さい値に変更すると、短い表示時間に変更できます。


測定しているのにグラフが出てこないとき

Scopeタブ右側のTimeのPositionを0にしてBaseを小さな値にすると初期と似た画面に戻れて、再びグラフを確認できるようになると思います。



まとめ

10Ω±5%の抵抗を利用したので誤差が最大5%あったり小さい電流量は誤差が大きかったりすると思いますが、Analog Discovery 2を利用して電流量を測定できました。

消費電力が気になることが時々あったので、そういう場面で利用していこうと思います。

参考

Measuring Current with the Analog Discovery 2
Analog Discovery - Ohm's Law and Voltage-current Characteristics

変更履歴

2022.07.26
waveformsインストール時に依存ライブラリが必要だったので、dpkgではなくapt --fix-borken installを利用して一緒にインストールするコマンドに変更しました。

0 件のコメント :