Kikusui KI-VISAリリースノート

リリースノート


サポートされるオペレーティング・システム

x64 (64bit) Windows

Version32bit apps(WOW64)64bit apps
10SUPPORTED(*1,*2)SUPPORTED(*2)
Server 2012SUPPORTED(*1,*2)SUPPORTED(*2)
8/8.1SUPPORTED(*1,*2)SUPPORTED(*2)
Server 2008 R2SUPPORTED(*1)SUPPORTED
7SUPPORTED(*1)SUPPORTED
VistaSUPPORTED(*1)SUPPORTED

Version32bit apps
10SUPPORTED(*2)
8/8.1SUPPORTED(*2)
7SUPPORTED
Server 2008SUPPORTED
VistaSUPPORTED

  • (*1) CONTEC GPIBはWOW64環境では動作しません。従って32bitアプリケーションでCONTEC製GPIBボードからの計測器制御は出来ません。
  • (*2) インタフェース社製GPIBに関しては現在ハードウェアを所有していない為、Windows 8での動作確認をしていません。しかしデバイスドライバがサポートしていれば動作すると思われます。
  • Windows XP, 2000, Server 2003に関しては動作保証していません。
  • x64環境でGPIBを使用する場合、適切な64bit版GPIBドライバーがハードウェアベンダーから提供されている必要があります。
  • USB機器に関しては、IVIのUSBTMCドライバがVISA Shared Componentで提供されます。これは全てのVISAライブラリベンダーで共通です。

ハードウェア確認リスト

VER 5.x

下記のハードウェアが動作している事が確認されています:

  • 標準シリアル通信インターフェース(USBシリアル変換ケーブルでは動作する場合としない場合あり)
  • USB (USBTMC及びUSBTMC-USB488仕様に準拠した計測器)
  • LAN VXI-11, SCPI-RAW, HiSLIPに準拠したLAN搭載計測器
  • コンテック社製GPIB – GP-IB(PCI)L, GP-IB(PM), GP-IB(CB)F, GP-IB(PCI)F, GP-IB(LPCI)F, GP-IB(PCI)FL, GP-IB(CPCI)F
    (API-GPIB Ver5.0) 古いモデル(Fの付かないシリーズ)は64bitシステムでは動作しないので注意してください。
  • インタフェース社製GPIB – モデルGPC-4301
    (LabVIEW互換ドライバー、GPC-4301N Ver3.0)
  • National Instruments社製GPIB – モデルGPIB-ENET/100, GPIB-USB-B, GPIB-USB-HS, PCI-GPIB
    (NI-488.2M Ver2.73)
  • Agilent Technologies社製GPIB – モデル82350(PCI-GPIB)
    (IO Libraries Suite 15.5、Agilent 488オプション使用時)

既知の問題(未対策):

  • TekVISAが先にインストールされていた際、TekVISAを一旦アンインストールしても、KI-VISA setupはTekVISAが存在すると誤認識する。 これはTekVISAのアンインストーラーがレジストリを正しく削除しないのが原因。KI-VISA setupを続行しても問題ない。
  • INTERFACE製GPIBを使用している場合、IO Configurationで計測器の検索を行っても実際の計測器がヒットしない。 これはINTERFACE製GPIBのGPIB-32.DLLでFindLstn()関数が正しく動作していないのが原因。 この場合、計測器のGPIBアドレス毎に個別に追加して動作させる必要がある。
  • INTERFACE製GPIBを使用している場合、ControlREN()関数でのREN (Remote Enable)ラインの制御が正しく動作しない。 現在対策方法は無い。
  • CONTEC製GPIBを使用している場合、WOW64環境ではGPIB機能が使えない。 これはCONTEC製の64bitドライバーで32bit版DLLが準備されていないのが原因。

改訂履歴

VER 5.5.0 (24 SEP 2015)

以下の問題が修正あるいは改良されています。

新機能:

  • SCPI-RAWとHiSLIPプロトコル、及びWEBアクセスにIPv6サポートが追加された。

Shared Componentsバンドルの変更:

  • バンドルされるVISA Shared ComponentsがVER5.5.0になった。
  • VISA.NET Shared Components VER5.5.0を新規にバンドルした。
  • バンドルされるIVI Shared ComponentsがVER2.3.0になった。
  • バンドルされるIVI.NET Shared ComponentsがVER1.1.2になった。

VISA C固有の問題:

  • viSetBuf()での出力(WRITE)バッファサイズが正しく設定されない問題があった。

VER 5.1.2 (17 NOV 2014)

以下の問題が修正あるいは改良されています。

Instrument Explorer:

  • LXI Identification XMLによる計測器検索の際、送信するリクエストにHostエントリが抜けていたため検索に失敗する事があった。
  • LXI Identification XMLによる計測器検索の際、301 Moved Permanentlyを返す計測器の検索に失敗する事があった。
  • USBTMCでゼロレングスパケットを受信した際にviReadが正しく受信データを返さない問題があった。
  • VISA対話式機能で、TerminationCharacterEnabledをデフォルトでTRUEにした。

Shared Componentsバンドルの変更:

  • バンドルされるVISA Shared ComponentsがVER1.6になった。
  • バンドルされるIVI.NET Shared ComponentsがVER1.1.1になった。

VER 5.1.0 (19 JUNE 2013)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • VXI-11でviOpen()を呼び出す際にリソースロッキングを指定した場合、計測器にVXI-11ロック命令が正しく伝達されておらず、その結果viUnlock()をコールした際にエラーが発生する問題があった。
  • ASRL(Serial)でviFlush()で入力バッファをクリアしても実際にそれがクリアされない問題があった。

Shared Componentsバンドルの変更:

  • バンドルされるVISA Shared ComponentsがVER1.5になった。

VER 5.0.10 (12 MAR 2013)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • VXI-11 Write系ファンクションでメモリリークがあった。
  • 応答の遅いVXI-11計測器からのRPCレスポンスを正しく取得出来ない問題が有った。

VER 5.0.9 (08 JAN 2013)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • 32bitアプリからのGetAttribute()/SetAttribute()コールのSPYログ(文字列情報がある場合)を64bit版KI-VISA SPYで正しく表示できない問題を修正した。
  • 複数NIC環境でのVXI-11検索で、Metricが最小のNICからリミッテッド・ブロードキャスト(255.255.255.255)でポートマップ検索をするように変更した(但しVista以降のみ)。 それ以外のNICからはディレクテッド・ブロードキャスト(192.168.1.255, 169.254.255.255等)で検索する。
  • VB6アプリからHiSLIPでセッションをクローズした際に時々アクセス違反を起こす問題が残留していた。
  • SPYログのタイムスタンプをCall INとCall OUTに分離した。

VISA C固有の問題:

  • バッファリング・モードがVI_FLUSH_ON_ACCESSであってもviBufWrite()/viBufRead()関数がバッファをフラッシュしない問題があった。

VER 5.0.8 (18 OCT 2012)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • ASRL(Serial)で書き込み処理が常に2000msでタイムアウトしてしまう問題があった(VER 4.xで発生した問題)。
  • USBTMCで受信タイムアウト時のエラーがE_VISA_TMOではなくE_VISA_IOになってしまう問題があった。
  • USBTMCとVXI-11で、受信パケットが分割された場合に最初のパケットしか受信できない問題があった。
  • KI-VISA Instrument ExplorerでVXI-11検索及びmDNS(Bonjour)検索がヒットしにくい問題を改良した。
  • KI-VISA Instrument ExplorerでVXI-11検索が複数NIC環境で正しく行えない問題があった。

VER 5.0.7 (06 JULY 2012)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • HiSLIPでシリアルポーリングが誤って常に0を返す問題があった(VER 5.0.6で発生した問題)。
  • HiSLIPでセッションをクローズした際に時々アクセス違反を起こす問題があった。

VER 5.0.6 (02 MAR 2012)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • HiSLIPでセッションをオープンする際にEXCLUSIVE_LOCKオプションを指定した場合、他のロックが全て開放されていてもロックを獲得できずにオープンに失敗する問題があった。
  • HiSLIPでVI_ATTR_TCPIP_KEEPALIVE属性とVI_ATTR_TCPIP_NODELAY属性サポートがサポートされていない問題があった。
  • HiSLIPでWrite/Read操作を長時間繰り返すとメモリリーク及びスタックオーバーフローを起こす問題があった。
  • viFindRsrc()/FindRsrc()関数で有効なVISAアドレスを見つからない場合に正しくエラーコードを返さない問題があったが、E_VISA_RSRC_NFOUNDを返すように修正された。
  • USBTMCでデバイスがクエリに応答しない場合、動作状況に依ってはVISAがクラッシュする問題があった。
  • ASRL(シリアル)で同一プロセス内から複数セッションを多重にオープンした場合に正常に受信出来ない又は受信内容が破損する問題が有った。 (内部受信バッファのメカニズムが大きく設計変更されたVER5.0.4以降で起きた問題。)
  • USBTMCの64bitコンポーネントでVI_ATTR_RET_COUNT_64がサポートされていなかったため、LabVIEW(64bit)での非同期VISA Readが正常に動作しない問題があった。

VISA C固有の問題:

  • IO完了イベントオブジェクトに対するviClose()が正常に処理されているのにVI_ERROR_INV_OBJECTがリターンされる問題があった。

改良:

  • LAN計測器のダイナミック検索機能が追加され、事前のコンフィグレーション無しにFindRsrc()ファンクションがVISAアドレスのリストを返すようになった。 但しこの機能を有効にするとFindRsrc()は呼び出されるたびにデバイス検索を行うので時間がかかる場合がある。この遅延を嫌う場合は従来の静的検索を推奨する。
  • SPYログデータの転送処理をマルチスレッド化し、SPY稼働中のI/O性能を向上した。この機能変更に伴いSPYアプリケーションの機能を一部変更した。KI-VISA SPYはデフォルトでTCPポート52666を使用する。
  • HiSLIPで4880以外のポート番号がサポートされた。
  • ASRL(シリアル)のオプション設定でCOMポート番号をスワップする機能が追加された。
  • HiSLIPのオプション設定で、VISAセッションオープン時にOverlapped Modeを許可できるようになった。

機能削除:

  • ASRL(シリアル)のIOコンフィグでサポートされていた複数プロセスからの同時アクセス(多重セッション)の機能が削除された。 (内部受信バッファのメカニズムが大きく設計変更されたVER5.0.4から正常動作していなかったが、機能回復が困難なため削除した。)

Shared Componentsバンドルの変更:

  • バンドルされるVISA Shared ComponentsがVER1.4になった。
  • バンドルされるIVI Shared ComponentsがVER2.2.1になった。
  • IVI.NET Shared Components VER1.0.1が新規にバンドルされた。

VER 5.0.5 (24 AUG 2011)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • VXI-11, HiSLIPで非同期IO機能で通信を行った際に、アクセス違反を起こして強制終了する場合があった。
  • VXI-11, HiSLIP, SCPI-RAWで、256バイトを超えるレスポンスデータを正常に受信できない場合があった。

VER 5.0.4 (16 JUNE 2011)

以下の問題が修正あるいは改良されています。

Shared Componentsバンドルの変更:

  • バンドルされるIVI Shared ComponentsがVER2.1.1からVER2.2.0になった。これによってIviACPwrクラスのタイプライブラリが追加される。

VISA COM、VISA C共通の問題:

  • USBTMC, VXI-11, HiSLIP動作において、一旦EnableEvent()で非同期I/Oを有効にするとDisableEvent()でそれを機能停止出来ない問題があった。
  • HiSLIP動作において、非同期I/OのためのWaitOnEvent()が正しくI/O完了イベントを返さない問題があった。
  • USBTMC動作において、VISAセッションをオープンしたままでのConnection Lostの検知(デバイス接続断時)とその自動回復(デバイス再接続時)が正しく動作していない問題があった。
  • VXI-11動作において、マルチスレッドで同時に書込読込の動作を行うとアプリケーションが異常終了する問題があった。 これはRPCエンジン内部でメモリ管理が正常に機能していないのが原因だった為、KI-VISA VXI-11コンポーネントをSUN RPCライブラリを使用しない実装に変更した。
  • Socket, HiSLIP, VXI-11動作において、ネットワーク接続時のタイムアウトをWinsockデフォルトの20秒から5秒に変更した。
  • シリアル(ASRL)デバイスでの非同期IO機能をダミー動作から真の実装に変更した。また、デバイスから発生するエラーのハンドリングを追加した。

VISA SPYの改善:

  • SPYの表示項目に「Tag」が追加された。ここにはIOインターフェース毎に異なる通信タグ情報が表示される。 現在サポートされているのは、bTag (USBTMC)、RPC xid (VXI-11)、及びMessage ID (HiSLIP)である。それ以外では何も表示されない。

VER 5.0.3 (11 MAR 2011)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • HiSLIPでのリソースロッキング動作で、ネスティングのカウントが正しく行われていない問題があった。

VISA Cの問題:

  • viInstallHandler()によるイベントハンドラー登録が全く機能していない問題があった。
  • viScanf()/viQueryfの書式指定で、キャレットを使った書式指定(%[^,]等)が全く機能していない問題があった。これはVER5.0.2のみのバグ。

VER 5.0.2 (13 JAN 2011)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • VXI-11においてRPCエンジンのTCPIPタイムアウトが常に25秒に設定されていた為、VISAが25秒よも長いIOタイムアウトを待てない問題があった。
  • FindRsrc()/viFindRsrc()関数が、正規表現を正しく解釈できずにリソースを列挙出来ない場合が有った。
  • viScanf()/viQueryf()関数が呼び出された時、未送信のバッファー内容をを正しくフラッシュしない問題があった。
  • viScanf()/viQueryf()関数で終端テキスト書式(%t)指定された時、受信した文字列を正しく返さない問題があった。
  • viPrintf()/viQueryf()で浮動小数点書式(%e, %lf)が指定された時、プログラムがクラッシュしてしまう問題があった。

VER 5.0.1 (15 DEC 2010)

以下の問題が修正あるいは改良されています。

VISA仕様の変更!!!

  • KI-VISAをVISA仕様5.0に準拠した。
  • LAN計測器に関して、IVI HiSLIP (High-Speed LAN Instrument Protocol)のサポートが追加された。
  • USBTMCデバイスドライバーがMicrosoft winusb.sysからIVI共通のausbtmc.sysに変更された。 このドライバーはVISA Shared Componentsによって自動的にインストールされる。

削除機能:

  • デバイスドライバーの変更に伴い、IOコンフィグレーションのUSBタブからドライバーセットアップ機能が削除された。

VER 4.2.6 (07 JULY 2010)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • USBTMCでのviReadがタイムアウトした際のエラー回復処理において、デバイスの振舞いに依ってはVISAがINITIATE_ABORT_BULK_INリクエストを正しく送出していない場合があった。 この問題はPicotest製G5100 Waveform GeneratorUSBTMCインターフェースと通信した時に見つかった。
  • IO Configuration操作において、LAN(Socket)とLAN(VXI-11)のリソース管理ページ(タブ)が統合された。
  • IO Configuration操作において、LAN計測器の検索方法にDNS-SD (DNS Service Discovery)が追加された。 但しこの機能はBonjour APIを使用する為、Bonjour又はiTunesがPCにインストールされている場合のみ動作する。 また、この検索にヒットするには計測器側でのmDNS/DNS-SD実装が必要。(LXI仕様Ver1.3以降の計測器では必須項目。)
  • 64bit版SPYにおいて、WOW64で動作している全ての32bitプロセスに対してexe名の後に「*32」の表記を追加するように変更した。

VER 4.2.5 (06 MAY 2010)

以下の問題が修正あるいは改良されています。

SETUPの改善:

  • SETUPプログラムは、USBTMCデバイスドライバのインストールを行うように変更された。 但しコマンドラインオプション/S (サイレントインストール、Sは大文字)指定時にはドライバのインストールは行われない。

VISA COM、VISA C共通の問題:

  • x64版において、PCを再起動するとVISA C APIが動作しなくってしまう問題が有った。 これはベンダー依存の64bit VISA Cコンポーネント(kivisa32.dll)がVISAルータ(System32/visa64.dll)へ自身を登録する際、誤ってVOLATILE属性でレジストリに書き込みをしていた為。
  • x64版において、VI_ATTR_RET_COUNT_64属性をviGetAtribute()で正しく読み取れない問題があった。
  • x64版において、VI_ATTR_USER_DATA_64属性がviGetAttribute()/viSetAttribute()で正しく読み書き出来ない問題があった。
  • x64版において、KI-VISA SPYがVI_ATTR_RET_COUNTとVI_ATTR_USER_DATA属性の読み書きのログを正しく表示しなかった。
  • オンラインヘルプのIFormattedIO488での誤記訂正。

VER 4.2.4 (09 APR 2010)

以下の問題が修正あるいは改良されています。

VISA仕様の変更!!!

  • ネイティブの64bit(x64)アプリケーションの開発と実行がサポートされました!

SETUPの改善:

  • SETUPプログラムは、IVI Shared Components 2.1及びVISA Shared Componentsをデフォルトでインストールするようになった。
  • SETUPプログラムが従来のInstallShieldベースからNullsoft Scriptable Installer System (= NSIS)に変更され、大幅に軽量化された。
  • 64bit版と32bit版のSETUPが別々に用意された。

VISA COM、VISA C共通の問題:

  • シリアルポートの番号がCOM9を超えると動作しない問題があった。
  • USBTMCで同一のVID/PIDを持つ製品を2台以上使用した場合、viOpenする順序によっては2台目のセッションを正常にオープン出来ない問題が有った。
  • NI-488.2M互換GPIB動作において、必要であればVISAロック動作がGPIBボードレベルのロックを併用するようになった。 但しこれは、National Instruments製ハードウェアでGPIBx::INTFCリソースのみに適用される。

VER 4.2.2 (09 FEB 2009)

以下の問題が修正あるいは改良されています。

VISA仕様の変更!!!

  • KI-VISAをVISA仕様4.2に準拠した。
  • SETUPプログラムは、IVI Shared Components 1.5.1及びVISA Shared Componentsをデフォルトでインストールするようになった。
  • デフォルトのインストール先ディレクトリが、従来のC:/VXIpnpからC:/Program Files/IVI Foundation/VISAに変更された。
    (これはクリーンインストールのみに適用される。既存のVISAソフトウェアへのアップデートの場合、C:/VXIpnpディレクトリが維持される場合がある。

サポートされるオペレーティングシステムとランタイムライブラリーが変更されました!!!

  • KI-VISAは現在Windows Vista (x64及びx86)、XP SP2+ (x86)、及び2000 SP4+ (x86)環境をサポートする。詳細はこのページのトップを参照。
  • XP及びVista環境では、USBTMCデバイス用のUSBドライバーがマイクロソフト製のWINUSB.SYSに変更された。
  • KI-VISAのすべてのコンポーネント、Instrument Explorer、 SPY, VISA DLL等はMFC/ATLを利用してVisual C++ 2008でビルドされている。 そのためKI-VISA SETUPプログラムはVisual C++ 2008 Redistributable Packageをインストールする。

SETUPの改善:

  • KI-VISAのSETUPプログラムは、他社製VISAソフトウェアが既にインストールされていないかチェックをする。 これはVISAインストールに関係するレジストリエントリの存在をチェックする事で行われる。 もし何か見つかった場合、KI-VISAのSETUPプログラムはエラー表示と共に停止し多重インストールを回避する。 実際には下記のレジストリエントリが、他社製VISAが既にインストールされている証として考慮される。
  • HKEY_LOCAL_MACHINE\SOFTWARE\National Instruments\NI-VISA for Windows 95/NT
  • HKEY_LOCAL_MACHINE\SOFTWARE\Agilent\IO Libraries
  • HKEY_LOCAL_MACHINE\SOFTWARE\Agilent\IO Libraries Suite
  • HKEY_LOCAL_MACHINE\SOFTWARE\Tektronix\TekVisa

VISA COM、VISA C共通の問題:

  • WINUSB.SYS (USB driver for XP and Vista)への移行に伴い、USBデバイスに同時にアクセスプロセスは1個に制限されている。 言い換えると、複数プロセスから同じUSBデバイスへのVISAセッションを同時ににはオープンできない。 この制限はWINUSB.SYSの設計によるものであり、UMDF又はKMDFレイヤーを利用することがその最良の解決法となる。 しかしKI-VISAでは現在利用UMDF又はKMDFを利用していないため、同一デバイスへの複数プロセスからの多重オープンは出来ない。

VISA Configurationの問題:

  • AutoIPコンフィグレーション(IP addresses of 169.254.0.0/16)でVXI-11計測器を検索する場合、 VXI-11ディスカバリーの為のブロードキャスティングアドレスが間違っていたため検索が失敗していた。

VER 3.1.3 (17 JAN 2008)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • USBTMCデバイス使用時、書き込み処理(viWrite, viPrintf, IMessage::WriteString等)で通信エラーが発生した場合、正しくはINITIATE_ABORT_BULK_OUT及びCHECK_ABORT_BULK_OUT_STATUSクラスリクエストを 送出する所を、間違ってCHECK_ABORT_BULK_OUT_STATUSではなくCHECK_ABORT_BULK_IN_STATUSを送出していた。
  • バンドルされるIVI Shared Componentsのバージョンが1.5.0になった。
  • Windows Vista環境で.NET Framework 3.5経由(Visual Studio 2008アプリなど)でUSBデバイスをコントロールする場合、 VISAセッションを正常に開けない問題があった。

VISA Configurationの問題:

  • WindowsXPでXPスタイルのデスクトップテーマを使用している場合、 IO Configアプリが正しくコモンコントロール6.0 APIを初期化していないために、 ランタイムエラーで異常終了する問題があった。 (Windows Vista環境及び、KiVisaConfig.exe.manifestを削除した環境では問題は起きない。)

VER 3.1.2 (03 JULY 2007)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • シリアルI/O (RS232)の読み込み動作で極端に時間が掛かり、性能上の問題或いは予期せぬI/Oタイムアウトエラーを起こすことがあった。 この問題はKI-VISA 3.1.1及び3.1.0で見つかっており、3.0.4及びそれ以前では問題ない。
  • 同じリソースタイプ(例え計測器アドレスが違っていても)の複数計測器をアクセスするマルチスレッドアプリケーション  が、これらのI/Oを同時にアクセスできない問題があった。  これはVISA内での間違ったミューテックスロッキングによるものである。

VISA Configurationの問題:

  • VISA Configurationツールで、TCP/IP接続チェック又はVXI-11計測器の検索を行ったあと、 Instrument ExplorerからVISA Configurationを正しく起動できない問題があった。 (この問題は、Configurationツールを終了した後にゾンビプロセスが常駐してしまうのが原因だった。)

VER 3.1.1 (01 JUNE 2007)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • VXI-11計測器のSRQ監視方式を自動シリアルポーリングからVXI-11 intr_chanソケット通信に変更した。
  • IO ConfigプログラムでのVXI-11計測器の検索方法を変更した。
  • IO ConfigプログラムをInstrument Explorerのサブプログラムに変更した。
  • Instrument ExplorerからTCP/IP計測器の埋め込みウェブページを開けるように変更した。

VER 3.1.0 (09 FEB 2007)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • 新規にWindows Vista (Home Premium, Business, Ultimate)に対応した。
  • 新規にTCP/IP(SOCKET及びVXI-11)に対応した。
  • バンドルされるIVI Shared Componentsのバージョンが1.4.0になった。
  • Windows98/98SE/MEが動作保証対象から除外された。(最新版IVI Shared Componentsのシステム要件変更の為。) 但しこれらの環境でもKI-VISAが動作する可能性はあるが、あくまでも保証対象外とする。
  • SETUPプログラムは、Program Files/IVIディレクトリへの書き込みパーミッションを全ログオンユーザに与えるように変更された。
  • 一部のCONTEC GPIBボードでviClear()関数がハングアップしてしまう問題があった。 この問題は修正された。

VER 3.0.4 (01 FEB 2006)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • INTERFACE製GPIBの最新LabVIEWドライバがFindLstn()関数がシステムをハングアップさせてしまうため、 IO Configでのリスナー検索の方法をFindLstn()からReadStatusByte()の巡回に変更した。
  • USBでの読み出し可能最大サイズが64KBに制限されていたが、2GBに変更した。 (但し、WindowsXP/Vista環境でUHCIホストを使用した場合に限る。)

SPYの問題:

  • 通信を行なっている最中にSPYの記録モードをON/OFFさせると、 アプリケーションをクラッシュさせる問題があった。 この問題は修正された。

VER 3.0.3 (20 SEP 2005)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • USB INSTRセッション(USBTMC)のCHECK_ABORT_BULK_IN_STATUS及びCHECK_ABORT_BULK_OUT_STATUS クラスリクエストのwValueパラメータが間違って送出されていた。 この問題は修正された。

SPYの問題:

  • Statusカラム上のツールチップ機能が間違った情報を表示していた。 現在はステータスの説明文字列が正しく表示される。

VER 3.0.2 (15 APR 2005)

以下の問題が修正あるいは改良されています。

VISA COM、VISA C共通の問題:

  • GPIB INSTRセッションのviWaitOnEvent()関数とWaitOnEvent()メソッドで、 SRQイベント発生時にEVENT_SERVICE_REQの代わりにEVENT_IO_COMPLETIONが間違って返されていた。 この問題は修正された。
  • IO ProtocolがVI_PROT_NORMAL(1)に設定されているとシリアル(ASRL)デバイスで viClear()関数とClear()メソッドがエラーを発生していた。この問題は修正された。

VER 3.0.1 (02 MAR 2005)

以下の問題が修正あるいは改良されています。

VISA C固有の問題::

  • VISA仕様3.0で要求されるVISA関数が追加された。

VISA COM、VISA C共通の問題:

  • VISA COM仕様3.0で要求されるVISA COMインターフェースが追加された。
  • viFlush()関数とISerial::Flush()メソッドがバッファの内容をクリアしていなかった。この問題は修正された。
  • IO ProtocolをPROT_4882_STRS(4)に設定してシリアル(ASRL)デバイスを使用した場合、viAssertTrigger()関数と IMessage::AssertTrigger()メソッドで正しく*TRG\nコマンドが送出されていなかった。この問題は修正された。
  • IO ProtocolをPROT_4882_STRS(4)に設定してシリアル(ASRL)デバイスを使用した場合、viReadSTB()関数と IMessage::ReadSTB()メソッドで正しく*STB?\nコマンドが送出されていなかった。この問題は修正された。
  • viGpibControlATN()関数とIGpibIntfc:ControlATN()メソッドのに機能が実装されていなかった。現在は実装されている。
  • Termination Character動作をネイティブにサポートしないUSBTMCデバイスに対して、その機能のシミュレーションが追加された。
  • USBTMCデバイスでサプライズリムーバルが発生した以降、セッションを再オープンできない問題があった。この問題は修正された。

Instrument Explorerの問題:

  • IUsb VISA COMインターフェースが新規にサポートされた。

VER 2.2.5 (21 JAN 2004)

以下の問題が修正あるいは改良されています。

VISA C固有の問題:

  • VI_ATTR_TRIG_ID及びVI_ATTR_SUPPRESS_END_ENアトリビュートが正しくサポートされていなかった。これらは現在サポートされている。
  • viGpibControlREN()関数がUSB計測器で動作しなかった。この問題は修正された。
  • viRead() (そのファミリを含む)がI/Oタイムアウトで失敗したとき、たとえレスポンスデータの幾つかのバイトが受信できても、 受信バッファが常に空だった。この問題は修正された。

VISA COM、VISA C共通の問題:

  • USBTMC計測器にクラスリクエストを送る際、bmRequestTypeの値が間違っていて、 正しくないターゲット(device/interface/endpoint分類)が示されていた。この問題は修正された。
  • USBTMC INITIATE_ABORT_BULK_IN又はCHECK_ABORT_BULK_INリクエストを送る際、 ターゲットのBulk-INエンドポイントを示すwIndexの値が間違っていた。この問題は修正された。
  • EOM(End Of Message)ビットを持たないレスポンスデータをUSBTMC計測器から読み込む際、 viRead()関数とRead()メソッド(ファミリを含む)が間違って受信ターミネーションの処理をしいてた。 この問題は修正された。
  • USBTMCリソースに対してopen/close動作を繰り返すと、ハンドルのリークが生じていた。この問題は修正された。
  • VISAリソースのエイリアス機能が追加された。viOpen()関数及びOpen()メソッドは、 厳密なVISAリソース名だけでなくエイリアスも受け取るようになった。
  • viFlush()関数及びISerial::Flush()メソッドが”discard”オプション付で呼び出された際、 VISAは不必要なI/O動作を行っていた。この問題は修正された。
  • NI-488.2M互換リソースを通じてVI_ATTR_GPIB_REN_STATEアトリビュートの読み出し或いはRENStateプロパティの読み出しを行うと、 値が読み取れず常に不明状態を返していた。この問題は修正された。

SETUPプログラムの問題:

  • KI-VISAのインストールの後、全てのVISAリソースタイプがデフォルトで選択されるようになった。またVISA32.DLLもデフォルトでイネーブルにされる。

VER 2.2.4 (09 OCT 2003)

以下の問題が修正あるいは改良されています。

VISA C固有の問題:

  • VISA32.DLLがスタティック・インポートとしてDLLかEXEにダイナミック・リンクされた場合エンド・ユーザ・プログラムEXEの プロセスがアンロード出来なくなる問題が時々発生していた。この問題は修正された。

VISA COM、VISA C共通の問題:

  • VISA COMのOpenメソッドでASRLリソースをオープンする場合、Option Stringパラメータによるオプションが正しく適用されていなかった。 この問題は修正された。
  • COM例外が発生した場合、ISupportErorInfoインターフェースのInterfaceSupportsErrorInfoメソッドがS_FALSEを返してしまい、 そのためクライアントからエラー説明文字列を取得する事ができない問題があった。 この問題は通常VB.NET、C#、そしてスマート・ポインタ・ラッパーを使用するC++プログラムで発生しVB6では発生しない。この問題は修正された。
  • VI_ATTR_DEV_STATUS_BYTEアトリビュートをviGetAttribute()関数で読み出すか、 又はDevStatusByteプロパティを読み出すと、VISAはスタック・オーバーフローのエラーを発生していた。 この問題は修正された。
  • viClose関数又はかCloseメソッドでNI-488.2M-compatible GPIBリソースを閉じると1秒かかっていた。これは無効なイベントに対する不適切なWaitForSingleObject関数の呼び出しが原因だった。 この問題は修正された。

VER 2.2.3 (04 AUG 2003)

以下の問題が修正あるいは改良されています。

VISA C固有の問題:

  • 1.230000E-02のような指数表記を含む文字列で、viScanf()/viQueryf()が”%,f”或いは”%,lf”識別子による double/float配列を正しくアンフォーマットしなかった。 この問題は修正された。
  • 利用可能なVISAリソースが1個の時、viFindRsrc()関数がリソース文字列を一つも列挙しなかった。この問題は修正された。

VISA COM、VISA C共通の問題:

  • USBTMC I/OコンポーネントがSRQ EVENT QUEUE機能をサポートしていなかった。サポートは追加された。
  • Windows 98/Me環境でCONTEC GPIBを使用したば場合、GPIB機能を使うアプリを終了した時に時々システムがクラッシュしていた。 この問題は修正された。
  • 非管理者権限で使用する場合(2k/XP)、KI-VISAはviFindRsrc()関数又はFindRsrc()メソッドで利用可能なVISAリソースを列挙しなかった。 この問題は修正された。
  • ASRLリソースをタイムアウト値0で使用すると、viRead()関数(及びそのファミリ)がリターンせずアプリケーションをハングアップさせていた。 この問題は修正された。
  • viWrite()関数(及びそのファミリ)がUSBリソースに対してNULLポインタ或いは空のバッファ(長さ指定ゼロ)を指定した場合、 VISAは無効なUSBTMCパケットを送信しUSB Bulk-OUTエンドポイントをストールさせていた。 そのようなパラメータを指定された場合、VISA は一切のパケットを送信しないようになった。
  • USBでviWrite()関数(及びそのファミリ)がタイムアウトでリターンした場合、以降のviReadSTB()関数又はReadSTB() メソッド呼び出しが動作しなかった。この問題は修正された。

サポート・ハードウェア:

  • コンテック社製GP-IB(CB)Fが確認リストに追加された。

VER 2.2.2 (02 JUNE 2003)

以下の問題が修正或いは改良されています。

VISA C固有の問題:

  • IVI計測器ドライバをLabVIEWで使用したとき、LabVIEW開発環境を終了する時にクラッシュしていた。
  • VI_ATTR_RD_BUF_OPER_MODE属性がVI_FLUSH_DISABLEの時、viScanf()又はviQueryf()関数のスキャン動作が残りのホワイトスペースを廃棄していなかった。 例えば、”%”による全てのトークンをスキャンした後、残りの<new line(0x0A)>が常に次回スキャンの先頭文字として解釈されていた。
  • viWrite()及びviWriteAsync()関数に、retCntパラメータ又はjobIdパラメータとしてとしてNULLを渡した場合、アクセス違反が発生していた。
  • viScanf()/viQueryf()が、”%#s”或いは”%#[^\n]”書式のような”#”修飾子を理解していなかった。内部’scanf’パーサーを修正した。
  • レスポンス・メッセージが<new_line>或いは<carriage_return>ターミネーション・バイトを持たない場合、 viScanf()/viQueryf()関数が”%”修飾子によるスキャニングを行う際に最後の文字を落としていた。

VISA COM、VISA C共通の問題:

  • VBアプリケーションから空の文字列がWriteString()メソッドに渡された場合或いはNULLポインターが viWrite()/viWriteAsync()関数に渡された場合、VISA内部でのNULL文字列の扱いが不適切な為にアクセス違反を起こしていた。
  • Open()/viOpen()呼び出しの直後にFlush()メソッド或いはviFlush()関数を呼び出した場合、 フラッシュすべきバッファが無いのに無意味なI/O動作を発生してし、更に内部メモリ・リークを発生していた。
  • “USB0::0x1234::0x5678::SN000111::0::INSTR”のように、明示的に「USBインターフェース番号」を指定した USB INSTRリソース文字列をParseRsrc()メソッド或いはviParseRsrc()関数に渡した場合、解釈されていなかった。 これは修正されたが、このヴァージョン(VER 2.2.2)ではインターフェース番号0のみをサポートするので注意する事。
  • 大量のレスポンス・データ(2KBytes以上)をコンテック社製GPIBボードを通じて計測器から読み込む場合、 ハードウェア・ドライバがタイムアウトを発生していた。この問題はTektronix TDS210 LabVIEWドライバ 及びIVIドライバを使用したときに見つかった。内部処理を複数の細かい動作(512 bytes毎)に分割する事でこの問題を回避した。
  • SRQイベント機能を使用した後、DisableEvent()/viDisableEvent()呼び出しの直後にClose()メソッド或いは viClose()関数をVISAセッションに対して呼び出すと、時々アクセス違反が発生していた。 この原因は内部自動シリアル・ポーリング・スレッドの完了タイミングであった。
  • ASRLセッションをVI_ATTR_ASRL_FLOW_CNTRL属性値VI_ASRL_FLOW_DTR_DSRで使用した場合、 ハードウェア・フロウ制御が正しく動作していなかった。 この問題は、Agilent HP34401A LabVIEWドライバを使用したときに見つかった。
  • GPIBボードのハードウェアが存在しない場合、該当するボード・インデックスが事実上コンフィグレーションされている限り、 VISAはOpen()又はviOpen()呼び出しに対して何らエラーを発生していなかった。 存在しないGPIBハードウェアに対してはE_VISA_RSRC_NFOUNDを返すように修正された。
  • I/O Configツールで使うと宣言されていないGPIBボード・インデックスに対してOpen()又はviOpen()を呼び出すと、 アクセス違反を発生していた。
  • メモリ・リークが幾つか見つかった。症状が頻繁に発生するのはKI-VISA SPYでI/O動作をモニタしている時であるが、KI-VISA SPYを使用しない場合でもメモリ・リークは見つかっている。これは長期間Write/Read I/O動作を繰り返すアプリケーションなどでは深刻な問題を引き起こす可能性があった。

その他の変更:

  • セットアップ・プログラムは汎用のUSBTMCドライバINFファイル(KIUSBTM.INF)を提供する。 これは、USBTMC及びUSBTMC-USB488に準拠している計測器であればヴェンダーを問わず汎用的に使用できるものである。
  • ファイル拡張子.xSPYがKI-VISA COM SPY (KiVisaSpy.exe)に関連付けされ、ログ・ファイルを開けるようになった。

サポート・ハードウェア:

  • コンテック社製GP-IB(PM)が確認リストに追加された。

VER 2.2.1 (14 MAY 2003)

  • KI-VISAライブラリの初版。ASRL、USBTMC、GPIB (コンテック社製GP-IB(PCI)L、GP-IB(PCI)F, インタフェース社製PCI-4301)をサポート。

サポート

技術的な質問があれば、お問い合わせページでお気軽にお問合せください。

お気軽にご質問・ご相談ください

製品カタログダウンロード 一覧を見る
導入検討・見積り依頼 お問い合わせ