Pagpasimple sa Pagsulay
Automation uban sa
tm_devices ug Python
UNSAON-PAGIYA
Pagpasimple sa Test Automation Uban sa tm_ Devices Ug Python
UNSAON-PAGIYA
Pagpasimple sa Test Automation gamit ang tm_devices ug Python
Ang mga inhenyero sa daghang mga industriya naggamit sa automation aron madugangan ang mga kapabilidad sa ilang mga instrumento sa pagsulay. Daghang mga inhenyero ang nagpili sa libre nga programming language nga Python aron mahimo kini. Adunay daghang hinungdanon nga advantagnga naghimo sa Python nga usa ka maayo nga programming language alang sa automation:
- Pagkadagaya
- Sayon sa pagtudlo ug pagkat-on
- Pagkabasa sa code
- Kaylap nga magamit nga mga base sa kahibalo ug mga module
Adunay duha ka nag-unang mga kaso sa paggamit alang sa automation:
- Mga rutina nga nagsundog sa kinaiya sa tawo aron ma-automate ang front panel ug makadaginot sa oras eg, automated compliance testing.
Imbes nga maglingkod sa sukod, magdugang og angay nga mga sukod, ug isulat ang mga resulta sa matag higayon nga kinahanglan nimo nga sulayan ang usa ka bag-ong bahin, ang inhenyero naghimo og usa ka script nga naghimo sa tanan niana ug nagpakita sa resulta. - Mga gamit nga nagpalapad sa pagpaandar sa instrumento; kay example: pag-log sa pagsukod, pag-validate, o kasiguruhan sa kalidad.
Gitugotan sa automation ang inhenyero nga ipatuman ang mga komplikado nga pagsulay nga wala’y daghang mga kapakyasan nga naa sa mga pagsulay. Dili kinahanglan alang sa usa ka operator nga i-set up ang sakup ug mano-mano nga irekord ang mga resulta, ug ang pagsulay mahimo nga himuon sa parehas nga paagi matag oras.
Kini nga giya kung unsa ang kinahanglan nimo aron masugdan ang mga sakup sa pagprograma sa Python, lakip ang mga sukaranan sa mga interface sa programa ug kung giunsa ang pag-download ug pagpadagan sa usa ka ex.ample.
Unsa ang usa ka Programmatic Interface?
Ang usa ka programmatic interface (PI) usa ka utlanan o hugpong sa mga utlanan tali sa duha ka sistema sa kompyuter nga mahimong maprograma aron mapatuman ang mga piho nga pamatasan. Alang sa among katuyoan, kini ang tulay tali sa kompyuter nga nagpadagan sa matag piraso sa kagamitan sa pagsulay sa Tektronix, ug ang aplikasyon nga gisulat sa usa ka end user. Aron mas makit-an pa kini, kini usa ka sof commands nga mahimong ipadala sa layo sa usa ka instrumento nga nagproseso sa mga mando ug nagpatuman sa usa ka katugbang nga buluhaton. Ang PI Stack (Figure 1) nagpakita sa dagan sa impormasyon gikan sa host controller ngadto sa instrumento. Ang code sa aplikasyon nga gisulat sa katapusan nga tiggamit naghubit sa pamatasan sa target nga instrumento. Kasagaran kini gisulat sa usa sa mga platform sa pag-uswag nga populasyon sa industriya sama sa Python, MATLAB, LabVIEW, C++, o C#. Kini nga aplikasyon magpadala ug datos gamit ang Standard Commands for Programmable Instrumentation (SCPI) nga format, nga usa ka sumbanan nga gisuportahan sa kadaghanan sa mga ekipo sa pagsulay ug pagsukod. Ang mga sugo sa SCPI sagad ipadala pinaagi sa usa ka layer sa Virtual Instrument Software Architecture (VISA), nga gigamit aron mapadali ang pagbalhin sa datos pinaagi sa paglakip sa dugang nga kalig-on (pananglitan, pagsusi sa sayup) sa protocol sa komunikasyon. Sa pipila ka mga kaso, ang mga aplikasyon mahimong motawag sa usa ka drayber nga magpadala sa usa o daghan pa nga mga sugo sa SCPI sa layer sa VISA.Figure 1. Ang programmatic interface (PI) stack nagpakita sa dagan sa impormasyon tali sa usa ka host controller ug instrumento.
Unsa ang tm_devices Package?
Ang tm_devices usa ka pakete sa pagdumala sa aparato nga gihimo sa Tektronix nga naglakip sa daghang mga sugo ug mga gimbuhaton aron matabangan ang mga tiggamit nga dali nga ma-automate ang mga pagsulay sa mga produkto sa Tektronix ug Keithley gamit ang programming language nga Python. Magamit kini sa labing inila nga mga IDE para sa Python ug nagsuporta sa mga tabang sa pagkompleto sa code. Kini nga pakete naghimo sa coding ug pagsulay nga automation nga yano ug dali alang sa mga inhenyero nga adunay kahanas sa software sa bisan unsang lebel. Yano usab ang pag-instalar ug naggamit sa pip, ang sistema sa pagdumala sa package sa Python.
Pag-set up sa imong Environment
Kini nga seksyon mogiya kanimo sa mga kinahanglanon ug pag-install aron maandam ka sa paghimo sa buluhaton sa pag-uswag sa tm_devices. Naglakip usab kini sa mga panudlo nga nagsuporta sa mga virtual nga palibot sa Python (venvs) aron mapadali ang pagdumala ug pagmentinar sa imong mga proyekto, labi na kung gisulayan nimo kini nga pakete sa wala pa mopasalig sa paggamit niini.
Mubo nga sulat: Kung ikaw adunay usa ka palibot nga walay direktang pag-access sa internet kinahanglan nimo nga usbon ang imong mga lakang gamit ang mga sugo sa apendise. Kung naa kay problema feel free to post in the mga diskusyon sa github alang sa tabang.
Pag-instalar ug Mga Kinahanglanon sa Pagtaposview
- I-install ang Python
a. Python ≥ 3.8 - PyCharm - Pag-instalar sa PyCharm, Pagsugod sa usa ka proyekto, ug pag-instalar sa tm_devices
- VSCode - Pag-instalar sa VSCode, Pagsugod sa usa ka proyekto, ug pag-instalar sa tm_devices
PyCharm Community (libre) nga edisyon
Ang PyCharm kay usa ka sikat nga Python IDE nga gigamit sa mga software developers sa tanang industriya. Ang PyCharm adunay usa ka integrated unit tester nga nagtugot sa mga tiggamit sa pagpadagan sa mga pagsulay pinaagi sa file, klase, pamaagi, o tanang pagsulay sulod sa folder. Sama sa kadaghanan sa modernong IDE kini adunay usa ka porma sa pagkompleto sa code nga nagpadali sa imong pag-uswag sa hilabihan sa usa ka batakang editor sa teksto.
Maglakaw kami pinaagi sa pag-instalar nga edisyon sa komunidad sa PyCharm (libre), gisundan sa pag-install sa tm_devices sa IDE ug pag-set up sa usa ka virtual nga palibot aron mapalambo.
- Adto sa https://www.jetbrains.com/pycharm/
- Pag-scroll sa milabay nga PyCharm Professional ngadto sa PyCharm Community Edition, i-klik ang pag-download
- Kinahanglan nga makapadayon ka sa mga default nga lakang sa pag-install. Wala kami magkinahanglan og bisan unsa nga talagsaon.
- Welcome sa PyCharm!
- Karon kinahanglan nimo nga maghimo usa ka bag-ong proyekto ug siguruha nga magbutang usa ka virtual nga palibot. Pag-klik sa "Bag-ong Proyekto"
- Kumpirma ang agianan alang sa proyekto, siguroha nga ang "Virtualenv" gipili
- Ablihi ang usa ka terminal. Kung ang imong view wala maglakip sa gimarkahan nga buton sa ubos nga pagpangita niini:
- Kumpirma ang virtual environment nga gipahimutang pinaagi sa pagsusi sa ( venv ) sa dili pa ang prompt sa imong terminal
- I-install ang drayber gikan sa terminal
Type: pip install tm_devices - Ang imong terminal kinahanglan nga walay sayop! Malipayon nga hacking!
Visual Studio Code
Ang Visual Studio Code usa pa ka sikat nga libre nga IDE nga gigamit sa mga developer sa software sa tanan nga industriya. Kini maayo alang sa kadaghanan sa mga pinulongan ug adunay mga extension alang sa kadaghanan sa mga pinulongan nga naghimo sa coding niini nga IDE nga sayon ug episyente. Ang Visual Studio Code naghatag sa IntelliSense nga usa ka labi ka mapuslanon nga himan kung nag-develop tungod kay kini makatabang sa pagkompleto sa code, impormasyon sa parameter, ug uban pang impormasyon bahin sa mga butang ug mga klase. Sayon, ang tm_devices nagsuporta sa pagkompleto sa code nga naghulagway sa command tree sa mga butang ug mga klase.
Kami adunay maayo kaayo nga giya sa pag-instalar sa Python ug Visual Studio Code, lakip ang kasayuran sa pag-setup sa virtual nga palibot dinhi.
Exampang Code
Sa niini nga seksyon kita lakang pinaagi sa mga piraso sa usa ka yano nga code example ug i-highlight ang pipila ka mga kinahanglanon nga sangkap aron epektibo nga magamit ang mga tm_ device.
Mga importKining duha ka linya importante sa epektibong paggamit sa tm_devices. Sa una nga linya gi-import namon ang DeviceManager. Kini ang magdumala sa boilerplate nga nagkonektar ug nagdiskonekta sa daghang mga klase sa aparato.
Sa ikaduha nga linya nag-import kami usa ka piho nga drayber, sa kini nga kaso ang MSO5B.
Nag-setup kami usa ka manager sa konteksto gamit ang DeviceManager:Ug unya kung gamiton namon ang manager sa aparato ug drayber nga magkauban:
Mahimo natong i-instantiate ang usa ka instrumento nga adunay usa ka piho nga command set nga mohaum sa modelo niini. I-input lang ang IP address sa imong instrumento (ang ubang mga adres sa VISA nagtrabaho usab).
Sa pagkompleto niining upat ka linya, makasugod na mi sa pagsulat og makahuluganon ug espesipikong automation para sa MSO5B!
Mga Snippet sa Code
Atong tan-awon ang pipila ka yano nga mga aksyon -
Pagbutang sa Trigger type sa EdgeAnia kung giunsa nimo pagdugang ug pangutana ang usa ka peak-to-peak nga pagsukod sa CH1:
Kung gusto nimo mukuha ug amppagsukod sa litude sa CH2:
Paggamit sa IntelliSense/Pagkompleto sa Code
IntelliSense – Ang ngalan sa Microsoft para sa Code Completion kay gamhanan kaayo nga feature sa IDE nga among gisulayan nga pahimuslan kutob sa mahimo.
Usa sa kinauyokan nga mga babag sa automation nga adunay test ug measurement device mao ang SCPI command set. Kini usa ka napetsahan nga istruktura nga adunay syntax nga wala gisuportahan sa kadaghanan sa komunidad sa pag-uswag.
Ang among nahimo sa tm_devices mao ang paghimo og usa ka set sa Python commands alang sa matag SCPI command. Kini nagtugot kanamo sa paghimo sa Python code gikan sa kasamtangan nga command syntax aron malikayan ang manwal nga pag-uswag sa mga drayber, ingon man usab sa paghimo sa usa ka istruktura nga pamilyar sa kasamtangan nga mga tiggamit sa SCPI. Mapa usab kini sa ubos nga lebel nga kodigo nga mahimong magkinahanglan ug tinuyo nga pag-debug sa panahon sa paghimo sa imong programa. Ang istruktura sa Python nga mga sugo nagsundog sa SCPI (o sa pipila ka Keithley nga mga kaso TSP) nga mga sugo nga istruktura aron kung pamilyar ka sa SCPI pamilyar ka niini.
Kini usa ka exampkung giunsa gipakita sa IntelliSense ang tanan nga mga mando nga magamit sa nauna nga gi-type nga mando:
Sa scrollable list nga makita human sa tulbok sa scope atong makita ang alphabetical list sa scope command categories:Ang pagpili sa afg mahimo namong makita ang usa ka lista sa mga kategorya sa AFG:
Katapusan nga sugo nga gisulat uban sa tabang sa IntelliSense:
Tabang sa Docstring
Samtang nag-code ka, o samtang nagbasa ka sa code sa laing tawo, mahimo kang mag-hover sa lain-laing bahin sa syntax aron makuha ang piho nga dokumentasyon sa tabang sa lebel. Kon mas duol ka sa bug-os nga command syntax mas espesipiko kini makuha.Depende sa imong mga kondisyon sa IDE mahimo nimong ipakita ang IntelliSense ug tabang sa docstring sa samang higayon.
Uban niini nga giya nakita nimo ang pipila ka mga benepisyo sa Tek's python driver package tm_devices ug mahimo nimong sugdan ang imong panaw sa automation. Uban sa dali nga pag-setup, pagkompleto sa code, ug built-in nga tabang makakat-on ka nga dili mobiya sa imong IDE, mapadali ang imong oras sa pag-uswag, ug code nga adunay mas taas nga pagsalig.
Adunay mga giya sa kontribusyon sa Github repo kung gusto nimo nga mapaayo ang package. Adunay daghan nga mas advanced nga examples gipasiugda sa dokumentasyon ug sulod sa package sulod sa Examples folder.
Dugang nga mga Kapanguhaan
tm_devices · PyPI – Pag-download ug impormasyon sa driver sa package
tm_devices Github – Source code, pagsubay sa isyu, kontribusyon
tm_devices Github – Online nga Dokumentasyon
Pag-troubleshoot
Ang pag-upgrade sa pip kasagaran usa ka maayong una nga lakang sa pag-troubleshoot:
Sa imong terminal type: Python.exe -m pip install -upgrade pip
Sayop: murag murag a filengalan, apan file wala maglungtad O .whl dili suportadong ligid niini nga plataporma.
Solusyon: Pip-instalar nga ligid aron kini makaila sa file pormat.
Sa imong terminal type: pip install wheel
Kung kinahanglan nimo nga i-install ang ligid sa offline mahimo nimong sundon ang parehas nga mga panudlo sama sa Apendise A, apan gikinahanglan ang pag-download sa tar.gz imbes sa .whl. file.
Apendise A – Offline nga Pag-instalar sa tm_devices
- Sa usa ka kompyuter nga adunay internet, i-download ang pakete kauban ang tanan nga mga dependency sa piho nga lokasyon sa agianan gamit ang:
pip download –dest wheel setuptools tm_devices - Kopyaha ang files sa imong computer nga walay internet access
- Dayon, sunda ang mga instruksyon gikan sa nag-unang giya alang sa bisan asa nga IDE nga imong gigamit apan ibaylo ang pag-install nga sugo alang sa mosunod:
pip install –no-index –find-links files> tm_devices
Impormasyon sa kontak:
Australia 1 800 709 465
Austria* 00800 2255 4835
Balkans, Israel, South Africa ug uban pang ISE Countries +41 52 675 3777
Belgium* 00800 2255 4835
Brazil +55 (11) 3530-8901
Canada 1 800 833 9200
Central East Europe / Baltics +41 52 675 3777
Central Europe / Greece +41 52 675 3777
Denmark +45 80 88 1401
Finland +41 52 675 3777
France* 00800 2255 4835
Germany* 00800 2255 4835
Hong Kong 400 820 5835
India 000 800 650 1835
Indonesia 007 803 601 5249
Italya 00800 2255 4835
Japan 81 (3) 6714 3086
Luxembourg +41 52 675 3777
Malaysia 1 800 22 55835
Mexico, Central/South America ug Caribbean 52 (55) 88 69 35 25
Middle East, Asia, ug North Africa +41 52 675 3777
Ang Netherlands* 00800 2255 4835
New Zealand 0800 800 238
Noruwega 800 16098
People's Republic of China 400 820 5835
Pilipinas 1 800 1601 0077
Poland +41 52 675 3777
Portugal 80 08 12370
Republika sa Korea +82 2 565 1455
Russia / CIS +7 (495) 6647564
Singapore 800 6011 473
Habagatang Aprika +41 52 675 3777
Spain* 00800 2255 4835
Sweden* 00800 2255 4835
Switzerland* 00800 2255 4835
Taiwan 886 (2) 2656 6688
Thailand 1 800 011 931
United Kingdom / Ireland* 00800 2255 4835
USA 1 800 833 9200
Vietnam 12060128
* European toll-free nga numero. Kung dili
accessible, tawag: +41 52 675 3777
Pin. 02.2022
Pagpangita labi pa nga bililhon nga mga kapanguhaan sa TEK.COM
Copyright © Tektronix. Ang tanan nga mga katungod gigahin. Ang mga produkto nga Tektronix gitabunan sa US ug mga langyaw nga patente, giisyu ug pending. Ang kasayuran sa kini nga publikasyon gisaligan nga sa tanan nga na-publish kaniadto nga materyal. Ang mga pribilehiyo sa pagbag-o ug pagbag-o sa presyo gigahin. Ang TEKTRONIX ug TEK mga rehistradong marka sa pamaligya sa Tektronix, Inc. Ang tanan nga uban pang mga ngalan sa pakisayran nga gihisgotan mao ang mga marka sa serbisyo, marka sa pamaligya o rehistradong mga marka sa pamaligya sa ilang tagsatagsa ka mga kompanya.
052124 SBG 46W-74037-1
Mga Dokumento / Mga Kapanguhaan
![]() |
Gipasimple sa Tektronix ang Pag-automate sa Pagsulay Uban ang tm_ Device Ug Python [pdf] Giya sa Gumagamit 48W-73878-1, Pagpasimple sa Test Automation Uban sa tm_ Devices Ug Python, Test Automation Uban sa tm_ Devices Ug Python, Automation Uban sa tm_ Devices Ug Python, tm_ Devices Ug Python, Devices Ug Python, Python |