Prova simplificadora
Automatització amb
tm_devices i Python
GUIA COM
Simplificant l'automatització de proves amb dispositius tm_ i Python
GUIA COM
Simplificant l'automatització de proves amb tm_devices i Python
Els enginyers de moltes indústries utilitzen l'automatització per ampliar les capacitats dels seus instruments de prova. Molts enginyers trien el llenguatge de programació gratuït Python per aconseguir-ho. Hi ha molts avanços significatiustages que fan de Python un gran llenguatge de programació per a l'automatització:
- Versatilitat
- Fàcil d'ensenyar i aprendre
- Llegibilitat del codi
- Bases de coneixements i mòduls àmpliament disponibles
Hi ha dos casos d'ús principals per a l'automatització:
- Rutines que imiten el comportament humà per automatitzar el tauler frontal i estalviar temps, per exemple, proves de compliment automatitzades.
En lloc de seure a l'abast, afegir mesures adequades i anotar els resultats cada vegada que necessiteu provar una peça nova, l'enginyer desenvolupa un script que fa tot això i mostra el resultat. - Usos que amplien la funcionalitat de l'instrument; per example: registre de mesurament, validació o garantia de qualitat.
L'automatització permet a l'enginyer executar proves complexes sense molts dels inconvenients inherents a aquestes proves. No cal que un operador configuri l'abast i enregistri manualment els resultats, i la prova es pot realitzar de la mateixa manera cada vegada.
Aquesta guia explicarà el que necessiteu per començar a programar els àmbits de programació a Python, inclosos els conceptes bàsics de les interfícies programàtiques i com descarregar i executar un ex.ample.
Què és una interfície programàtica?
Una interfície programàtica (PI) és un límit o conjunt de límits entre dos sistemes informàtics que es poden programar per executar comportaments específics. Per als nostres propòsits, és el pont entre l'ordinador que executa tots els equips de prova de Tektronix i l'aplicació escrita per un usuari final. Per restringir-ho encara més, es tracta d'ordres de sof que es poden enviar de forma remota a un instrument que després processa aquestes ordres i executa la tasca corresponent. La pila PI (figura 1) mostra el flux d'informació des del controlador amfitrió fins a l'instrument. El codi d'aplicació escrit per l'usuari final defineix el comportament de l'instrument objectiu. Normalment s'escriu en una de les plataformes de desenvolupament populars de la indústria com Python, MATLAB, LabVIEW, C++ o C#. Aquesta aplicació enviarà dades mitjançant el format d'ordres estàndard per a instrumentació programable (SCPI), que és un estàndard compatible amb la majoria d'equips de prova i mesura. Les ordres SCPI s'envien sovint a través d'una capa d'arquitectura de programari d'instruments virtuals (VISA), que s'utilitza per facilitar la transferència de dades mitjançant la inclusió de robustesa addicional (per exemple, comprovació d'errors) al protocol de comunicació. En alguns casos, les aplicacions poden trucar a un controlador que després enviarà una o més ordres SCPI a la capa VISA.Figura 1. La pila d'interfície programàtica (PI) mostra el flux d'informació entre un controlador amfitrió i un instrument.
Què és el paquet tm_devices?
tm_devices és un paquet de gestió de dispositius desenvolupat per Tektronix que inclou multitud d'ordres i funcions per ajudar els usuaris a automatitzar fàcilment les proves dels productes Tektronix i Keithley mitjançant el llenguatge de programació Python. Es pot utilitzar en els IDE més populars per a Python i admet ajudes per completar codi. Aquest paquet fa que la codificació i l'automatització de proves siguin senzilles i fàcils per als enginyers amb habilitats de programari de qualsevol nivell. La instal·lació també és senzilla i utilitza pip, el sistema de gestió de paquets de Python.
Configuració del vostre entorn
Aquesta secció us guiarà a través dels requisits previs i les instal·lacions per preparar-vos per fer treballs de desenvolupament amb tm_devices. També inclou instruccions que admeten entorns virtuals en Python (venvs) per facilitar la gestió i el manteniment dels vostres projectes, sobretot si només esteu provant aquest paquet abans de comprometre's amb el seu ús.
Nota: Si teniu un entorn sense accés directe a Internet, haureu de modificar els vostres passos mitjançant les ordres de l'apèndix. Si teniu problemes, no dubteu a publicar-ho al discussions github per a l'assistència.
Instal·lació i requisits previs acabatsview
- Instal·leu Python
a. Python ≥ 3.8 - PyCharm: instal·lació de PyCharm, inici d'un projecte i instal·lació de tm_devices
- VSCode: instal·lació de VSCode, inici d'un projecte i instal·lació de tm_devices
Edició PyCharm Community (gratuïta).
PyCharm és un IDE Python popular utilitzat pels desenvolupadors de programari de totes les indústries. PyCharm té un provador d'unitats integrat que permet als usuaris executar proves file, classe, mètode o totes les proves d'una carpeta. Com la majoria dels IDE moderns, té una forma de finalització de codi que accelera enormement el vostre desenvolupament amb un editor de text bàsic.
Passarem per la instal·lació de l'edició comunitària de PyCharm (gratuïta), seguida d'instal·lar tm_devices a l'IDE i configurar un entorn virtual per desenvolupar-hi.
- Vés a https://www.jetbrains.com/pycharm/
- Desplaceu-vos més enllà de PyCharm Professional fins a PyCharm Community Edition, feu clic a Baixa
- Hauríeu de poder continuar només amb els passos d'instal·lació predeterminats. No necessitem res únic.
- Benvingut a PyCharm!
- Ara haureu de crear un nou projecte i assegureu-vos de configurar un entorn virtual. Feu clic a "Nou projecte"
- Confirmeu el camí del projecte, assegureu-vos que estigui seleccionat "Virtualenv".
- Obriu un terminal. Si el teu view no inclou el botó etiquetat a la part inferior busca això:
- Confirmeu que l'entorn virtual està configurat comprovant ( venv ) abans de la sol·licitud al vostre terminal
- Instal·leu el controlador des del terminal
Tipus: pip install tm_devices - El vostre terminal hauria d'estar lliure d'errors! Feliç pirateig!
Codi Visual Studio
Visual Studio Code és un altre IDE gratuït popular que utilitzen els desenvolupadors de programari de totes les indústries. És fantàstic per a la majoria d'idiomes i té extensions per a la majoria d'idiomes que fan que la codificació en aquest IDE sigui molt còmoda i eficient. Visual Studio Code proporciona IntelliSense, que és una eina extremadament útil a l'hora de desenvolupar-se, ja que ajuda a completar codi, informació de paràmetres i altra informació sobre objectes i classes. De manera convenient, tm_devices admet la finalització de codi que descriu l'arbre d'ordres dels objectes i les classes.
Tenim una guia excel·lent sobre la instal·lació de Python i Visual Studio Code, que inclou informació sobre la configuració de l'entorn virtual aquí.
Exampel codi
En aquesta secció passarem per fragments d'un codi senzill, example i destaca alguns components necessaris per utilitzar els dispositius tm_ de manera eficaç.
ImportacionsAquestes dues línies són crítiques per a l'ús efectiu de tm_devices. A la primera línia importem el DeviceManager. Això gestionarà la connexió i desconnexió de múltiples classes de dispositius.
A la segona línia importem un controlador específic, en aquest cas el MSO5B.
Configurem un gestor de context amb el DeviceManager:I després, quan fem servir el gestor de dispositius i el controlador junts:
Podem crear una instancia d'un instrument amb un conjunt d'ordres específic que coincideixi amb el seu model. Només cal que introduïu l'adreça IP del vostre instrument (les altres adreces VISA també funcionen).
Amb aquestes quatre línies completes, podem començar a escriure una automatització significativa i específica per al MSO5B!
Fragments de codi
Fem una ullada a algunes accions senzilles:
Configurant el tipus de disparador a EdgeA continuació s'explica com afegiríeu i consulteu una mesura de pic a pic al CH1:
Si volguessis prendre un ampmesura de la litud en CH2:
Utilitzant IntelliSense/Code Completion
IntelliSense: el nom de Microsoft per a Code Completion és una característica molt potent dels IDE que hem intentat explotar tant com sigui possible.
Una de les barreres bàsiques per a l'automatització amb dispositius de prova i mesura és el conjunt d'ordres SCPI. És una estructura datada amb una sintaxi no àmpliament compatible amb la comunitat de desenvolupament.
El que hem fet amb tm_devices és crear un conjunt d'ordres Python per a cada comanda SCPI. Això ens va permetre generar codi Python a partir de la sintaxi d'ordres existent per evitar el desenvolupament manual dels controladors, així com crear una estructura que sigui familiar per als usuaris SCPI existents. També s'assigna al codi de nivell inferior que pot requerir una depuració intencionada durant la creació del programa. L'estructura de les ordres de Python imita l'estructura de les ordres SCPI (o en alguns casos de Keithley TSP), de manera que si esteu familiaritzat amb SCPI, estaràs familiaritzat amb aquestes.
Aquest és un exampfitxer de com IntelliSense mostra totes les ordres disponibles amb l'ordre escrit anteriorment:
A la llista desplaçable que apareix després del punt a l'abast podem veure una llista alfabètica de categories d'ordres d'abast:Si escollim afg, podem veure una llista de categories AFG:
Comandament final escrit amb l'ajuda d'IntelliSense:
Ajuda de Docstring
A mesura que codifiqueu, o mentre llegiu el codi d'una altra persona, podeu passar el cursor per sobre de diferents parts de la sintaxi per obtenir la documentació d'ajuda específica d'aquest nivell. Com més a prop estigueu de la sintaxi de l'ordre completa, més específica serà.Depenent de les condicions de l'IDE, podeu mostrar l'ajuda d'IntelliSense i de documentació alhora.
Amb aquesta guia, heu vist alguns dels avantatges del paquet de controladors Python de Tek tm_devices i podeu iniciar el vostre viatge d'automatització. Amb la fàcil configuració, la finalització del codi i l'ajuda integrada, podreu aprendre sense sortir del vostre IDE, accelerar el temps de desenvolupament i codificar amb més confiança.
Hi ha directrius de contribució al repositori de Github si voleu millorar el paquet. Hi ha molts ex més avançatsampels destacats a la documentació i dins del contingut del paquet a l'Examples carpeta.
Recursos addicionals
tm_devices · PyPI: descàrrega i informació del controlador del paquet
tm_devices Github: codi font, seguiment de problemes, contribució
tm_devices Github – Documentació en línia
Resolució de problemes
L'actualització de pip sol ser un bon primer pas per solucionar problemes:
Al vostre terminal escriviu: Python.exe -m pip install -upgrade pip
Error: whl sembla a filenom, però file no existeix O .whl no és una roda compatible amb aquesta plataforma.
Solució: instal·leu la roda de manera que reconegui el file format.
Al vostre terminal, escriviu: pip install wheel
Si necessiteu instal·lar wheel fora de línia, podeu seguir instruccions semblants a les de l'apèndix A, però requereix la descàrrega tar.gz en lloc del .whl file.
Apèndix A – Instal·lació fora de línia de tm_devices
- En un ordinador amb Internet, descarregueu el paquet juntament amb totes les dependències a la ubicació del camí especificada mitjançant:
descàrrega pip –dest wheel setuptools tm_devices - Copia el files al vostre ordinador que no té accés a Internet
- A continuació, seguiu les instruccions de la guia principal per a l'IDE que feu servir, però canvieu l'ordre d'instal·lació pel següent:
pip install –no-index –find-links files> tm_devices
Informació de contacte:
Austràlia 1 800 709 465
Àustria* 00800 2255 4835
Balcans, Israel, Sud-àfrica i altres països ISE +41 52 675 3777
Bèlgica* 00800 2255 4835
Brasil +55 (11) 3530-8901
Canadà 1 800 833 9200
Europa Central de l'Est / Bàltics +41 52 675 3777
Europa Central / Grècia +41 52 675 3777
Dinamarca +45 80 88 1401
Finlàndia +41 52 675 3777
França* 00800 2255 4835
Alemanya* 00800 2255 4835
Hong Kong 400 820 5835
Índia 000 800 650 1835
Indonèsia 007 803 601 5249
Itàlia 00800 2255 4835
Japó 81 (3) 6714 3086
Luxemburg +41 52 675 3777
Malàisia 1 800 22 55835
Mèxic, Amèrica Central/Sud i el Carib 52 (55) 88 69 35 25
Orient Mitjà, Àsia i Nord d'Àfrica +41 52 675 3777
Països Baixos* 00800 2255 4835
Nova Zelanda 0800 800 238
Noruega 800 16098
República Popular de la Xina 400 820 5835
Filipines 1 800 1601 0077
Polònia +41 52 675 3777
Portugal 80 08 12370
República de Corea +82 2 565 1455
Rússia/CIS +7 (495) 6647564
Singapur 800 6011 473
Sud-àfrica +41 52 675 3777
Espanya* 00800 2255 4835
Suècia* 00800 2255 4835
Suïssa* 00800 2255 4835
Taiwan 886 (2) 2656 6688
Tailàndia 1 800 011 931
Regne Unit/Irlanda* 00800 2255 4835
EUA 1 800 833 9200
Vietnam 12060128
* Número gratuït europeu. Sinó
accessible, truqueu: +41 52 675 3777
Rev. 02.2022
Trobeu recursos més valuosos a TEK.COM
Copyright © Tektronix. Tots els drets reservats. Els productes Tektronix estan coberts per patents nord-americanes i estrangeres, emeses i pendents. La informació d'aquesta publicació substitueix la de tot el material publicat anteriorment. Especificacions i privilegis de canvi de preu reservats. TEKTRONIX i TEK són marques comercials registrades de Tektronix, Inc. Tots els altres noms comercials als quals es fa referència són marques de servei, marques comercials o marques comercials registrades de les seves respectives empreses.
052124 SBG 46W-74037-1
Documents/Recursos
![]() | Tektronix simplifica l'automatització de proves amb dispositius tm_ i Python [pdfGuia de l'usuari 48W-73878-1, Simplificació de l'automatització de proves amb dispositius tm_ i Python, automatització de proves amb dispositius tm_ i Python, Automatització amb dispositius tm_ i Python, tm_ Dispositius i Python, dispositius i Python, Python |