5

誰かがNIGPIBモジュールを使用してSnowLeopardでpyVisaを実行することに成功しましたか?

私がNIのWebサイトで読んだすべてのフォーラムに基づくと、NIVISAとpyVisaの組み合わせがMaxOSXで実行できるようには見えません。

厄介なのは、NIのWebサイトにMacOSX用のNIVISAサポートがリストされていることです。ただし、サポートページには、サポートされているOSとしてOSXが記載されていません。

このソフトウェア開発を行うためにWindowsを使用する必要がなくなり、クロスプラットフォームのサポートが可能になるので、コメントやヘルプをいただければ幸いです。

4

3 に答える 3

6

NI-VISA5.0は10.6.6でうまく機能することがわかりました。

私が抱えていた問題は、pyVisaのvisa.Instrument( "GPIB :: 1")を呼び出すときに、ライブラリが見つからないと言っていました。ただし、visa.get_instruments_list()を呼び出すと、GPIBアダプタがGPIB0として表示されました。これをデバイスとして使用すると、正しく接続できました。

これを達成するために、NIのサイト(少なくとも私が見つけることができた)に十分に文書化されていない、私がしなければならなかったいくつかの変更がありました。最も重要なのは、NI-VISA5.0がインストールするVISAライブラリの名前です。にあります/Library/Frameworks/Visa.framework/VISA。pyVisaのドキュメントに記載されているように、このライブラリに自動的にリンクするようにnsiファイルを変更しようとはしていません。

pyvisaをpipでインストールできませんでした。easy_installを使用する必要がありました。誰かがpipでpyvisaをインストールすることに成功した場合、私は本当にその方法を知りたいです!

システム設定:

virutalenv+virtualenvwrapperを実行しているPython2.7。ユキヒョウ10.6.6。NI-VISA 5.0

サンプルコード:

from pyvisa.vpp43 import visa_library
visa_library.load_library("/Library/Frameworks/Visa.framework/VISA")
import visa
visa.get_instruments_list() # Yields: ['ASRL1', 'ASRL2', 'ASRL3', 'ASRL4', 'GPIB0::1']
temp = visa.Instrument("GPIB0::1")
print temp # Yeilds: Instrument("GPIB0::1::INSTR")

更新:
Lionに移動した後、同じ問題が見つかり、毎回手動でライブラリをロードする必要がありました。これは私が何かを逃していると私に思わせます。

于 2011-04-07T16:03:26.830 に答える
3

OSX 10.8.2(Mountain Lion)にNI-VISA-5.0.0、NI-VISA-5.1.2、PyVisa-1.4をインストールしましたが、次のエラーが発生します

>>> import pyvisa.vpp43 as vpp43
>>> 
>>> 
>>> vpp43.visa_library.load_library('/Library/Frameworks/VISA.framework/VISA')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Python/2.7/site-packages/PyVISA-1.4-py2.7.egg/pyvisa/vpp43.py", line 146, in load_library
    self.__lib = self.__cdecl_lib = cdll.LoadLibrary(path)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 431, in LoadLibrary
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 353, in __init__
OSError: dlopen(/Library/Frameworks/VISA.framework/VISA, 6): no suitable image found.  Did find:
    /Library/Frameworks/VISA.framework/VISA: no matching architecture in universal wrapper
    /Library/Frameworks/VISA.framework/VISA: no matching architecture in universal wrapper
>>>
于 2013-01-31T18:49:23.983 に答える
1

MountainLion10.8.5で正常に動作します。

  1. NI-VISARuntime5.4をインストールします。
  2. pyvisaをインストールします

まず、Pythonのi386バイナリ(mac os組み込み)を作成して、Pythonを強制的に32ビットモードにします。

$ lipo -thin i386 -output python-i386 /usr/bin/python2.7
$ ./python-i386

その後:

# make sure pyvisa is available in the built-in python
import sys
sys.path.append('path-to-your-pyvisa')

from pyvisa.vpp43 import visa_library
visa_library.load_library("/Library/Frameworks/Visa.framework/VISA")
import visa
visa.get_instruments_list()
于 2013-12-11T09:31:54.073 に答える