在 Python 中使用 NI ELVIS III

更新 Jan 2, 2025

環境

硬件

  • NI ELVIS III

程式語言

  • Python

本教學文檔將引導您完成設置、檔案傳輸以及在 NI ELVIS III 上使用 Python 程式。


NI ELVIS III 基於專案的學習解決方案可以使用 Python 進行程式編寫,以幫助熟悉 Python 語法的學生或教育工作者使用常見的 SSH 客戶端快速獲取量測結果。附件中總共包含 18 個範例,說明了 NI ELVIS III 幫助程式library的使用、各種 IO 類型以及在 CSV 檔案中記錄資料的能力。這些範例的目的是向您介紹如何設置 NI ELVIS 以使用 Python 進行程式編寫,並作為任何人根據需要利用 Python 進行擷取的起點。

軟體設置

設定 NI ELVIS III 裝置

在本節中,我們將安裝與 NI ELVIS III 通訊所需的軟體。

  1. 安裝 NI 量測實時支援檔案
  2. 使用乙太網連線埠或 Wifi 將 NI ELVIS III 連線到 Internet,以便可以從 Internet 安裝 Python library。
  3. 使能夠 NI ELVIS III 上的 Secure Shell 服務器
    • 打開Internet Explorer並開啟 NI ELVIS III 設定網站: <IP Address of the NI ELVIS III>/WIF.html 

注意: IP 地址可以在 NI ELVIS III 的顯示螢幕上看到。按 BUTTON 0 直到出現 IP 地址。從顯示螢幕輸入 IP 地址。

  • 點選頁面左側的“Home”頁面
  • 啟用Startup Settings 部份中的Secure Shell Server (sshd) 複選框。
  • 點擊Save 儲存

4. 在 NI ELVIS III 設定網站上設置Time Configuration

  • 點擊頁面左側的選項頁面。
  • 日期、當前時間和時區設定為您當前的本地時間。

  • 點擊Save 儲存
  • 重開機

為 NI ELVIS III 安裝必備 Python 軟體

  1. 安裝並打開您喜歡的 SSH 客戶端。如果您沒有,我們推薦您使用:PuTTY
  • 如下設定 PuTTY 或其他客戶端:

  • 主機名: <顯示在 NI ELVIS III 螢幕上的 IP 地址。>
  • 連線埠: 22
  • 連線類型: SSH

  1. 點擊Open按鈕。注意:有時 SSH 客戶端會由於密鑰不匹配而警告潛在的安全漏洞。只需點擊“Yes”即可繼續它偵測到的預期更改。
一旦連線成功,請用以下資訊登入:
  • 使用者名:admin
  • 密碼: <blank>(按下Enter即可,預設是沒有密碼的)

  1. 執行以下命令
opkg update
opkg install python
opkg install python-pip
pip install nifpga
pip install pyvisa

安裝 NI ELVIS III Python 範例

  1. 打開 PuTTY,按照上一步連線到 NI ELVIS III,然後透過執行以下命令在 NI ELVIS III 上安裝 git:

    opkg install git
  2. 透過執行以下命令從 GitHub 下載 NI ELVIS III Python 幫助程式library和 Python 範例

    git clone https://github.com/ni/NI-ELVIS-III-Python-Examples.git

現在可以在 NI ELVIS III 的/home/admin目錄中找到 NI ELVIS III Python 範例

(替代方式)從 ZIP 檔案安裝 NI ELVIS III Python 範例

若您偏好直接下載 NI ELVIS III Python 範例的 ZIP ,按照此連結獲取說明並使用 SFTP 將其移動到 NI ELVIS。


執行 Python 範例

  1. 打開 NI ELVIS III 的 PuTTY 會話並將目錄更改為 NI ELVIS III Python 範例:
cd /home/admin/NI-ELVIS-III-Python-Examples/
  1. 透過鍵入以下命令執行範例:
python examples/<example_category>/<example_filename>.py
其中 <example_category> 是範例的類別,例如類比、匯流排、數位或中斷;
而 <example_filename> 是特定範例的名稱。例如:
python examples/analog/AI_singleChannel.py 


Python 中可用於 NI ELVIS 的範例包括:

Analog

AI_configurationOptions
AI_multipleChannels
AI_singleChannel
AO_multipleChannels
AO_singleChannel

 

Bus

Encoder
I2C
SPI
UART

 

Digital

Button
DIO_multipleChannels
DIO_singleChannel
LED
PWM

 

Interrupt

AIIRQ (Analog Interrupt)
ButtonIRQ (Button Interrupt)
DIIRQ (Digital Interrupt)
TimerIRQ (Timer Interrupt)