Zjednodušující test
Automatizace s
tm_devices a Python
PŘÍRUČKA
Zjednodušení automatizace testování pomocí zařízení tm_ a Pythonu
PŘÍRUČKA
Zjednodušení automatizace testování pomocí tm_devices a Pythonu
Inženýři v mnoha průmyslových odvětvích využívají automatizaci k rozšíření možností svých testovacích přístrojů. Mnoho inženýrů si k tomu vybírá bezplatný programovací jazyk Python. Existuje mnoho významných výhodtagkteré dělají z Pythonu skvělý programovací jazyk pro automatizaci:
- Všestrannost
- Snadno se učí a učí
- Čitelnost kódu
- Široce dostupné znalostní báze a moduly
Existují dva hlavní případy použití automatizace:
- Rutiny, které napodobují lidské chování pro automatizaci předního panelu a šetří čas, např. automatizované testování shody.
Namísto sezení u osciloskopu, přidávání vhodných měření a zapisování výsledků pokaždé, když potřebujete otestovat novou součást, technik vyvine skript, který to vše provede a zobrazí výsledek. - Použití, která rozšiřují funkčnost nástroje; napřample: protokolování měření, validace nebo zajištění kvality.
Automatizace umožňuje inženýrům provádět složité testy bez mnoha nevýhod, které jsou těmto testům vlastní. Není potřeba, aby operátor nastavoval rozsah a ručně zaznamenával výsledky, a test lze provést pokaždé stejným způsobem.
Tento návod pokryje, co potřebujete, abyste mohli začít s programováním oborů v Pythonu, včetně základů programových rozhraní a jak stáhnout a spustit example.
Co je programové rozhraní?
Programové rozhraní (PI) je hranice nebo soubor hranic mezi dvěma výpočetními systémy, které lze naprogramovat tak, aby prováděly specifické chování. Pro naše účely je to most mezi počítačem, na kterém běží každé testovací zařízení Tektronix, a aplikací napsanou koncovým uživatelem. Abychom to ještě více zúžili, jedná se o sof příkazy, které lze na dálku poslat do přístroje, který pak tyto příkazy zpracuje a provede odpovídající úlohu. Zásobník PI (obrázek 1) ukazuje tok informací z hostitelského ovladače dolů do přístroje. Aplikační kód napsaný koncovým uživatelem definuje chování cílového nástroje. To je obvykle napsáno na jedné z vývojových platforem populární v tomto odvětví, jako je Python, MATLAB, LabVIEW, C++ nebo C#. Tato aplikace bude odesílat data pomocí formátu SCPI (Standard Commands for Programmable Instrumentation), což je standard podporovaný většinou testovacích a měřicích zařízení. Příkazy SCPI se často zasílají prostřednictvím vrstvy VISA (Virtual Instrument Software Architecture), která se používá k usnadnění přenosu dat zahrnutím dodatečné robustnosti (např. kontroly chyb) do komunikačního protokolu. V některých případech mohou aplikace zavolat ovladač, který pak odešle jeden nebo více příkazů SCPI do vrstvy VISA.Obrázek 1. Zásobník programového rozhraní (PI) ukazuje tok informací mezi hostitelským kontrolérem a přístrojem.
Co je balíček tm_devices?
tm_devices je balíček pro správu zařízení vyvinutý společností Tektronix, který obsahuje množství příkazů a funkcí, které uživatelům pomáhají snadno automatizovat testy produktů Tektronix a Keithley pomocí programovacího jazyka Python. Lze jej použít v nejpopulárnějších IDE pro Python a podporuje pomůcky pro dokončování kódu. Tento balíček zjednodušuje kódování a automatizaci testování pro inženýry se softwarovými dovednostmi jakékoli úrovně. Instalace je také jednoduchá a používá pip, systém pro správu balíčků Pythonu.
Nastavení prostředí
Tato část vás provede předpoklady a instalacemi, které vás připraví na vývojovou práci s tm_devices. Zahrnuje také pokyny, které podporují virtuální prostředí v Pythonu (venvs), aby se vaše projekty snáze spravovaly a udržovaly, zvláště pokud tento balíček teprve zkoušíte, než se zavážete k jeho použití.
Poznámka: Pokud máte prostředí bez přímého přístupu k internetu, budete muset upravit své kroky pomocí příkazů v příloze. Pokud máte problémy, neváhejte napsat do diskuse na githubu o pomoc.
Instalace a předpoklady skončilyview
- Nainstalujte Python
A. Python ≥ 3.8 - PyCharm – Instalace PyCharm, Spuštění projektu a instalace tm_devices
- VSCode – Instalace VSCode, Spuštění projektu a instalace tm_devices
PyCharm Community (bezplatná) edice
PyCharm je populární Python IDE používané vývojáři softwaru ve všech odvětvích. PyCharm má integrovaný tester jednotek, který uživatelům umožňuje spouštět testy file, třída, metoda nebo všechny testy ve složce. Jako většina moderních IDE má formu dokončování kódu, která ohromně urychluje váš vývoj oproti základnímu textovému editoru.
Projdeme si instalační edici komunity PyCharm (zdarma), následovanou instalací tm_devices do IDE a nastavením virtuálního prostředí pro vývoj.
- Přejít na https://www.jetbrains.com/pycharm/
- Přejděte kolem PyCharm Professional na PyCharm Community Edition, klikněte na stáhnout
- Měli byste být schopni pokračovat pouze s výchozími kroky instalace. Nepožadujeme nic jedinečného.
- Vítejte v PyCharm!
- Nyní budete muset vytvořit nový projekt a ujistit se, že jste nastavili virtuální prostředí. Klikněte na „Nový projekt“
- Potvrďte cestu k projektu a ujistěte se, že je vybráno „Virtualenv “
- Otevřete terminál. Pokud váš view nezahrnuje označené tlačítko ve spodní části, podívejte se na toto:
- Potvrďte, že je virtuální prostředí nastaveno zaškrtnutím ( venv ) před výzvou ve vašem terminálu
- Nainstalujte ovladač z terminálu
Typ: pip install tm_devices - Váš terminál by měl být bezchybný! Šťastné hackování!
Kód Visual Studio
Visual Studio Code je další populární bezplatné IDE, které používají vývojáři softwaru ve všech odvětvích. Je skvělý pro většinu jazyků a má rozšíření pro většinu jazyků, díky kterým je kódování v tomto IDE velmi pohodlné a efektivní. Visual Studio Code poskytuje IntelliSense, což je extrémně užitečný nástroj při vývoji, protože pomáhá při dokončování kódu, informacích o parametrech a dalších informacích týkajících se objektů a tříd. tm_devices pohodlně podporuje dokončování kódu, který popisuje strom příkazů objektů a tříd.
Máme vynikajícího průvodce instalací kódu Pythonu i Visual Studio, včetně informací o nastavení virtuálního prostředí zde.
Example Kód
V této části si projdeme části jednoduchého kódu example a zvýrazněte některé nezbytné součásti pro efektivní využití zařízení tm_.
DovozTyto dva řádky jsou rozhodující pro efektivní využití tm_devices. V prvním řádku importujeme DeviceManager. To zvládne základní připojení a odpojení více tříd zařízení.
Ve druhém řádku importujeme konkrétní ovladač, v tomto případě MSO5B.
Pomocí DeviceManageru nastavíme správce kontextu:A když pak společně použijeme správce zařízení a ovladač:
Můžeme vytvořit instanci nástroje pomocí specifické sady příkazů, která odpovídá jeho modelu. Stačí zadat IP adresu vašeho přístroje (fungují i další VISA adresy).
Po dokončení těchto čtyř řádků jsme schopni začít psát smysluplnou a specifickou automatizaci pro MSO5B!
Úryvky kódu
Podívejme se na několik jednoduchých akcí –
Nastavení typu Trigger na EdgeZde je návod, jak byste přidali a dotazovali měření od vrcholu k vrcholu na CH1:
Pokud byste chtěli vzít ampměření nadmořské výšky na CH2:
Použití IntelliSense/dokončování kódu
IntelliSense – název společnosti Microsoft pro dokončování kódu je velmi výkonná funkce IDE, kterou jsme se snažili co nejvíce využít.
Jednou z hlavních překážek automatizace s testovacími a měřicími zařízeními je sada příkazů SCPI. Je to datovaná struktura se syntaxí, která ve vývojářské komunitě není široce podporována.
S tm_devices jsme vytvořili sadu příkazů Pythonu pro každý příkaz SCPI. To nám umožnilo generovat kód Pythonu ze stávající syntaxe příkazů, abychom se vyhnuli ručnímu vývoji ovladačů, a také vytvořili strukturu, která je známá stávajícím uživatelům SCPI. Mapuje se také na kód nižší úrovně, který může vyžadovat záměrné ladění během vytváření programu. Struktura příkazů Pythonu napodobuje strukturu příkazů SCPI (nebo v některých případech Keithley TSP), takže pokud znáte SCPI, budete s nimi obeznámeni.
Tohle je exampsoubor o tom, jak IntelliSense zobrazuje všechny příkazy dostupné s dříve zadaným příkazem:
V rolovacím seznamu, který se objeví za tečkou na scope, můžeme vidět abecední seznam kategorií příkazů scope:Výběrem afg pak můžeme vidět seznam kategorií AFG:
Finální příkaz napsaný s pomocí IntelliSense:
Nápověda pro dokumentační řetězec
Když kódujete nebo čtete kód někoho jiného, můžete umístit ukazatel myši na různé části syntaxe a získat tak konkrétní dokumentaci nápovědy pro tuto úroveň. Čím blíže jste k úplné syntaxi příkazu, tím konkrétnější bude.V závislosti na podmínkách vašeho IDE můžete zobrazit nápovědu IntelliSense i docstring současně.
S tímto průvodcem jste viděli některé z výhod pythonového ovladače Tek tm_devices a můžete začít svou cestu automatizace. Díky snadnému nastavení, dokončování kódu a vestavěné nápovědě se budete moci učit, aniž byste opustili své IDE, urychlíte čas vývoje a budete kódovat s větší jistotou.
Pokud chcete balíček vylepšit, v repozitáři Github jsou pokyny pro příspěvky. Existuje spousta pokročilejších exampsoubory zvýrazněné v dokumentaci a v obsahu balení v Exampsložka les.
Extra zdroje
tm_devices · PyPI – Balíček ke stažení ovladače a informace
tm_devices Github – Zdrojový kód, sledování problémů, příspěvek
tm_devices Github – Online dokumentace
Odstraňování problémů
Upgrade pipu je obvykle dobrým prvním krokem k řešení problémů:
Ve vašem terminálu zadejte: Python.exe -m pip install -upgrade pip
Chyba: whl vypadá jako a filejméno, ale file neexistuje NEBO .whl není podporované kolo na této platformě.
Řešení: Zapněte instalační kolo tak, aby rozpoznalo file formát.
Ve vašem terminálu typu: pip install wheel
Pokud potřebujete nainstalovat kolo offline, můžete postupovat podle podobných pokynů jako v příloze A, ale vyžaduje stažení tar.gz místo souboru .whl file.
Příloha A – Offline instalace tm_devices
- Na počítači s internetem si stáhněte balíček spolu se všemi závislostmi do zadaného umístění cesty pomocí:
pip stahování – cíl nástroje pro nastavení kola tm_devices - Zkopírujte filedo vašeho počítače, který nemá přístup k internetu
- Poté postupujte podle pokynů v hlavní příručce pro jakékoli IDE, které používáte, ale vyměňte příkaz install za následující:
pip install –no-index –find-links files> tm_devices
Kontaktní údaje:
Austrálie 1 800 709 465
Rakousko* 00800 2255 4835
Balkán, Izrael, Jižní Afrika a další země ISE +41 52 675 3777
Belgie* 00800 2255 4835
Brazílie +55 (11) 3530-8901
Kanada 1 800 833 9200
Středovýchodní Evropa / Pobaltí +41 52 675 3777
Střední Evropa / Řecko +41 52 675 3777
Dánsko +45 80 88 1401
Finsko +41 52 675 3777
Francie* 00800 2255 4835
Německo* 00800 2255 4835
Hong Kong 400 820 5835
Indie 000 800 650 1835
Indonésie 007 803 601 5249
Itálie 00800 2255 4835
Japonsko 81 (3) 6714 3086
Lucembursko +41 52 675 3777
Malajsie 1 800 22 55835
Mexiko, Střední/Jižní Amerika a Karibik 52 (55) 88 69 35 25
Střední východ, Asie a severní Afrika +41 52 675 3777
Nizozemsko* 00800 2255 4835
Nový Zéland 0800 800 238
Norsko 800 16098
Čínská lidová republika 400 820 5835
Filipíny 1 800 1601 0077
Polsko +41 52 675 3777
Portugalsko 80 08 12370
Korejská republika +82 2 565 1455
Rusko / SNS +7 (495) 6647564
Singapur 800 6011 473
Jižní Afrika +41 52 675 3777
Španělsko* 00800 2255 4835
Švédsko* 00800 2255 4835
Švýcarsko* 00800 2255 4835
Tchaj-wan 886 (2) 2656 6688
Thajsko 1 800 011 931
Spojené království / Irsko* 00800 2255 4835
USA 1 800 833 9200
Vietnam 12060128
* Evropské bezplatné číslo. Pokud ne
přístupné, volejte: +41 52 675 3777
Rev. 02.2022
Další cenné zdroje najdete na TEK.COM
Copyright © Tektronix. Všechna práva vyhrazena. Na výrobky Tektronix se vztahují americké i zahraniční patenty, vydané a nevyřízené. Informace v této publikaci nahrazují všechny dříve publikované materiály. Oprávnění ke specifikaci a změně ceny vyhrazena. TEKTRONIX a TEK jsou registrované ochranné známky společnosti Tektronix, Inc. Všechny ostatní uvedené obchodní názvy jsou servisní značky, ochranné známky nebo registrované ochranné známky příslušných společností.
052124 SBG 46W-74037-1
Dokumenty / zdroje
![]() |
Tektronix zjednodušuje automatizaci testování pomocí zařízení tm_ a Pythonu [pdfUživatelská příručka 48W-73878-1, Zjednodušení automatizace testování pomocí zařízení tm_ a Python, automatizace testování pomocí zařízení tm_ a Python, automatizace pomocí zařízení tm_ a Python, zařízení tm_ a Python, zařízení a Python, Python |