スマートオシロを作ろう(1)

やりたいこと

オシロを基板に当てて波形を見る時、両手がふさがってオシロの操作に困ることがよくあります。そこで今流行りのAIスピーカを使って、声で操作できるようにしたいと思ってます。具体的には、Google AIY Voice Kitで音声を認識し、LAN経由でオシロを制御します。オシロはOWON SDS7102Vを使います。SDS7102VはLANまたはUSB経由での制御が可能です。今回は、特別なドライバを必要としないLANを利用することにします。
写真

SCPIコマンド

SDS7102Vの制御には、SCPI(スキッピ)というコマンド言語が使われています。SCPIはUSBやLANなどで簡単な文字列を送ることでさまざまな計測機器をコントロールする標準規格です。SDS7102で使用できるコマンドは下記のドキュメントに記されています。

スマートオシロで最低限必要そうなコマンドを下記に列挙します。

SCPIコマンドモードに入る

:SDSLSCPI#
応答→ :SCPION

時間のスケールとオフセット

:TIM:SCAL <スケール>
<スケール> = {
2.0ns|5.0ns|10ns|20ns|50ns|100ns|200ns|500ns|
1us|2us|5us|10us|20us|50us|100us|200us|500us|
1ms|2ms|5ms|10ms|20ms|50ms|100ms|200ms|500ms|
1s |2s |5s |10s |20s |50s |100s}


:TIM:HOFF <オフセット>
<オフセット> = -500〜+500 (50で1DIV)

チャンネルのスケールとオフセット

:CHAN<チャンネル>:SCAL <スケール>
<チャンネル> = {1|2}<スケール> = {2mV|5mV|10mV|20mV|50mV|100mV|200mV|500mV|1V|2V|5V|10V}


:CHAN<チャンネル>:OFFS <オフセット>
<オフセット> = -250〜+250 (25で1DIV)

トリガ

:TRIG:MODE <モード>
<モード> = {AUTO|NORM|SING}


:TRIG:SING:EDGE:SOUR <ソース>
<ソース> = {CH1|CH2}


:TRIG:SING:EDGE:SLOP <スロープ>
<スロープ> = {RISE|FALL}


:TRIG:SING:EDGE:LEV <レベル>
<レベル> = -150〜+150 (25で1DIV)

次のステップ

次回はこれを送信するPythonプログラムを作成します。