前回のmicro:bit互換の基板を使ったPicoの応用編です。これを使ったオシロスコープを作ります。オシロスコープを使ったことがない人がほとんどでしょうが、電気信号をグラフとして表示する機器です。
例えば、音やコンピュータの通信などを電圧変化としてグラフ化してくれます。理科や電子工作で使えますね。
アンドロイドスマホのアプリ「Scoppy」を使うと簡単にオシロスコープが作れ、さらに基本機能だけだと無料です。
測定した信号が(0~3.3V)であれば、単純にiːoのGNDとP0端子をみの虫クリップで測定物につなぐだけです。(安全のために、直列に10kΩ程度の抵抗を入れた方がよりよさそうです。)
交流のようなマイナスからプラスまで変化する場合は、次の写真のように抵抗を2個使用し分圧し、中間をGNDにすることで、-1.65~+1.65Vまで測定可能になります。
測定
サーボモーターの制御信号
サーボモーターを制御する信号は、周期を20ミリ秒、周波数でいえば50Hzです。そこで、micro:bitにサーボモーターを0~180°の繰り返しになるようにプログラムし、その信号を読んでみました。
こちらが、Picoのオシロスコープで測定した動画です。周波数は、50Hzのままですが、パルス幅(同時に、右下にDuty値が変化します)が広がっていることが分かります。
実は、私は周波数が変化しているとばかり思っていたので、新しい知見を得ることができました。
音の測定
こちらは、iːoの3VとGNDの間に1kΩを2個直列につなぎ(分圧抵抗)、間からGNDとして取り出しています。パソコンのイヤホン端子から音を取り出しています。下が、ピアノの音です。振動しながら徐々に音が減衰していく様子を捉えています。このような測定をする場合は、Trig(トリガー)を設定すると瞬時の波形を保存できます。
今回の回路だと、3.3Vまでしか測定できないのですが、抵抗を使って分圧することで数十ボルトまでの測定も可能になります。ネットに回路などがいろいろ載っていますので、参考にしてください。
また、Picoのオシロスコープは150kHzぐらいまでの測定範囲です。
このPicoを使ったオシロスコープは、特にiːo(イーオ)を使わなくても作れますが、気軽にみの虫クリップで測定できるので紹介してみました。学校教育や趣味の範囲で、いろいろな信号を測定するのに役立ちそうです。何たって、1000円程度で制作できます。