PyVISA教程-用Python控制儀器【8:常見問題】

  • PyVISA是由國家儀器公司(National Instruments)開發或背書的麼?
    不是,PyVISA的開發獨立於國家儀器公司,是一個VISA庫的容器(對VISA庫的Python封裝)。
  • PyVISA是由誰開發的?
    PyVISA起初是由Torsten Bronger和Gregor Thalhammer開發的,並且基於了Thalhammer的前期經驗。2012.03--2013.08由Florian Bauer維護。2013.08--2017.12由Hernan E. Grecco<[email protected]>維護。最近由Matthieu Dartiailh<[email protected]>維護。
    詳見authors
  • PyVISA是線程安全的麼?
    是的,從版本1.6開始PyVISA是線程安全的。
  • 程序中有錯誤,該如何調試?
    PyVISA提供了所有操作的有用log。在代碼中添加如下命令,再次運行:

    import visa

    visa.log_to_screen()

  • 發現bug,如何提交?
    請在Issue Tracker頁面提交bug,請提供操作系統,python版本和庫版本等信息。另外,需要一些visa支持信息,該信息可以通過以下命令獲得。

    python -m visa info

  • Error:Image not found
    當提供了錯誤的VISA庫目錄的時候,出現該錯誤。請檢查提供給constructor或者設置文件裏的目錄信息。
  • Error:Could not found VISA library
    如果沒有提供VISA庫路徑,進而PyVISA找不到VISA庫的時候出現該錯誤。通過提供給VisaLibrary或者ResourceManager結構庫目錄解決該問題。

    >>> visalib = VisaLibrary('/path/to/library')

    或者

    >>> rm = ResourceManager('Path to library')

    或者創建設置文件。

  • Error:No matching architecture
    該錯誤出現在當Python結構和VISA結構不匹配時。

    PyVISA將嘗試用外部函數解析錯誤以提供更多有效信息。如果嘗試失敗,將顯示原始信息。

    在Mac OS X中,初始錯誤信息如下:

    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

    在linux中,初始錯誤信息如下:

    OSError: Could not open VISA library:

    Error while accessing /usr/local/vxipnp/linux/bin/libvisa.so.7:/usr/local/vxipnp/

    linux/bin/libvisa.so.7: wrong ELF class: ELFCLASS32

    首先,通過下面命令檢查安裝情況。

    python -m visa info

    將獲得Python解釋器的位數信息和PyVISA檢測到的VISA庫類別。
    解決方法是:
    1. 安裝並使用與Python相同位數的VISA庫。
    從國家儀器的VISA頁面下載並安裝VISA庫。再次運行調試命令,檢查新的庫是否被PyVISA識別。如果沒有,創建配置文件。
    如果沒有響應的VISA庫,嘗試方法2.
    2. 安裝並使用與VISA庫相同位數的Python解釋器。
    在Windows和Linux下,下載對應的Python。用新Python再次運行腳本。
    在Mac OS X下,Python一般同時安裝了32位和64位版本。
    可以這樣運行32位Python:

    arch -i386 python myscript.py


    或者這樣運行64位Python:

    arch -x86_64 python myscript.py

    也可以在.bashrc或.profile 或~/.bash_profile文件中添加一行,以創建一個別名:alias python32=“arch -i386 python”。

  • 如何獲取VISA的更多信息?
    初始VISA文檔:
    VISA定義
    VISA庫定義
    對於文本編程語言的VISA庫定義
    國家儀器公司提供的VISA操作手冊:- NI-VISA用戶手冊
    NI-VISA程序員參考手冊
    NI-VISA幫助文件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章