「DSO Quad」という小型のオシロスコープを購入しました。
「DSO Quad」は、ホビーユースの、小型4チャネルデジタルストレージオシロスコープです。
私はこれまでオシロスコープを使ったことがありませんでしたので、今回、初めて使うことになります。
このような箱に入っています。
中はこのような感じです。
付属品は以下のとおりです。
- 本体
- 英文マニュアル
- オシロスコーププローブ(x2)
- デジタルプローブ(x2)
- 六角レンチ
本体の電源を入れると、このような画面が表示されます。
Web上に、英文のマニュアルが掲載されています(こちら)。本体に付属しているマニュアルとは違うものです。
まずは、このWeb上のマニュアルに記載されている使用例(Example One : Measure simple signals)に従って、操作してみます。
- ひとつめのプローブを「WAVE OUT」ソケットに挿入します。
- もうひとつのプローブを「CH_B」ソケットに挿入します。
- これらの2つのプローブをつなぎます。
- Gフィールドで出力波形を「方形波」、Hフィールドで周波数を「20KHz」、Iフィールドでデューティサイクルを「50%」に設定します。
- Cフィールドの上部でCH_Bについて「DC」を選択し、Cフィールドの下部で「2V」を選択します。
- Fフィールドの上部で「AUTO」を選択し、Fフィールドの下部でサンプリング時間を「20uS」に調整します。
- Jフィールドで「negative pulse widrh」を選択します。カーソルが黄色になっていることを確認します。
- KフィールドのトリガレベルTHRを調整して、安定したトレースを表示します。こちらも黄色になっていることを確認します。
このような画面が表示されました。
なお、表示画面の構成は以下のようになっています(上記のマニュアルより)。
画面上部左に入力エリア(Aフィールド〜Fフィールド)、画面上部右に出力エリア(Gフィールド〜Iフィールド)、画面右部に測定エリア(Jフィールド〜Tフィールド)があります。
フィールド間の移動や各値の設定には、「Jump(▲)ボタン」、「Select(−・+)スイッチ」、「Navigate(<・>)スイッチ」を使います。
- Jump(▲)ボタンを押すと、「入力エリア」⇔「測定エリア」の移動ができます。
- Navigate(<・>)スイッチをスクロールすると、各エリア内でフィールドの移動ができます。なお、入力エリア内のフィールド移動では、出力エリアの「Gフィールド」まで移動できます。
- Gフィールドに移動してから、Select(−・+)スイッチを押すと、出力エリア内を移動できます。
- 各フィールドでSelect(−・+)スイッチをスクロールして、値を変更できます。
さて、それでは実際に、信号を測定してみたいと思います。
ずっと測りたかったのは、M5Stackの電源です。
外付けセンサをつけた時など、たまに挙動がおかしい時があり、電源が不安定なのではないかと疑っています。
M5Stackから、ジャンパー線で「3V3」と「G」を取り出し、プローブとつなぎます。
M5Stackに空のスケッチ(Arduino IDEで「新規ファイル」を選んだ時に開くもの)を書き込みます。
オシロスコープで測ると、以下のとおり、電源はそれなりに安定しています。
次に、このスケッチの先頭に「#include <M5Stack.h>」を、setup内に「M5.begin();」だけを追加して、M5Stackに書き込みます。
オシロスコープで測ると、以下のとおり、電源は先ほどに比べて大きくゆれています。
「M5.begin();」は、M5Stackを使う限りは、どんなスケッチでもまず間違いなく使うものですが、これにより、電源が不安定になっているようです。
ちなみに、「5V」-「G」間を測ったところ、「M5.begin();」があっても、それなりに安定していました。
2020/3/1追記
M5Stackの電源ノイズが気になったので、もう少し調べてみることにしました。
M5Stackから、ジャンパー線で「3V3」と「G」の信号を取り出し、プローブとつなぎます。
M5Stackにスケッチを書き込んで、「3V3」-「G」間の電位差を測りました。
なお、電源はPCから給電しています。
空のスケッチ →22mV
setupに「M5.begin();」を追加 →114mV
setupにてLCDに文字列表示を追加 →118mV
setupにてWi-Fi接続の処理を追加 →118mV
setupに「M5.begin();」を追加することによって、ノイズが大幅に増大しました。
次に、「5V」-「G」間についても、同様に調査しました。
空のスケッチ →12mV
setupに「M5.begin();」を追加 →10mV
setupにてLCDに文字列表示を追加 →10mV
setupにてWi-Fi接続の処理を追加 →26mV
setupにてWi-Fi接続の処理を追加することによって、以下のようなスパイクノイズが発生するようになりました。
上記はPCから給電したときの結果ですが、5V電源については、電源供給方法の違いによっても差がでると思われるので、同じスケッチで、供給電源だけを変更して測定しました。
内蔵バッテリーで駆動 →46mV、スパイクノイズなし
ACアダプターで駆動 →78mV、スパイクノイズなし
電源供給方法の違いによって、電源ノイズは全く異なる形状になりました。
2台のM5Stackで調査しましたが、概ね同じ結果になりました。
私がM5Stackを使う時には、ほとんどの場合はWi-Fi接続を使っているので、5V、3V3ともに、結構大きなノイズが発生していることになります。
外付けセンサをつなぐ場合は、あまり電源電圧に敏感な使い方はしないよう、注意しなければいけなさそうです。
なお、私がM5Stack、M5StickCの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。
ごく基本的なところから、かなり複雑なスケッチや、ネットワーク接続など、比較的高度なものまで、つまづかずに読み進めていけるような構成になっており、大変わかりやすい本です。
このサイトで書いている、M5Stackシリーズ(M5Stack、M5StickCなど)に関するブログ記事を、「さとやまノート」という別のブログページに、あらためて整理してまとめました。
他のM5Stackシリーズの記事にも興味のある方は「さとやまノート」をご覧ください。