国产成人亚洲精品一区二区在线看-国产成人亚洲精品影院-国产成人亚洲毛片-国产成人亚洲欧美激情-国产成人亚洲欧美三区综合

新聞資訊
您當(dāng)前的位置 : 首 頁 > 新聞資訊 > 技術(shù)資訊

Python編程控制示波器

2022-05-23 11:35:01

    示波器作為電子工程師常用的測試測量儀器之一,在有些情況下,需要編程控制示波器采集數(shù)據(jù),并進(jìn)行數(shù)據(jù)處理和分析,實(shí)現(xiàn)對示波器的自動化操作完成自動測試。

    有些特殊場合由于安全問題,需要把示波器放到封閉實(shí)驗(yàn)室環(huán)境下進(jìn)行測試,也需要編程控制示波器采集數(shù)據(jù)安全地完成測試任務(wù)。

實(shí)現(xiàn)對示波器的自動設(shè)置和遠(yuǎn)程采集數(shù)據(jù),成為很多前沿科學(xué)研究和實(shí)驗(yàn),以及生產(chǎn)自動化的必需環(huán)節(jié)。


    由于Python免費(fèi)、開源、語法簡單、開發(fā)效率高,深受廣大工程師的喜愛。今天以實(shí)時示波器為例,介紹利用Python編程控制示波完成采集數(shù)據(jù)并顯示波形。 相應(yīng)的方法同樣適用于其它開發(fā)工具和其它測試儀器,例如采樣示波器、頻譜分析儀、任意波形發(fā)生器AWG,源表SMU,函數(shù)發(fā)生器AFG等。


示波器廠家


利用Python編程控制示波器▽


編程前的準(zhǔn)備工作

   利用Python控制儀器,需要安裝相應(yīng)的功能模塊庫才能實(shí)現(xiàn)控制儀器。下面介紹Python編程之前的準(zhǔn)備工作。


1、安裝Python

    可登錄Python官方網(wǎng)站www.python.org下載Python,然后安裝Python 3.10.4新版。


示波器


2、安裝PyVISA 

    PyVISA是用來控制各種測量儀器的Python包,可支持GPIB、RS232、USB、Ethernet等接口??梢宰杂傻倪\(yùn)行在Windows,Linux和Mac上,適用于不同儀器廠家。PyVISA也可以通過pip命令安裝(pip install pyvisa)。


3、安裝NI-VISA

   為了PyVISA可靠工作,還需要安裝一個VISA。建議安裝NI-VISA庫,可以去NI官方網(wǎng)站下載安裝。


示波器價格


4、接口的選擇和設(shè)置

   根據(jù)儀器支持的接口,可選用GPIB、RS232、USB、Ethernet等接口來編程控制儀器,本文利用Python通過以太網(wǎng)接口編程控制示波器為例。


控制接口的選取 

a. LAN  

  [TCPIP0::192.168.0.1::inst0::INSTR]

b. GPIB  

  [GPIB0::1::INSTR]

c. Serial

  [serial('COM1','BaudRate',4800)]

d. USB 

[USB::XXX::XXX::XXX::INSTR]


示波器和PC的設(shè)置(以LAN為例)

a. 設(shè)置示波器的IP地址 例如: 192.168.0.2

b. 設(shè)置PC的IP地址 例如: 192.168.0.1

c. 關(guān)閉示波器和PC的防火墻

d. 在PC端 ping 192.168.0.2,看是否ping通


示波器


Python控制示波器實(shí)戰(zhàn)

    利用Python控制示波器,通過發(fā)送SCPI指令實(shí)現(xiàn)對示波器的控制和操作,設(shè)置示波器的參數(shù),然后采集示波器的數(shù)據(jù)并顯示。


1、調(diào)用功能模塊

利用import調(diào)用相關(guān)的功能模塊。

import time   

import pyvisa   

import matplotlib.pyplot as plt 

import numpy as np  


2、連接示波器 

Python可以利用GPIB、RS232、USB、Ethernet等接口控制示波器,今天利用以太網(wǎng)口控制示波器為例。

visa_address = 'TCPIP0::192.168.0.2::inst0::INSTR'

rm = pyvisa.ResourceManager()

scope = rm.open_resource(visa_address)

print(scope.query('*idn?'))


示波器


3、設(shè)置示波器

利用Wrtie發(fā)送SCPI命令設(shè)置的參數(shù),參考示波器的編程手冊。

Reset 示波器

    scope.write('*RST')  

自動設(shè)置示波器

scope.write('AUTOSET EXECUTE') 

設(shè)置示波器的采樣率

scope.write('HORIZONTAL:SAMPLERATE 25e9') 

設(shè)置示波器運(yùn)行

scope.write('acquire:state 1')


4、讀取測量結(jié)果

先用Wrtie發(fā)送SCPI命令設(shè)置測量項(xiàng)和參數(shù),然后用Query讀取測量結(jié)果。

添加測量項(xiàng)

scope.write("MEASU:MEAS1:TYPE PERIOD")

設(shè)置測量通道

scope.write('MEASU:MEAS1:SOU CH1') 

讀取測量結(jié)果

scope.query(MEASU:MEAS1:VAL?') 


5、讀取波形數(shù)據(jù)

    可以利用query_ascii_values讀取ASCII數(shù)據(jù),也可以利用read_raw()讀取數(shù)據(jù),還可以query_binary_values讀取讀二進(jìn)制數(shù)據(jù),今天我利用query_binary_values讀取示波器的數(shù)據(jù)為例,注意:讀取的數(shù)據(jù)還需要轉(zhuǎn)換成電壓,如何轉(zhuǎn)換電壓,請看上面的視頻。

bin_wave = scope.query_binary_values('curve?', datatype='b', container=np.array) 


6、畫波形圖

利用plt把示波器采集的波形數(shù)據(jù)畫圖。

plt.plot(scaled_time, scaled_wave)

plt.title('channel 1') 

plt.xlabel('time (s)') 

plt.ylabel('voltage (V)')

plt.minorticks_on()

plt.show()


示波器


7、斷開儀器連接


利用close斷開與示波器通信連接。

scope.close()

rm.close()


    總結(jié):本文介紹如何利用Python語言編程控制示波器采集數(shù)據(jù)并顯示波形,從而實(shí)現(xiàn)對示波器的自動化操作,完成自動測試和分析,大大提高工作效率。如果對Python編程控制示波器完整源代碼感興趣的,可在線溝通,或致電客服!

近期瀏覽:

主站蜘蛛池模板: 亚洲一区二区免费视频| 国产97视频| 免费观看黄色a一级视频播放| 久久精品国产91久久麻豆自制| 亚洲天天综合网| 精品久久国产老人久久综合| 高清午夜毛片| 成人娱乐网站| 一品道一本香蕉视频| 四虎东方va私人影库在线观看| 国产精品午夜激爽毛片| 国产精品亚洲第五区在线| 色一情一乱一乱91av| 大杳蕉精品视频在线观看| 青青青国产依人在线视频97| 91欧美国产| 欧美黄色片在线观看| 女人天堂网在线观看2019| 手机看片日韩| 黄色在线视频免费看| 成人免费黄色网址| 宅宅在线| 国产首页| 国产高清在线不卡| 亚洲国产精品一区二区久久hs | 番茄视频二三区| 伊人成人久久| 中国人xxxxbbbb国产| 不卡久久| 欧美精品hdxxxxx| 日本亚洲精品成人| 手机在线看片不卡中文字幕| 黄色免费看| 在线观看免费情网站大全| 91福利国产在线观看一区二区| 精品国产美女福到在线不卡f| 国产成人精品一区二区三在线观看| 亚洲一在线| 色的综合| 黄色片的网址| 亚洲国产美女视频|