Tektronix-logoVereenvoudigende toets
Outomatisering met
tm_devices en Python
HOE-OM TE GIDS Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python

Vereenvoudig toetsoutomatisering met tm_-toestelle en Python

HOE-OM TE GIDS
Vereenvoudig toetsoutomatisering met tm_devices en Python
Ingenieurs in baie nywerhede gebruik outomatisering om die vermoëns van hul toetsinstrumente uit te brei. Baie ingenieurs kies die gratis programmeertaal Python om dit te bereik. Daar is baie belangrike voordeletages wat Python 'n wonderlike programmeertaal vir outomatisering maak:

  • Veelsydigheid
  • Maklik om te leer en te leer
  • Kode leesbaarheid
  • Wyd beskikbare kennisbasisse en modules

Daar is twee hoofgebruiksgevalle vir outomatisering:

  • Roetines wat menslike gedrag naboots om die voorpaneel te outomatiseer en tyd te bespaar, bv. outomatiese voldoeningstoetsing.
    Eerder as om by die omvang te gaan sit, toepaslike afmetings by te voeg en die resultate neer te skryf elke keer as jy 'n nuwe deel moet toets, ontwikkel die ingenieur 'n skrif wat dit alles doen en die resultaat vertoon.
  • Gebruike wat die funksionaliteit van die instrument uitbrei; byvoorbeeldample: metingsregistrasie, validering of kwaliteitsversekering.
    Outomatisering stel die ingenieur in staat om komplekse toetse uit te voer sonder baie van die nadele wat inherent aan daardie toetse is. Dit is nie nodig vir 'n operateur om die omvang op te stel en die resultate handmatig aan te teken nie, en die toets kan elke keer op dieselfde manier uitgevoer word.
    Hierdie hoe-om-gids sal dek wat jy nodig het om te begin met die programmering van bestekke in Python, insluitend die basiese beginsels van programmatiese koppelvlakke en hoe om 'n ex af te laai en te laat loopample.

Wat is 'n programmatiese koppelvlak?

'n Programmatiese koppelvlak (PI) is 'n grens of stel grense tussen twee rekenaarstelsels wat geprogrammeer kan word om spesifieke gedrag uit te voer. Vir ons doeleindes is dit die brug tussen die rekenaar wat elke stuk Tektronix-toetstoerusting laat loop, en die toepassing wat deur 'n eindgebruiker geskryf is. Om dit nog verder te beperk, is dit 'n sagte opdragte wat op afstand gestuur kan word na 'n instrument wat dan daardie opdragte verwerk en 'n ooreenstemmende taak uitvoer. Die PI-stapel (Figuur 1) toon die vloei van inligting vanaf die gasheerbeheerder af na die instrument. Die toepassingskode wat deur die eindgebruiker geskryf is, definieer die gedrag van die teikeninstrument. Dit word gewoonlik geskryf in een van die ontwikkelingsplatforms wat in die bedryf voorkom, soos Python, MATLAB, LabVIEW, C++ of C#. Hierdie toepassing sal data stuur deur die Standard Commands for Programmable Instrumentation (SCPI)-formaat te gebruik, wat 'n standaard is wat deur die meeste toets- en meettoerusting ondersteun word. SCPI-opdragte word dikwels deur 'n VISA-laag (Virtual Instrument Software Architecture) gestuur, wat gebruik word om die oordrag van data te vergemaklik deur bykomende robuustheid (bv. foutkontrole) by die kommunikasieprotokol in te sluit. In sommige gevalle kan toepassings 'n bestuurder oproep wat dan een of meer SCPI-opdragte na die VISA-laag sal stuur.Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - koppelvlakFiguur 1. Die programmatiese koppelvlak (PI) stapel toon die vloei van inligting tussen 'n gasheer kontroleerder en instrument.

Wat is die tm_devices-pakket?

tm_devices is 'n toestelbestuurspakket wat ontwikkel is deur Tektronix wat 'n menigte opdragte en funksies insluit om gebruikers te help om toetse op Tektronix- en Keithley-produkte maklik te outomatiseer deur die programmeertaal Python te gebruik. Dit kan gebruik word in die gewildste IDE's vir Python en ondersteun kodevoltooiingshulpmiddels. Hierdie pakket maak kodering en toetsoutomatisering eenvoudig en maklik vir ingenieurs met sagtewarevaardighede van enige vlak. Installasie is ook eenvoudig en gebruik pip, Python se pakketbestuurstelsel.

Die opstel van jou omgewing

Hierdie afdeling sal jou deur die voorvereistes en installasies lei om jou voor te berei om ontwikkelingswerk met tm_devices te doen. Dit bevat ook instruksies wat virtuele omgewings in Python (venvs) ondersteun om jou projekte makliker te maak om te bestuur en in stand te hou, veral as jy net hierdie pakket uitprobeer voordat jy jou daartoe verbind.
Let wel: As jy 'n omgewing het sonder direkte toegang tot die internet, sal jy jou stappe moet wysig deur die opdragte in die bylaag te gebruik. As jy probleme ondervind, plaas dit gerus in die github besprekings vir bystand.

Installasie en voorvereistes verbyview

  1. Installeer Python
    a. Python ≥ 3.8
  2. PyCharm – PyCharm-installasie, 'n projek begin en tm_devices-installasie
  3. VSCode – VSCode Installasie, Begin 'n projek, en tm_devices installasie

PyCharm Gemeenskap (gratis) uitgawe
PyCharm is 'n gewilde Python IDE wat deur sagteware-ontwikkelaars in alle industrieë gebruik word. PyCharm het 'n geïntegreerde eenheidstoetser wat gebruikers toelaat om toetse uit te voer file, klas, metode of alle toetse binne 'n gids. Soos die meeste moderne IDE's het dit 'n vorm van kodevoltooiing wat u ontwikkeling geweldig versnel oor 'n basiese teksredigeerder.
Ons sal deur die installasie PyCharm gemeenskapsuitgawe (gratis) loop, gevolg deur die installering van tm_devices in die IDE en die opstel van 'n virtuele omgewing om in te ontwikkel.

  1. Gaan na https://www.jetbrains.com/pycharm/
  2. Blaai verby PyCharm Professional na PyCharm Community Edition, klik aflaaiTektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - PyCharm-gemeenskap
  3. Jy behoort net met die standaard installasie stappe te kan voortgaan. Ons benodig niks uniek nie.
  4. Welkom by PyCharm!Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - PyCharm Community 1
  5. Nou sal jy 'n nuwe projek moet skep en seker maak dat jy 'n virtuele omgewing opstel. Klik op "Nuwe projek"
  6. Bevestig pad vir projek, maak seker dat "Virtualenv" gekies isTektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - PyCharm Community 2
  7. Maak 'n terminaal oop. As jou view sluit nie die benoemde knoppie aan die onderkant in nie, kyk hiervoor:Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - PyCharm Community 3
  8. Bevestig dat virtuele omgewing opgestel is deur te kyk vir (venv) voor die prompt in jou terminaalTektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - PyCharm Community 4
  9. Installeer bestuurder vanaf die terminale
    Tipe: pip installeer tm_devicesTektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - PyCharm Community 5
  10. Jou terminale behoort foutvry te wees! Gelukkige inbraak!

Visual Studio-kode
Visual Studio Code is nog 'n gewilde gratis IDE wat sagteware-ontwikkelaars in alle industrieë gebruik. Dit is ideaal vir die meeste tale en het uitbreidings vir die meeste tale wat kodering in hierdie IDE baie gerieflik en doeltreffend maak. Visual Studio Code bied IntelliSense wat 'n uiters nuttige hulpmiddel is wanneer dit ontwikkel word, aangesien dit help met kodevoltooiing, parameterinligting en ander inligting rakende voorwerpe en klasse. Gerieflik ondersteun tm_devices kodevoltooiing wat die opdragboom van die voorwerpe en klasse beskryf.
Ons het 'n uitstekende gids oor die installering van beide Python en Visual Studio Code, insluitend inligting oor die opstelling van virtuele omgewings hier.

Exampdie Kode

In hierdie afdeling sal ons deur stukke van 'n eenvoudige kode bvample en beklemtoon 'n paar nodige komponente om tm_ toestelle effektief te gebruik.
InvoereTektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - invoereHierdie twee lyne is van kritieke belang vir die effektiewe gebruik van tm_devices. In die eerste reël voer ons die DeviceManager in. Dit sal die koppeling en ontkoppeling van verskeie toestelklasse hanteer.
In die tweede reël voer ons 'n spesifieke drywer in, in hierdie geval die MSO5B.
Ons stel 'n konteksbestuurder op met die DeviceManager:Tektronix vereenvoudig toetsoutomatisering met tm_-toestelle en Python - invoere 1En dan wanneer ons die toestelbestuurder en bestuurder saam gebruik:Tektronix vereenvoudig toetsoutomatisering met tm_-toestelle en Python - invoere 2

Ons kan 'n instrument instansieer met 'n spesifieke opdragstel wat by sy model pas. Voer net jou instrument se IP-adres in (ander VISA-adresse werk ook).
Met hierdie vier reëls voltooi, is ons in staat om betekenisvolle en spesifieke outomatisering vir die MSO5B te begin skryf!
Kodebrokkies
Kom ons kyk na 'n paar eenvoudige aksies –
Stel die Trigger-tipe op EdgeTektronix vereenvoudig toetsoutomatisering met tm_-toestelle en Python - invoere 3Hier is hoe jy 'n piek-tot-piek meting op CH1 sal byvoeg en navraag doen:Tektronix vereenvoudig toetsoutomatisering met tm_-toestelle en Python - invoere 4As jy wou neem 'n amplitude meting op CH2:Tektronix vereenvoudig toetsoutomatisering met tm_-toestelle en Python - invoere 5

Gebruik IntelliSense/kodevoltooiing

IntelliSense – Microsoft se naam vir Kode Voltooiing is 'n baie kragtige kenmerk van IDE's wat ons probeer het om soveel as moontlik te ontgin.
Een van die kernversperrings vir outomatisering met toets- en meettoestelle is die SCPI-opdragstel. Dit is 'n gedateerde struktuur met sintaksis wat nie wyd in die ontwikkelingsgemeenskap ondersteun word nie.
Wat ons met tm_devices gedoen het, is om 'n stel Python-opdragte vir elke SCPI-opdrag te skep. Dit het ons in staat gestel om Python-kode uit bestaande opdragsintaksis te genereer om handmatige ontwikkeling van die drywers te vermy, sowel as om 'n struktuur te skep wat aan bestaande SCPI-gebruikers bekend is. Dit word ook na die laervlak-kode gekoppel wat dalk doelbewuste ontfouting tydens jou programskepping vereis. Die struktuur van die Python-opdragte boots die SCPI (of in sommige Keithley-gevalle TSP) opdragstruktuur na, so as jy vertroud is met SCPI sal jy hiermee vertroud wees.
Dit is 'n example van hoe IntelliSense al die opdragte wat beskikbaar is met die voorheen getikte opdrag wys:
In die blaaibare lys wat na die kol op omvang verskyn, kan ons 'n alfabetiese lys van omvangopdragkategorieë sien:Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - KodevoltooiingDeur afg te kies, kan ons dan 'n lys van AFG-kategorieë sien:Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - Kodevoltooiing 1Finale opdrag geskryf met behulp van IntelliSense:Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - Fig

Docstring Hulp

Soos jy kodeer, of terwyl jy iemand anders se kode lees, kan jy oor verskillende dele van die sintaksis beweeg om daardie vlak se spesifieke hulpdokumentasie te kry. Hoe nader jy aan die volledige opdragsintaksis is, hoe meer spesifiek sal dit word.Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - Docstring-hulpAfhangende van jou IDE-toestande, kan jy beide IntelliSense en docstring-hulp terselfdertyd vertoon.Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - Docstring Help 1Met hierdie gids het jy 'n paar van die voordele van Tek se python-bestuurderpakket tm_devices gesien en kan jy jou outomatiseringsreis begin. Met die maklike opstelling, kodevoltooiing en ingeboude hulp sal jy in staat wees om te leer sonder om jou IDE te verlaat, jou ontwikkelingstyd te bespoedig en kode met groter vertroue.
Daar is bydraeriglyne in die Github-repo as u die pakket wil verbeter. Daar is baie meer gevorderde examples uitgelig in die dokumentasie en binne die pakketinhoud in die Examples gids.

Ekstra hulpbronne

tm_devices · PyPI – Pakketbestuurder aflaai en inligting
tm_devices Github – Bronkode, kwessieopsporing, bydrae
tm_devices Github – Aanlyn dokumentasie

Probleemoplossing

Die opgradering van pip is gewoonlik 'n goeie eerste stap om probleme op te los:
In jou terminale tipe: Python.exe -m pip installeer -upgrade pip
Fout: whl lyk soos 'n filenaam, maar file bestaan ​​nie OF .whl is nie 'n ondersteunde wiel op hierdie platform nie.Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python - Probleemoplossing

Oplossing: Pip installeer wiel sodat dit herken die file formaat.
In jou terminale tipe: pip installeer wiel
As jy die wiel vanlyn moet installeer, kan jy soortgelyke instruksies as Bylaag A volg, maar dit vereis die tar.gz aflaai in plaas van die .whl file.

Bylaag A – Vanlyn installering van tm_devices

  1. Op 'n rekenaar met internet, laai die pakket saam met alle afhanklikhede af na die gespesifiseerde padligging deur:
    pip aflaai -dest wheel setuptools tm_devices
  2. Kopieer die files na jou rekenaar wat nie internettoegang het nie
  3. Volg dan die instruksies van die hoofgids vir watter IDE jy ook al gebruik, maar ruil die installeringsopdrag vir die volgende:
    pip installeer –geen-indeks –vind-skakels files> tm_toestelle

Kontakinligting:
Australië 1 800 709 465
Oostenryk* 00800 2255 4835
Balkan, Israel, Suid-Afrika en ander ISE-lande +41 52 675 3777
België* 00800 2255 4835
Brasilië +55 (11) 3530-8901
Kanada 1 800 833 9200
Sentraal-Oos-Europa / Baltiese lande +41 52 675 3777
Sentraal-Europa / Griekeland +41 52 675 3777
Denemarke +45 80 88 1401
Finland +41 52 675 3777
Frankryk* 00800 2255 4835
Duitsland* 00800 2255 4835
Hong Kong 400 820 5835
Indië 000 800 650 1835
Indonesië 007 803 601 5249
Italië 00800 2255 4835
Japan 81 (3) 6714 3086
Luxemburg +41 52 675 3777
Maleisië 1 800 22 55835
Mexiko, Sentraal-/Suid-Amerika en Karibiese Eilande 52 (55) 88 69 35 25
Midde-Ooste, Asië en Noord-Afrika +41 52 675 3777
Nederland* 00800 2255 4835
Nieu-Seeland 0800 800 238
Noorweë 800 16098
Volksrepubliek China 400 820 5835
Filippyne 1 800 1601 0077
Pole +41 52 675 3777
Portugal 80 08 12370
Republiek van Korea +82 2 565 1455
Rusland / GOS +7 (495) 6647564
Singapoer 800 6011 473
Suid-Afrika +41 52 675 3777
Spanje* 00800 2255 4835
Swede* 00800 2255 4835
Switserland* 00800 2255 4835
Taiwan 886 (2) 2656 6688
Thailand 1 800 011 931
Verenigde Koninkryk / Ierland* 00800 2255 4835
VSA 1 800 833 9200
Viëtnam 12060128
* Europese tolvrye nommer. Indien nie
toeganklik, skakel: +41 52 675 3777
Rev. 02.2022

Vind meer waardevolle hulpbronne by TEK.COM
Kopiereg © Tektronix. Alle regte voorbehou. Tektronix -produkte word gedek deur Amerikaanse en buitelandse patente, uitgereik en hangende. Die inligting in hierdie publikasie vervang die in alle voorheen gepubliseerde materiaal. Spesifikasies en prysveranderingsregte voorbehou. TEKTRONIX en TEK is geregistreerde handelsmerke van Tektronix, Inc. Alle ander handelsname waarna verwys word, is die diensmerke, handelsmerke of geregistreerde handelsmerke van hul onderskeie maatskappye.
052124 SBG 46W-74037-1

Tektronix-logo

Dokumente / Hulpbronne

Tektronix Vereenvoudig toetsoutomatisering met tm_-toestelle en Python [pdf] Gebruikersgids
48W-73878-1, Vereenvoudig toetsoutomatisering met tm_ toestelle en Python, toetsoutomatisering met tm_ toestelle en Python, outomatisering met tm_ toestelle en Python, tm_ toestelle en Python, toestelle en Python, Python

Verwysings

Los 'n opmerking

Jou e-posadres sal nie gepubliseer word nie. Vereiste velde is gemerk *