一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

教你一招,簡(jiǎn)化儀器Python編程控制!

泰克科技 ? 來(lái)源:泰克科技 ? 2024-03-15 14:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

許多行業(yè)的工程師都使用自動(dòng)化來(lái)擴(kuò)展其測(cè)試儀器的功能,而大多是選擇免費(fèi)的編程語(yǔ)言——Python來(lái)完成。作為適用于自動(dòng)化的主要編程語(yǔ)言,Python具備許多顯著優(yōu)勢(shì):

多功能性

易于教學(xué)

代碼可讀性

廣泛可用的知識(shí)庫(kù)和模塊

自動(dòng)化包含兩種主要使用情形:

? 模擬人類(lèi)行為以自動(dòng)化前面板并節(jié)省時(shí)間的例程,例如自動(dòng)化合規(guī)性測(cè)試。每次需要測(cè)試新零件時(shí),工程師不會(huì)呆坐在示波器前,添加相應(yīng)的測(cè)量值并記下結(jié)果,而是開(kāi)發(fā)一個(gè)腳本來(lái)完成所有工作并顯示最終結(jié)果。

?擴(kuò)展儀器功能的用途,例如:測(cè)量記錄、驗(yàn)證或質(zhì)量保證。自動(dòng)化操作支持工程師執(zhí)行復(fù)雜的測(cè)試,且能夠規(guī)避測(cè)試過(guò)程中的許多固有缺點(diǎn)。操作人員無(wú)需設(shè)置示波器和手動(dòng)記錄結(jié)果,且每次都可以以相同的方式進(jìn)行測(cè)試。

本技術(shù)簡(jiǎn)介將涵蓋使用Python進(jìn)行編程所需的內(nèi)容,包括編程接口的基礎(chǔ)知識(shí)以及下載和運(yùn)行方法的示例。

1

編程接口的定義

編程接口(PI)是兩個(gè)計(jì)算系統(tǒng)之間的一個(gè)或多個(gè)邊界,可以通過(guò)編程來(lái)執(zhí)行特定行為。就本文而言,編程接口是運(yùn)行每臺(tái)泰克測(cè)試設(shè)備的計(jì)算機(jī)和最終用戶(hù)編寫(xiě)的應(yīng)用程序之間的橋梁。為了進(jìn)一步縮小范圍,編程接口在此處定義為一組可以遠(yuǎn)程發(fā)送到儀器的命令,儀器會(huì)處理這些命令并執(zhí)行相應(yīng)的任務(wù)。PI堆棧(圖1)顯示了從主機(jī)控制器到儀器的信息流。最終用戶(hù)編寫(xiě)的應(yīng)用程序代碼用于定義目標(biāo)儀器的行為。

最終用戶(hù)通常用業(yè)內(nèi)流行的開(kāi)發(fā)平臺(tái)編寫(xiě)代碼,如Python、MATLABLabVIEW、C++C#。這些應(yīng)用程序?qū)⑹褂每删幊虄x器標(biāo)準(zhǔn)命令(SCPI)格式——大多數(shù)測(cè)試和測(cè)量設(shè)備都支持的標(biāo)準(zhǔn)格式——發(fā)送數(shù)據(jù)。SCPI命令通常通過(guò)虛擬儀器軟件架構(gòu)(VISA)層發(fā)送,VISA層可通過(guò)為增強(qiáng)通信協(xié)議的魯棒性(例如錯(cuò)誤檢查)促進(jìn)數(shù)據(jù)傳輸。在某些情況下,應(yīng)用程序可能會(huì)調(diào)用驅(qū)動(dòng)程序,然后驅(qū)動(dòng)程序會(huì)向VISA層發(fā)送一個(gè)或多個(gè)SCPI命令。

2

tm_devices驅(qū)動(dòng)程序包的內(nèi)容

泰克的tm_devices是泰克自行開(kāi)發(fā)的設(shè)備管理包,支持用戶(hù)使用編程語(yǔ)言Python控制和自動(dòng)化泰克和吉時(shí)利產(chǎn)品的測(cè)試過(guò)程。使用Python的軟件包管理系統(tǒng)pip可快速安裝tm_devices。

Python軟件包包含大量命令和功能,可幫助用戶(hù)輕松地對(duì)泰克和吉時(shí)利產(chǎn)品進(jìn)行自動(dòng)化測(cè)試。其可在最流行的Python IDE中使用,且支持代碼補(bǔ)全輔助。此外,Python軟件包還可以幫助任何水平軟件技能的工程師簡(jiǎn)單輕松地進(jìn)行編碼和測(cè)試自動(dòng)化。

3

環(huán)境設(shè)置

本節(jié)將指導(dǎo)您完成使用tm_ devices進(jìn)行開(kāi)發(fā)工作的先決條件和安裝。我們特意在Python(venvs)中提供了支持虛擬環(huán)境的指令,因?yàn)槲覀兿嘈胚@樣可以幫助您更輕松地管理和維護(hù)項(xiàng)目,特別是在使用Python軟件包之前,您只是簡(jiǎn)單地試用了一下的情況下。

3.1

安裝與先決條件概述

1. 安裝 Python.

a.Python >=3.8

2. PyCharm——PyCharm安裝、啟動(dòng)項(xiàng)目和tm_devices安裝

3. VSCode——VSCode安裝、啟動(dòng)項(xiàng)目和tm_devices安裝

3.2

PyCharm社區(qū)版(免費(fèi))

PyCharm是一款各行各業(yè)軟件開(kāi)發(fā)人員廣泛使用的Python IDE。PyCharm有一個(gè)集成的單元測(cè)試器,支持用戶(hù)按文件、類(lèi)、方法的運(yùn)行測(cè)試,或直接運(yùn)行文件夾中的所有測(cè)試。與大多數(shù)現(xiàn)代IDE一樣,PyCharm擁有代碼補(bǔ)全形式,和基本的文本編輯器相比,可以大大加快開(kāi)發(fā)速度。

接下來(lái),我們將為您介紹PyCharm社區(qū)版(免費(fèi))的安裝過(guò)程,然后在IDE中安裝tm_devices并設(shè)置一個(gè)虛擬環(huán)境進(jìn)行開(kāi)發(fā)。

1. 訪問(wèn)

https://www.jetbrains.com/pycharm/

2. 跳過(guò)PyCharm專(zhuān)業(yè)版,下拉至PyCharm社區(qū)版,然后點(diǎn)擊下載。

96c51618-e284-11ee-a297-92fbcf53809c.jpg

3. 請(qǐng)繼續(xù)執(zhí)行默認(rèn)的安裝步驟。無(wú)需進(jìn)行任何特殊操作。

4. 歡迎使用PyCharm!

96cfc590-e284-11ee-a297-92fbcf53809c.png

在PyCharm中創(chuàng)建新項(xiàng)目并設(shè)置虛擬環(huán)

5. 點(diǎn)擊“新建項(xiàng)目”。

6. 確認(rèn)項(xiàng)目路徑,確保選擇“Virtualenv”。

9777eb58-e284-11ee-a297-92fbcf53809c.png

7. 打開(kāi)一個(gè)終端。如果您的視圖底部沒(méi)有帶標(biāo)簽的按鈕,請(qǐng)查看以下內(nèi)容:

978464aa-e284-11ee-a297-92fbcf53809c.png

8. 在終端提示符出現(xiàn)之前進(jìn)行檢查(venv),確認(rèn)虛擬環(huán)境已設(shè)置。

9791f26e-e284-11ee-a297-92fbcf53809c.png

9.從終端安裝驅(qū)動(dòng)程序。

鍵入:pip install tm _ devices

97994e9c-e284-11ee-a297-92fbcf53809c.png

10. 確保終端沒(méi)有出錯(cuò)!開(kāi)始使用吧!

3.3

Visual Studio Code

Visual Studio Code是另一款各行各業(yè)的軟件開(kāi)發(fā)人員都在使用的免費(fèi)IDE。其適用于大多數(shù)語(yǔ)言,且具有針對(duì)大多數(shù)語(yǔ)言的擴(kuò)展包,因此用戶(hù)能夠在此IDE中快捷高效地進(jìn)行編碼。Visual Studio Code可提供IntelliSense。IntelliSense是非常實(shí)用的開(kāi)發(fā)工具,有助于代碼補(bǔ)全、參數(shù)信息以及其他有關(guān)對(duì)象和類(lèi)的信息。tm_devices支持對(duì)描述對(duì)象和類(lèi)的命令樹(shù)快速進(jìn)行代碼補(bǔ)全。

4

示例代碼

在本節(jié)中,我們將逐步介紹一個(gè)簡(jiǎn)單的代碼示例,并重點(diǎn)介紹一些有效使用tm_ devices的必要組件。

4.1

導(dǎo)入

97c7a77e-e284-11ee-a297-92fbcf53809c.png

這兩行對(duì)于tm_devices的有效使用至關(guān)重要。在第一行中,我們導(dǎo)入DeviceManager。這將處理多個(gè)設(shè)備類(lèi)的樣板連接和斷開(kāi)。

在第二行中,我們導(dǎo)入一個(gè)特定的驅(qū)動(dòng)程序(在本例中是MSO4B)。

我們用DeviceManager設(shè)置一個(gè)上下文管理器:

97d5d128-e284-11ee-a297-92fbcf53809c.png

然后,當(dāng)我們同時(shí)使用設(shè)備管理器和驅(qū)動(dòng)程序時(shí):

97df674c-e284-11ee-a297-92fbcf53809c.png

我們可以用與其型式匹配的特定命令集來(lái)實(shí)例化儀器。輸入您儀器的ip地址(其他VISA地址也可)即可。

補(bǔ)全以上四行代碼后,我們就可以開(kāi)始為MSO4B編寫(xiě)特定的自動(dòng)化代碼了!

4.2

代碼片段

接下來(lái)我們來(lái)看看幾個(gè)簡(jiǎn)單的操作:

將觸發(fā)類(lèi)型設(shè)置為邊沿觸發(fā)

97f11582-e284-11ee-a297-92fbcf53809c.png

以下是添加和查詢(xún)CH1峰-峰值測(cè)量值的方法:

97fb0704-e284-11ee-a297-92fbcf53809c.png

如果您想對(duì)CH2進(jìn)行幅值測(cè)量:

9808178c-e284-11ee-a297-92fbcf53809c.png

5

使用IntelliSense/代碼補(bǔ)全

IntelliSense——微軟的代碼補(bǔ)全系統(tǒng),也是我們?cè)诒M可能利用的IDE的一個(gè)強(qiáng)大功能。

SCPI命令集是測(cè)試和測(cè)量設(shè)備自動(dòng)化面臨一大障礙。這是一種較為過(guò)時(shí)的結(jié)構(gòu),其語(yǔ)法在開(kāi)發(fā)社區(qū)中并未得到廣泛支持。

我們使用tm_devices所做的是為每個(gè)SCPI命令創(chuàng)建一組Python命令。我們可以從現(xiàn)有的命令語(yǔ)法中生成Python代碼,避免手動(dòng)開(kāi)發(fā)驅(qū)動(dòng)程序,并創(chuàng)建現(xiàn)有SCPI用戶(hù)熟悉的結(jié)構(gòu)。tm_devices還可映射在程序創(chuàng)建期間可能需要特意調(diào)試的底層代碼。Python命令的結(jié)構(gòu)模仿了SCPI(或在某些吉時(shí)利案例中的TSP)命令結(jié)構(gòu),因此如果您熟悉SCPI,您就知道這些結(jié)構(gòu)。

以下是關(guān)于“IntelliSense如何顯示先前鍵入的命令”的所有可用命令示例。

在Scope上的圓點(diǎn)后出現(xiàn)的可滾動(dòng)列表中,我們可以看到按字母順序排列的Scope命令類(lèi)別列表:

980e4ca6-e284-11ee-a297-92fbcf53809c.png

選擇afg,我們可以看到afg類(lèi)別列表。

981adcaa-e284-11ee-a297-92fbcf53809c.png

在IntelliSense的幫助下編寫(xiě)的最終命令:

9826d51e-e284-11ee-a297-92fbcf53809c.png

6

文檔字符串幫助

編寫(xiě)代碼之時(shí),或者查看其他人的代碼時(shí),您可以將鼠標(biāo)懸停在語(yǔ)法的不同部分上,以獲得該級(jí)別的特定幫助文檔。越接近完整的命令語(yǔ)法,其內(nèi)容就越具體。

983aa062-e284-11ee-a297-92fbcf53809c.png

根據(jù)您的IDE設(shè)置,您可以同時(shí)查看IntelliSense和文檔字符串幫助。

9842565e-e284-11ee-a297-92fbcf53809c.png984d0cb6-e284-11ee-a297-92fbcf53809c.png

閱讀本指南后,您可以了解泰克Python驅(qū)動(dòng)程序包tm_devices的部分優(yōu)勢(shì),接下來(lái)便可以開(kāi)始您的自動(dòng)化之旅了。通過(guò)簡(jiǎn)單的設(shè)置、代碼補(bǔ)全和內(nèi)置幫助,您無(wú)需離開(kāi)IDE就能學(xué)習(xí),進(jìn)而可以加快開(kāi)發(fā)速度,并以更高的信心進(jìn)行編碼。

如果您希望改進(jìn)軟件包,Github repo中有編輯指南。在文檔和examples文件夾的軟件包內(nèi)容中突出顯示了大量更高級(jí)的示例。

7

其他資源

tm_devices·PyPI——軟件包驅(qū)動(dòng)程序下載和信息

tm_devices Github——源代碼、問(wèn)題跟蹤、編輯

https://github.com/tektronix/tm_devices#documentation ——在線文檔

8

故障排除

通常情況下,故障排除的第一步是升級(jí)pip:

在您的終端鍵入:Python.exe -m pip install -upgrade pip

錯(cuò)誤:whl看起來(lái)像文件名,但文件不存在或此平臺(tái)不支持whl。

98c4e1dc-e284-11ee-a297-92fbcf53809c.png

解決方案:在pip中安裝wheel,使其能夠識(shí)別文件格式。

在您的終端鍵入:pip install wheel

如果您需要離線安裝wheel,您可以遵循與附件A類(lèi)似的說(shuō)明,但其需要下載tar.gz格式文件而非.whl文件。


審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制器
    +關(guān)注

    關(guān)注

    114

    文章

    17116

    瀏覽量

    184444
  • 示波器
    +關(guān)注

    關(guān)注

    113

    文章

    6709

    瀏覽量

    189364
  • LabVIEW
    +關(guān)注

    關(guān)注

    2002

    文章

    3670

    瀏覽量

    336198
  • 編程語(yǔ)言
    +關(guān)注

    關(guān)注

    10

    文章

    1956

    瀏覽量

    36708
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86830

原文標(biāo)題:【操作指南】教你一招,簡(jiǎn)化儀器Python編程控制!

文章出處:【微信號(hào):泰克科技,微信公眾號(hào):泰克科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    教你一招如何分辨PCB板層數(shù)

    教你一招如何分辨PCB板層數(shù)
    發(fā)表于 04-23 06:36

    教你一招如何去實(shí)現(xiàn)傅立葉變換算法?

    教你一招如何去實(shí)現(xiàn)傅立葉變換算法?
    發(fā)表于 04-30 06:05

    教你一招怎樣去選擇合適的CPLD

    CPLD有哪些優(yōu)點(diǎn)?教你一招怎樣去選擇合適的CPLD
    發(fā)表于 05-06 09:48

    教你一招分分鐘實(shí)現(xiàn)頻譜儀帶寬的正確設(shè)置

    教你一招分分鐘實(shí)現(xiàn)頻譜儀帶寬的正確設(shè)置
    發(fā)表于 05-07 06:36

    教你一招定時(shí)器中斷該怎么辦?

    教你一招定時(shí)器中斷該怎么辦?
    發(fā)表于 05-14 06:34

    教你一招如何通過(guò)手機(jī)的芯片來(lái)判斷手機(jī)的價(jià)格?

    教你一招如何通過(guò)手機(jī)的芯片來(lái)判斷手機(jī)的價(jià)格?
    發(fā)表于 05-24 06:47

    教你一招如何去選擇射頻濾波器?

    教你一招如何去選擇射頻濾波器?
    發(fā)表于 05-28 07:05

    教你一招RK31885.1藍(lán)牙MAC怎樣才能從模組中獲取MAC地址

    教你一招RK31885.1藍(lán)牙MAC怎樣才能從模組中獲取MAC地址
    發(fā)表于 02-18 06:28

    筆記本硬盤(pán)保養(yǎng)15(一招都馬虎不得)

    筆記本硬盤(pán)保養(yǎng)15(一招都馬虎不得) 硬盤(pán)保養(yǎng)也是門(mén)學(xué)問(wèn)  如今快節(jié)奏的工作造就了部分“拆硬盤(pán)”的人,小編所說(shuō)的“拆硬盤(pán)
    發(fā)表于 01-21 15:28 ?1086次閱讀

    巧解任何電腦的開(kāi)機(jī)密碼(小小一招就搞定)

    巧解任何電腦的開(kāi)機(jī)密碼(小小一招就搞定) 小小一招巧解任何電腦的開(kāi)機(jī)密碼,無(wú)需任何工具,無(wú)需放電 任
    發(fā)表于 02-25 10:57 ?851次閱讀

    教你一招辨別真假OLED屏

    現(xiàn)在市面上有很多電視都說(shuō)是OLED屏也就是曲面電視,但你真的知道什么才是曲面電視呢?是不是以為所謂的曲面電視就是所謂的屏幕彎曲,那你就錯(cuò)了。想要知道曲面電視是怎樣的,首先得知道它的概念。以下小編為你解說(shuō)什么才是真正的曲面電視,如何一招辨別它的真假。
    發(fā)表于 09-25 13:01 ?1.8w次閱讀

    一招讓手機(jī)屏立馬干凈

    手機(jī)屏幕油膩還滿(mǎn)是手???教你一招,立馬干凈亮閃閃
    的頭像 發(fā)表于 08-27 17:26 ?7068次閱讀

    教你一招開(kāi)啟遠(yuǎn)程辦公,上班被隔離也不怕

    ?下面教你一招。 因?yàn)槭峭蝗槐桓綦x,許多人來(lái)不及回家搬電腦,也不可能搬走公司的辦公電腦,所以要開(kāi)展遠(yuǎn)程辦公,就只能依靠手機(jī)。也許有人會(huì)疑惑,手機(jī)屏幕那么小,能遠(yuǎn)程辦公嗎?答案是只要手機(jī)和電腦都安裝了遠(yuǎn)程控制軟件
    的頭像 發(fā)表于 04-23 18:00 ?2165次閱讀
    <b class='flag-5'>教你</b><b class='flag-5'>一招</b>開(kāi)啟遠(yuǎn)程辦公,上班被隔離也不怕

    5G NR生成與解調(diào)很難?教你一招輕松解決

    作為項(xiàng)近些年才出現(xiàn)的新技術(shù),5GNR信號(hào)生成與解調(diào)分析相關(guān)的設(shè)備和技術(shù)相對(duì)來(lái)說(shuō)尚處于覆蓋面較少階段,部分電子測(cè)試工程師可能會(huì)對(duì)相關(guān)操作感到比較陌生。今天我們就來(lái)教你一招,輕松解決5GNR信號(hào)的生成
    的頭像 發(fā)表于 09-09 08:30 ?1424次閱讀
    5G NR生成與解調(diào)很難?<b class='flag-5'>教你</b><b class='flag-5'>一招</b>輕松解決

    哪些晶體、諧振器和振蕩器可旋轉(zhuǎn)180°使用?一招教你快速識(shí)別

    哪些晶體、諧振器和振蕩器可旋轉(zhuǎn)180°使用?一招教你快速識(shí)別
    的頭像 發(fā)表于 12-05 16:37 ?673次閱讀
    哪些晶體、諧振器和振蕩器可旋轉(zhuǎn)180°使用?<b class='flag-5'>一招</b>兒<b class='flag-5'>教你</b>快速識(shí)別