From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



デバイスマネージャーで設定したRS-485のWire ModeプロパティをVISAで読み取ることができない



ハードウェア: Serial>>RS-485

問題:
2線式(半二重)モードにてRS-485のシリアルポートを使用しています。VISAICやLabVIEWにてプロパティノードを用いてWire Modeのプロパティを取得しようとすると、ポートのWire Modeを外部的に設定しているにもかかわらず、a-1(Unknown)といった値が返されます。どうしてこのようになるのですか?


解決策:
これはすべて想定内の動作です。VISAは、このプロパティの値を返すことができません。たとえば、LabVIEWでプロパティノードを読み取りとして設定し、Wire Modeのプロパティを取得しようとすると、a-1(Unknown)の値が返されます。同様に、VISAICからこのプロパティを読み取ろうとしても同じようになります。これは、VISAがこのプロパティを直接読み取ることができないためです。

デバイスマネージャにてWire Modeを設定した場合、VISAセッションはそれに従って実行されます。たとえば、Wire Modeを「two-wire mode auto」に設定してVISAセッションを開くと、そのポートは「two-wire mode auto」として開かれます。Wire modeは、デバイスマネージャーの設定が適用されていますが、その値を返すことはできません。

ポートが適切なモードで動作しているかを確かめるためには、プログラム内で明示的にWire Modeを設定するに越したことはありません。LabVIEWでは、「VISAシリアルポート構成(VISA Configure Serial Port)」VIの後にVISAプロパティノードを挿入することで実現可能です。プロパティノードを書き込みに設定してWire Modeを選択します。そして、以下を入力します。
  • 0 : 4 Wire Mode
  • 1 : Two-Wire Mode、エコーありDTR制御
  • 2 : Two-Wire Mode、エコーなしDTR制御
  • 3 : Two-Wire Mode、オート制御



関連リンク:
製品マニュアル: Serial Hardware and Software Help (ZIP)
技術サポートデータベース 17M6L0TI: NIのRS-485シリアルカードにはどのようなトランシーバモードがありますか?

添付:





報告日時: 10/24/2003
最終更新日: 05/01/2017
ドキュメントID: 32NG6BFQ