2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Sequence Makerの仮想インターフェイスを使う

Last updated at Posted at 2024-12-07

はじめに

Sequence MakerはExcelから測定器を制御可能にするアドインです。Sequence MakerはV1.70から仮想インターフェイスというものが追加されました。これは、実際の測定器ではなく、Sequence Maker内にある仮想的な測定器(?)と通信するためのものです。この記事では実際に仮想インターフェイスと通信してみて、使い勝手を確認してみます。なお、Sequence Makerについての詳細は以下の記事を参照ください。

お断り
本記事の内容はSequence Maker開発元の公式見解ではなく、あくまでも個人が趣味の範囲内で執筆しているものです。記事の内容について開発元へ問い合わせることはお控えください。ご質問・要望などは各記事のコメント欄へお願いいたします。

仮想インターフェイス

仮想インターフェイスは、リボンのインターフェイス選択の中にあります。ここで「仮想」を選ぶだけですぐに使えます。

image.png

仮想インターフェイスに対しては、通常の測定器と同じようにコマンドの送受信が可能です。例えば、共通コマンドである「*IDN?」を送ってみると、ちゃんと応答が返ってきます!

image.png

他にも、「*ESR?」や「*OPC?」、「*TST?」といった共通コマンドにも応答を返します(応答する値は固定)

image.png

応答をカスタマイズ

応答内容はカスタマイズすることができます。「コマンド」ボタンを押すとコマンドを定義するウィンドウが表示されます。

image.png

image.png

例えば、こんな感じにコマンドを定義します。なお「*IDN?」などはここで再定義すると、こちらが優先されます。また、SCPIに準拠した書き方ができるので、コマンドを大文字+小文字で書いておくと、大文字部分だけを省略形(ショートフォーム)として使用できます。
なお、このコマンドと応答の表は、範囲選択してコピペが可能です。定義をExcelのシートにコピペすることもできますし、逆にExcelのシートからこの表にコピペすることもできます。

image.png

それでは、実際にコマンド送受信をしてみます。

image.png

定義した通りに応答が返ってきていますね。

特別な応答

ところで、デフォルトで入っている1行目の定義は何でしょうか?

image.png

実は応答の「${INPUT}」は特殊な応答で、これを書いておくとシーケンス実行時に任意の応答を入力するウィンドウが表示されます。

image.png

適当に応答を入れると、セルに出力されます。状況に応じて応答を動的に変えたいような場合に使えますね。
image.png

保存と読み込み

定義したコマンドは、ファイルとして保存したり、読み込んだりできます。先ほどの定義を保存してみるとこんな感じのXMLファイルとして出力されます。バックアップしたり、他のユーザーと共有したりできます。

定義を読み込むと、入力済みの内容はクリアされるので注意!

<?xml version="1.0" encoding="utf-8"?>
<ArrayOfVirtualCommand xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <VirtualCommand>
    <Command>:INPUT?</Command>
    <Response>${INPUT}</Response>
  </VirtualCommand>
  <VirtualCommand>
    <Command>*IDN?</Command>
    <Response>HOGE,Piyopiyo,123,V1.00</Response>
  </VirtualCommand>
  <VirtualCommand>
    <Command>:FREQuency?</Command>
    <Response>100</Response>
  </VirtualCommand>
  <VirtualCommand>
    <Command>:VOLTage?</Command>
    <Response>200</Response>
  </VirtualCommand>
  <VirtualCommand>
    <Command>:SPEEd?</Command>
    <Response>FAST</Response>
  </VirtualCommand>
  <VirtualCommand>
    <Command>:RANGe?</Command>
    <Response>100mOhm</Response>
  </VirtualCommand>
  <VirtualCommand>
    <Command>:日本語も?</Command>
    <Response>大丈夫だよ。</Response>
  </VirtualCommand>
  <VirtualCommand>
    <Command />
    <Response />
  </VirtualCommand>
</ArrayOfVirtualCommand>

SCPIの対応について

これまでの説明で、共通コマンドの「*IDN?」は自分で定義しなくても応答が返ってくるとか、大文字+小文字でコマンドを定義すればショートフォームにも対応するとか書きましたが、これらはSCPIに準拠した動きになっているためです。Sequence Makerの仮想インターフェイスは、デフォルトでSCPI準拠になっているのですが、これはデフォルトでSCPIの設定がONになっているためです。詳細設定の画面でSCPIの✅を外すと、SCPI準拠はOFFとなり、コマンド定義のテーブルには完全一致した場合のみ応答を返すようになります。

image.png

ところで、仮想インターフェイスって何に使うの?

  • 測定器の実機が無い状態で、シーケンスだけ先に組んでおきたいような場合のデバッグ用途
  • 測定器は無いけれど、カメラ機能だけを使いたいとき
  • 測定器は無いけれど、CONTECのデジタル入出力ユニットだけを使いたいとき
  • etc...

まとめ

今回は仮想インターフェイスについて紹介してみました。一般的な用途ではあまり使う機会が無いかもしれませんが、ふとしたときに便利な機能なので、ぜひお試しください。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?