Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>InstrumentLinkNew to Visual Studio Code? Get it now.
InstrumentLink

InstrumentLink

tkworks

|
1 install
| (0) | Free
MDO34・DHO804の画面をUSB VISAでPNG保存するPython 3.9.4対応の試用版。MDO34模擬モードでCSV・一括取得を検証できます。Windowsの導入手順はコマンドプロンプト(cmd.exe)向けです。
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

InstrumentLink — Windows 11・MDO34導入手順

試用版 0.0.4(2026-10-15)。MDO34をUSB接続してPNG画面を保存するためのVS Code拡張です。Python 3.9.4対応版です。パブリッシャーはtkworks、拡張機能IDはtkworks.instrumentlinkです。導入手順はWindowsの**コマンドプロンプト(cmd.exe)**向けです。Windows実機での動作確認は保留中です。

操作 実機MDO34 MDO34模擬モード
USB検索・識別、PNG保存 確認対象 合成機器・16×16の灰色画像
CSV・条件JSON、PNG+CSV一括 未対応 1024点の合成三角波、CH1~CH4
同名画像・CSVの上書き 中止して原本を保護 原本退避・復元付き
詳細ログの手動JSON保存 利用可能 利用可能

CSVの実測値保存、Math、画像クリップボードコピー、強制終了後の自動復旧は未対応です。DHO804の処理も含まれますが、今回の確認対象はMDO34です。STOP/RUNやチャンネル表示は操作しません。

配布ファイルと必要環境

配布フォルダのinstrumentlink-0.0.4.vsix・README.md・requirements.lockを同じフォルダへコピーしてください。VSIXに拡張本体とPythonブリッジを同梱しているので、Gitリポジトリ、Node.js、開発用フォルダは作業PCに不要です。

  • Windows 11 x64、デスクトップ版VS Code 1.96以降。WSL内ではなくWindows側で使用します。
  • Python 3.9.4 x64。3.9系列の別版ではなく、下記コマンドで3.9.4を確認してください。Python本体と依存パッケージはVSIXに含めません。
  • MDO34本体、USB device端子へ接続するUSBケーブル、ローカルの保存フォルダ。
  • Python依存の初回導入にはインターネット接続が必要です。以下はオフライン導入一式ではありません。

1. Python環境を準備する

Python 3.9.4 x64を用意します。導入済みなら、そのPythonを使用します。Python公式の3.9.4配布ページではWindows installer (64-bit)が対象です。

Windowsのスタートメニューで「コマンドプロンプト」を検索するか、Win+Rでcmdと入力して開きます。VS Code内ではターミナルのプロファイルをCommand Promptにします。通常のユーザー権限で実行できます。

以下は同じコマンドプロンプトで、順番に1行ずつ実行してください。echo %ERRORLEVEL%が0なら次へ進みます。0以外やエラーが出た場合は、その手順で止めて原因を確認してください。コードブロックをまとめて貼り付ける手順ではありません。

1-1. 配布フォルダを開き、Pythonの版を確認する

ZIPを展開したフォルダへ移動します。下のパスは実際にrequirements.lockがあるフォルダへ置き換えてください。/dを付けることで、別ドライブにも移動できます。

cd /d "C:\実際の展開先\instrumentlink-0.0.4"
echo %ERRORLEVEL%
dir requirements.lock
py -3.9 -c "import sys, struct; print(sys.version); print(struct.calcsize('P') * 8); assert sys.version_info[:3] == (3, 9, 4) and struct.calcsize('P') == 8, 'Python 3.9.4 x64 is required'"
echo %ERRORLEVEL%

Pythonの出力が3.9.4・64であることを確認します。py -3.9で別の3.9版が選ばれる場合はpy -0pで導入先を確認します。py自体がない場合はPythonの導入先を確認し、以下を含むpy -3.9の部分を"C:\実際のPython導入先\python.exe"へ置き換えてください。

1-2. InstrumentLink用の仮想環境を用意する

旧版のPython 3.11環境と分けるため、VisaScope\venv-py394を使用します。set "名前=値"の外側の引用符は、空白を含むパスを安全に指定するためのものです。

set "VSCOPE_VENV=%LOCALAPPDATA%\VisaScope\venv-py394"
if not exist "%VSCOPE_VENV%" py -3.9 -m venv "%VSCOPE_VENV%"
echo %ERRORLEVEL%
set "VSCOPE_PYTHON=%VSCOPE_VENV%\Scripts\python.exe"
"%VSCOPE_PYTHON%" -c "import sys, struct; print(sys.version); assert sys.version_info[:3] == (3, 9, 4) and struct.calcsize('P') == 8, 'Wrong virtual environment'"
echo %ERRORLEVEL%

既存フォルダがある場合は作成を省略し、その環境の版を検査します。python.exeが見つからない場合や別版の場合は先へ進まず、VSCOPE_VENVに未使用の別フォルダを指定してこの節をやり直してください。既存環境を削除したり、上から作り直したりする必要はありません。仮想環境のactivateは不要です。

1-3. 固定した依存を導入する

Python 3.9.4で使用するpipを指定してから、同梱の依存一覧を導入します。それぞれの終了コードを確認してください。

"%VSCOPE_PYTHON%" -m pip install --upgrade pip==24.0
echo %ERRORLEVEL%
"%VSCOPE_PYTHON%" -m pip install -r requirements.lock
echo %ERRORLEVEL%
"%VSCOPE_PYTHON%" -m pip check
echo %ERRORLEVEL%

VSIXだけを入手した場合は、requirements.lockを使う行だけを次へ置き換えます。フォルダ移動・dir requirements.lockは不要ですが、Pythonの版確認、仮想環境、pipの準備、pip checkは同じです。

"%VSCOPE_PYTHON%" -m pip install PyVISA==1.14.1 PyVISA-py==0.7.2 PyUSB==1.3.1 libusb-package==1.0.30.0 typing_extensions==4.16.0 importlib_resources==6.5.2 zipp==3.23.0
echo %ERRORLEVEL%

1-4. 読み込みを確認してPython Pathを控える

"%VSCOPE_PYTHON%" -c "import pyvisa, pyvisa_py, usb, libusb_package; print('imports OK'); available = libusb_package.get_libusb1_backend() is not None; print('libusb available:', available); assert available, 'libusb backend is unavailable'"
echo %ERRORLEVEL%
echo %VSCOPE_PYTHON%

pip checkが依存関係の不整合なし、最後の検査がimports OK・libusb available: True・終了コード0になればPython側の準備ができています。この検査は機器へ通信せず、USBドライバがMDO34を開けることまでは保証しません。

最後に表示されたC:\Users\…\AppData\Local\VisaScope\venv-py394\Scripts\python.exeを控え、VS CodeのPython Pathに指定します。%VSCOPE_PYTHON%という文字列ではなく、表示された絶対パスを入力してください。旧版のVisaScope\venvを使っていた場合も切り替えます。setの変数は現在のコマンドプロンプトだけで有効なので、閉じて開き直した場合は1-2の変数設定を再実行してください。

依存導入がネットワーク制限で止まる場合は、作業PCの管理方針に沿ったプロキシ・配布方法を確認してください。Python 3.9.4と固定依存によるMacでの模擬動作は検証済みですが、Windows上のコマンド実行・USBドライバ・MDO34の実応答は未検証です。

2. VSIXをインストールして模擬動作を確認する

  1. VS Codeの拡張機能ビュー(Ctrl+Shift+X)右上の「…」から VSIXからのインストール / Install from VSIX… を選び、instrumentlink-0.0.4.vsixを指定します。求められたらウィンドウを再読み込みします。
  2. PNG/CSVパネルを開く前に、設定(Ctrl+,)でvisaScopeを検索します。ユーザー設定の Python Path に、手順1のPython実行ファイルの絶対パスを指定します。引用符は付けません。
  3. Simulate をオン、Simulate Model をMDO34にします。未設定の初期値は実機モード(Simulateオフ)です。
  4. コマンドパレット(Ctrl+Shift+P)で InstrumentLink: PNG・CSV取得パネルを開く を実行します。エクスプローラー内にパネルが表示され、初回に検索します。
  5. SIMULATION / MDO34 / SIM-ONLYと模擬モードの案内を確認します。出ない場合は「再検索」を押します。
  6. 「PNGを保存」で新しいローカルフォルダと基準名を選び、容量確認で「続行」を押します。16×16の灰色PNGが作成されれば模擬動作は成功です。実機画面ではありません。

設定JSONを直接編集する場合の例です。ユーザー名を自分の環境に置き換えてください。JSON内の\は\\と書きます。%LOCALAPPDATA%や~は設定値の中では展開されません。

{
  "visaScope.pythonPath": "C:\\Users\\YOUR_NAME\\AppData\\Local\\VisaScope\\venv-py394\\Scripts\\python.exe",
  "visaScope.simulate": true,
  "visaScope.simulateModel": "MDO34"
}

VSIXの導入方法はVS Code公式手順にも記載されています。

実機確認が保留中の間は、ここまでの模擬モードで使用してください。以下の3〜4節は実機確認を再開するときの手順です。

3. WindowsのUSBドライバを確認する

この版はPyVISA-py(@py)+PyUSB+libusbを使用します。NI-VISA/TekVISAを選択する設定はありません。メーカーのVISA環境だけを導入しても、この版から接続できるとは限りません。

WindowsではMDO34のUSBTMCインターフェースに、libusbから利用できるWinUSB等のドライバが必要です。デバイスマネージャーでMDO34に対応するデバイス・ドライバを確認します。既に互換ドライバで使える場合は変更不要です。対応する機器を開いているメーカーソフトや他のVISAツールは閉じてください。

接続できずドライバ変更が必要な場合は、作業PCの管理者と確認して実施してください。PyVISA-py公式には、ZadigでWinUSBへ切り替える方法が案内されています。変更する際はMDO34の対象インターフェースだけを選び、元のドライバ名・版と戻し方を記録してください。既存のメーカー計測ソフトから使えなくなる場合があるため、他のUSB機器やインターフェースを変更しないでください。このパッケージがドライバを自動変更することはありません。

根拠:PyVISA-pyのUSB導入条件、libusbのWindowsドライバ案内、PyUSBのlibusb導入案内。

4. MDO34の実機PNGを保存する

  1. MDO34の電源を入れ、背面のUSB device端子とPCを接続します。USBメモリ用のhost端子には接続しません。最初はローカル保存先で、新しい名前を使います。
  2. 本体の表示画面、画像形式、InkSaverの状態を控えます。必要なら利用者が本体をSTOPにしてください。拡張はSTOP/RUNを変更しません。
  3. VS Code設定の Simulateをオフ にして、パネルの「再検索」を押します。
  4. TEKTRONIX / MDO34と本体のシリアル・ファームウェア表示を確認し、対象を選びます。SIMULATIONやSIM-ONLYなら実機確認になりません。
  5. 「PNGを保存」を押し、保存フォルダ、拡張子を除く基準名を指定します。初期名は001_日時_MDO34です。
  6. 容量確認で「続行」を押し、保存成功通知を待ちます。画像上限は64 MiBで、管理領域等を含む全必要量は未確定です。既知の不足があれば中止します。
  7. 保存PNGを自分で開き、灰色の模擬画像ではなく本体の画面全体が保存されたこと、文字・波形・色・画像寸法を確認します。本体の画像形式とInkSaverが元に戻ったことも確認します。
  8. 新しい名前でもう1枚保存して、連続取得を確認します。連番を使用した成功時だけ次回番号が1つ進みます。同名の実機PNGは上書きせず中止します。

MDO34では必要に応じて画像形式をPNG、InkSaverをOFFへ一時変更し、取得後に復元を照会します。チャンネル表示や演算設定は操作しません。「キャンセル」は通信の区切りで受け付け、応答を読み終えて復元・整理するまで待つことがあります。

復元未確認や残存ファイルが通知された場合は、通知のパスと本体の設定を確認してから「状況を確認した」を押します。取得中のUSB抜去、VS Code強制終了、電源断からの自動復旧は保証していません。最初の確認は正常な検索・保存・連続取得から行ってください。

5. ログと確認結果を持ち帰る

取得後にパネル下部の ログをJSON保存 を押し、保存先を選びます。操作開始時点のログが読取専用表示され、UTF-8のJSONへ保存されます。ログは起動中の直近500件で、再起動すると消えるので終了前に保存してください。PNG本体やCSVの全データはログに含まれません。保存先・エラー説明・機器識別を含むことがあるため、共有前に内容を確認してください。

実機確認後は、Windows・VS Code・Pythonの版、MDO34のファームウェア、USBドライバ、保存したPNG、ログJSON、正常保存/連続保存/取消で観察した結果を記録してください。未実施の操作は未実施と記載します。模擬確認やMacでの検証をWindows実機の成功に置き換えないでください。

困ったとき

状況 確認すること
Pythonの設定を求められる/起動できない Python Pathは実行ファイルの絶対パスか。フォルダ・引用符・%LOCALAPPDATA%を指定していないか。
拡張が無効/パネルを開けない VS CodeがRestricted Modeの場合、自分で作成した作業フォルダの内容を確認して信頼するか、信頼済みの作業フォルダで開く。
模擬検索も失敗する 手順1のimport検査とpip checkを、設定した同じPythonで実行。依存導入後に「再検索」。
実機が見つからない/識別失敗 Simulateオフ、USB device接続、対応ドライバ、他ソフトによる占有、機種を確認。
メーカーソフトでは認識するが拡張では認識しない この版はメーカーVISAではなく@py固定。USBドライバ互換性を確認。
保存できない 新しい名前、書込可能なローカルフォルダ、空き容量、残存物の確認欄を確認。
取消後にすぐ操作できない 応答の読み切り・設定復元・ファイル整理の完了を待つ。復元未確認なら本体も確認。
CSV・一括ボタンが使えない 実機では未対応。模擬CSVは実測値ではない。

更新・削除とライセンス

旧IDのtkworks.vscopeまたはbotchan007.visa-scopeからは別の拡張としてインストールされます。旧版を導入済みの場合は、拡張機能ビューで旧版を無効化またはアンインストールしてからtkworks.instrumentlinkを導入し、ウィンドウを再読み込みしてください。旧版との同時有効化は避けてください。設定キーはvisaScope.*を維持しているため、Python PathとSimulate設定を引き継げます。保存先の記憶は引き継がれない場合があるため、初回保存時に確認してください。

更新版も「VSIXからのインストール」で導入し、必要に応じて再読み込みします。Python仮想環境は拡張の外にあります。既に3.9.4用環境を使っている場合は更新後も同じパスを使用できますが、0.0.3の3.11用環境から移行する場合は手順1の新しい環境へ切り替えてください。アンインストールはVS Codeの拡張機能ビューから行います。保存データと自分で用意したPython環境は自動削除されません。

拡張本体・同梱ブリッジはMIT License。Python本体、PyVISA、PyVISA-py、PyUSB、libusb-package等は別途導入する外部ソフトウェアで、それぞれのライセンスが適用されます。本VSIXに第三者のPython環境・USBドライバ・開発用依存は同梱しません。

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft