Basitleştirme Testi
Otomasyon ile
tm_devices ve Python
NASIL YAPILIR? "REHBERİ
tm_ Cihazları ve Python ile Test Otomasyonunu Basitleştirme
NASIL YAPILIR? "REHBERİ
tm_devices ve Python ile Test Otomasyonunu Basitleştirme
Pek çok sektördeki mühendisler, test cihazlarının yeteneklerini genişletmek için otomasyonu kullanıyor. Birçok mühendis bunu başarmak için ücretsiz programlama dili Python'u seçiyor. Çok önemli avantajlar vartagPython'u otomasyon için harika bir programlama dili yapan şeyler:
- Çok yönlülük
- Öğretmesi ve öğrenmesi kolay
- Kod okunabilirliği
- Yaygın olarak kullanılabilen bilgi tabanları ve modüller
Otomasyonun iki ana kullanım durumu vardır:
- Ön paneli otomatikleştirmek ve zamandan tasarruf etmek için insan davranışını taklit eden rutinler, örneğin otomatik uyumluluk testleri.
Mühendis, skopun başında oturup uygun ölçümleri eklemek ve her yeni parçayı test etmeniz gerektiğinde sonuçları yazmak yerine, tüm bunları yapan ve sonucu görüntüleyen bir komut dosyası geliştirir. - Enstrümanın işlevselliğini artıran kullanımlar; eski sevgili içinample: ölçüm kaydı, doğrulama veya kalite güvencesi.
Otomasyon, mühendisin karmaşık testleri, bu testlerin doğasında olan pek çok olumsuzluk olmadan yürütmesine olanak tanır. Operatörün kapsamı ayarlamasına ve sonuçları manuel olarak kaydetmesine gerek yoktur ve test her seferinde aynı şekilde yapılabilir.
Bu nasıl yapılır kılavuzu, programatik arayüzlerin temelleri ve eski bir arayüzün nasıl indirilip çalıştırılacağı da dahil olmak üzere Python'da programlama kapsamlarına başlamak için ihtiyaç duyduğunuz şeyleri kapsayacaktır.ampley.
Programatik Arayüz Nedir?
Programlı bir arayüz (PI), belirli davranışları yürütmek üzere programlanabilen iki bilgi işlem sistemi arasındaki bir sınır veya sınırlar kümesidir. Amacımız açısından, Tektronix test ekipmanının her parçasını çalıştıran bilgisayar ile son kullanıcı tarafından yazılan uygulama arasındaki köprüdür. Bunu daha da daraltmak gerekirse, daha sonra bu komutları işleyen ve karşılık gelen görevi yürüten bir araca uzaktan gönderilebilen yazılım komutlarıdır. PI Yığını (Şekil 1), ana bilgisayar denetleyicisinden cihaza kadar bilgi akışını gösterir. Son kullanıcı tarafından yazılan uygulama kodu, hedef cihazın davranışını tanımlar. Bu genellikle Python, MATLAB, Lab gibi sektördeki popüler geliştirme platformlarından birinde yazılır.VIEW, C++ veya C#. Bu uygulama, çoğu test ve ölçüm ekipmanı tarafından desteklenen bir standart olan Programlanabilir Enstrümantasyon için Standart Komutlar (SCPI) formatını kullanarak veri gönderecektir. SCPI komutları sıklıkla, iletişim protokolüne ek sağlamlık (örneğin, hata kontrolü) ekleyerek veri aktarımını kolaylaştırmak için kullanılan bir Sanal Araç Yazılım Mimarisi (VISA) katmanı aracılığıyla gönderilir. Bazı durumlarda uygulamalar, daha sonra VISA katmanına bir veya daha fazla SCPI komutu gönderecek olan bir sürücüyü çağırabilir.Şekil 1. Programatik arayüz (PI) yığını, bir ana bilgisayar denetleyicisi ile cihaz arasındaki bilgi akışını gösterir.
tm_devices Paketi nedir?
tm_devices, Tektronix tarafından geliştirilen ve kullanıcıların Python programlama dilini kullanarak Tektronix ve Keithley ürünleri üzerindeki testleri kolayca otomatikleştirmesine yardımcı olmak için çok sayıda komut ve işlev içeren bir cihaz yönetimi paketidir. Python için en popüler IDE'lerde kullanılabilir ve kod tamamlama yardımcılarını destekler. Bu paket, her düzeyde yazılım becerisine sahip mühendisler için kodlama ve test otomasyonunu basit ve kolay hale getirir. Kurulumu da basittir ve Python'un paket yönetim sistemi olan pip'i kullanır.
Ortamınızı Ayarlama
Bu bölüm, sizi tm_devices ile geliştirme çalışması yapmaya hazırlamak için önkoşullar ve kurulumlar konusunda size rehberlik edecektir. Ayrıca, projelerinizi yönetmeyi ve sürdürmeyi kolaylaştırmak için Python'daki (venvs) sanal ortamları destekleyen talimatları da içerir, özellikle de bu paketi kullanmaya başlamadan önce yalnızca deniyorsanız.
Not: İnternete doğrudan erişimi olmayan bir ortamınız varsa, ekteki komutları kullanarak adımlarınızı değiştirmeniz gerekecektir. Sorun yaşıyorsanız mesaj göndermekten çekinmeyin github tartışmaları yardım için.
Kurulum ve Önkoşullar Bittiview
- Python'u yükleyin
A. Python ≥ 3.8 - PyCharm – PyCharm Kurulumu, Proje başlatma ve tm_devices kurulumu
- VSCode – VSCode Kurulumu, Proje başlatma ve tm_devices kurulumu
PyCharm Topluluğu (ücretsiz) sürümü
PyCharm, tüm sektörlerdeki yazılım geliştiricileri tarafından kullanılan popüler bir Python IDE'sidir. PyCharm, kullanıcıların testleri çalıştırmasına olanak tanıyan entegre bir birim test cihazına sahiptir. file, sınıf, yöntem veya bir klasördeki tüm testler. Çoğu modern IDE gibi, temel bir metin düzenleyiciye göre gelişiminizi büyük ölçüde hızlandıran bir kod tamamlama biçimine sahiptir.
PyCharm topluluk sürümünün (ücretsiz) kurulumunu adım adım anlatacağız, ardından IDE'ye tm_devices kurulumunu gerçekleştireceğiz ve geliştirme için sanal bir ortam ayarlayacağız.
- Git https://www.jetbrains.com/pycharm/
- PyCharm Professional'ı geçerek PyCharm Community Edition'a gidin ve indir'e tıklayın
- Yalnızca varsayılan kurulum adımlarına devam edebilmeniz gerekir. Benzersiz bir şeye ihtiyacımız yok.
- PyCharm'a hoş geldiniz!
- Artık yeni bir proje oluşturmanız ve sanal bir ortam kurduğunuzdan emin olmanız gerekecek. “Yeni Proje”ye tıklayın
- Projenin yolunu onaylayın, “Virtualenv”in seçildiğinden emin olun
- Bir terminal açın. Eğer senin view Bunun için alttaki etiketli düğmeyi içermez:
- Terminalinizdeki komut isteminden önce ( venv ) öğesini kontrol ederek sanal ortamın ayarlandığını doğrulayın
- Sürücüyü terminalden yükleyin
Tür: pip install tm_devices - Terminaliniz hatasız olmalı! Mutlu hacklemeler!
Görsel Stüdyo Kodu
Visual Studio Code, tüm sektörlerdeki yazılım geliştiricilerin kullandığı bir başka popüler ücretsiz IDE'dir. Çoğu dil için harikadır ve bu IDE'de kodlamayı çok kullanışlı ve verimli hale getiren çoğu dil için uzantılara sahiptir. Visual Studio Code, kod tamamlamaya, parametre bilgilerine ve nesneler ve sınıflara ilişkin diğer bilgilere yardımcı olduğundan geliştirme sırasında son derece yararlı bir araç olan IntelliSense'i sağlar. Uygun bir şekilde, tm_devices nesnelerin ve sınıfların komut ağacını tanımlayan kod tamamlamayı destekler.
Sanal ortam kurulumuna ilişkin bilgiler de dahil olmak üzere hem Python hem de Visual Studio Code'un kurulumuyla ilgili mükemmel bir rehberimiz var Burada.
Exampkod
Bu bölümde basit bir kodun parçalarını inceleyeceğiz.ampDosyayı açın ve tm_ cihazlarını etkili bir şekilde kullanmak için gerekli bazı bileşenleri vurgulayın.
İthalatBu iki satır tm_devices'ın etkili kullanımı açısından kritik öneme sahiptir. İlk satırda DeviceManager'ı içe aktarıyoruz. Bu, birden fazla cihaz sınıfının bağlanmasını ve bağlantısının kesilmesini halledecektir.
İkinci satırda belirli bir sürücüyü, bu durumda MSO5B'yi içe aktarıyoruz.
DeviceManager ile bir içerik yöneticisi kuruyoruz:Daha sonra cihaz yöneticisini ve sürücüyü birlikte kullandığımızda:
Bir enstrümanı, modeline uygun belirli bir komut seti ile başlatabiliriz. Cihazınızın IP adresini girmeniz yeterli (diğer VISA adresleri de işe yarar).
Bu dört satırın tamamlanmasıyla MSO5B için anlamlı ve özel otomasyon yazmaya başlayabiliriz!
Kod Parçacıkları
Birkaç basit eyleme bir göz atalım –
Tetikleyici türünü Kenar olarak ayarlamaCH1'de tepeden tepeye ölçümü şu şekilde ekleyip sorgulayabilirsiniz:
Eğer bir tane almak istersen ampCH2'de yükseklik ölçümü:
IntelliSense/Kod Tamamlamayı Kullanma
IntelliSense – Microsoft'un Kod Tamamlama adı, mümkün olduğunca yararlanmaya çalıştığımız IDE'lerin çok güçlü bir özelliğidir.
Test ve ölçüm cihazlarıyla otomasyonun önündeki temel engellerden biri SCPI komut setidir. Geliştirme topluluğunda yaygın olarak desteklenmeyen sözdizimine sahip eski bir yapıdır.
tm_devices ile yaptığımız şey, her SCPI komutu için bir dizi Python komutu oluşturmaktır. Bu, sürücülerin manuel olarak geliştirilmesini önlemek için mevcut komut sözdiziminden Python kodu oluşturmamıza ve mevcut SCPI kullanıcılarının aşina olduğu bir yapı oluşturmamıza olanak sağladı. Ayrıca program oluşturma sırasında kasıtlı hata ayıklama gerektirebilecek alt düzey kodla da eşleşir. Python komutlarının yapısı SCPI (veya bazı Keithley vakalarında TSP) komutlarının yapısını taklit eder; dolayısıyla SCPI'ye aşina iseniz bunlara da aşina olacaksınız.
Bu bir eskiampIntelliSense'in önceden yazılan komutla kullanılabilen tüm komutları nasıl gösterdiğini gösteren dosya:
Kapsam üzerindeki noktadan sonra görünen kaydırılabilir listede kapsam komut kategorilerinin alfabetik bir listesini görebiliriz:Afg'yi seçerek AFG kategorilerinin bir listesini görebiliriz:
IntelliSense yardımıyla yazılan son komut:
Doküman Yardımı
Kod yazarken veya başka birinin kodunu okurken sözdiziminin farklı bölümlerinin üzerine gelerek söz konusu düzeye özel yardım belgelerini alabilirsiniz. Tam komut sözdizimine ne kadar yakın olursanız, o kadar spesifik olur.IDE koşullarınıza bağlı olarak hem IntelliSense hem de docstring yardımını aynı anda görüntüleyebilirsiniz.
Bu kılavuzla Tek'in python sürücü paketi tm_devices'in bazı avantajlarını gördünüz ve otomasyon yolculuğunuza başlayabilirsiniz. Kolay kurulum, kod tamamlama ve yerleşik yardım sayesinde IDE'nizden ayrılmadan öğrenebilir, geliştirme sürenizi hızlandırabilir ve daha güvenli bir şekilde kod yazabilirsiniz.
Paketi geliştirmek istiyorsanız Github deposunda katkı yönergeleri bulunmaktadır. Çok daha gelişmiş eskiler varampBelgelerde ve Ex'deki paket içeriğinde vurgulanan dosyalaramples klasörü.
Ekstra Kaynaklar
tm_devices · PyPI – Paket sürücüsü indirme ve bilgileri
tm_devices Github – Kaynak kodu, sorun takibi, katkı
tm_devices Github – Çevrimiçi Belgeler
Sorun giderme
Pip'i yükseltmek genellikle sorun gidermeye yönelik iyi bir ilk adımdır:
Terminal tipinizde: Python.exe -m pip install -upgrade pip
Hata: whl bir gibi görünüyor fileisim ama file mevcut değil VEYA .whl bu platformda desteklenen bir tekerlek değil.
Çözüm: Takma tekerleğini tanıyacak şekilde itin file Biçim.
Terminal tipinizde: pip kurulum tekerleği
Wheel'i çevrimdışı yüklemeniz gerekiyorsa Ek A'dakine benzer talimatları izleyebilirsiniz ancak bu, .whl yerine tar.gz dosyasının indirilmesini gerektirir. file.
Ek A – tm_devices'ın Çevrimdışı Kurulumu
- İnternet bağlantısı olan bir bilgisayarda, aşağıdakileri kullanarak paketi tüm bağımlılıklarla birlikte belirtilen yol konumuna indirin:
pip indirme –dest tekerlek kurulum araçları tm_devices - Kopyala fileİnternet erişimi olmayan bilgisayarınıza
- Ardından, hangi IDE'yi kullanıyorsanız kullanın, ana kılavuzdaki talimatları izleyin ancak kurulum komutunu aşağıdaki komutla değiştirin:
pip kurulumu –indeks yok –bağlantıları bul files> tm_devices
İletişim Bilgileri:
Avustralya 1 800 709 465
Avusturya* 00800 2255 4835
Balkanlar, İsrail, Güney Afrika ve diğer İMKB Ülkeleri +41 52 675 3777
Belçika* 00800 2255 4835
Brezilya +55 (11) 3530-8901
Kanada 1 800
Orta Doğu Avrupa / Baltık +41 52 675 3777
Orta Avrupa / Yunanistan +41 52 675 3777
Danimarka +45 80 88 1401
Finlandiya +41 52 675 3777
Fransa* 00800 2255 4835
Almanya* 00800 2255 4835
Hong Kong 400 820 5835
Hindistan 000 800 650 1835
Endonezya 007 803 601 5249
İtalya 00800 2255 4835
Japonya 81 (3) 6714 3086
Lüksemburg +41 52 675 3777
Malezya 1 800 22 55835
Meksika, Orta/Güney Amerika ve Karayipler 52 (55) 88 69 35 25
Orta Doğu, Asya ve Kuzey Afrika +41 52 675 3777
Hollanda* 00800 2255 4835
Yeni Zelanda 0800 800 238
Norveç 800 16098
Çin Halk Cumhuriyeti 400 820 5835
Filipinler 1 800 1601 0077
Polonya +41 52 675 3777
Portekiz 80 08
Kore Cumhuriyeti +82 2 565 1455
Rusya / BDT +7 (495) 6647564
Singapur 800 6011 473
Güney Afrika +41 52 675 3777
İspanya* 00800 2255 4835
İsveç* 00800 2255 4835
İsviçre* 00800 2255 4835
Tayvan 886 (2) 2656 6688
Tayland 1 800 011 931
Birleşik Krallık / İrlanda* 00800 2255 4835
ABD 1 800 833 9200
Vietnam 12060128
* Avrupa ücretsiz numarası. değilse
erişilebilir, arayın: +41 52 675 3777
Rev. 02.2022
adresinde daha değerli kaynaklar bulun TEK.COM
Telif hakkı © Tektronix. Her hakkı saklıdır. Tektronix ürünleri, yayınlanmış ve beklemede olan ABD ve yabancı patentlerin kapsamındadır. Bu yayındaki bilgiler, daha önce yayınlanmış tüm materyallerin yerine geçer. Spesifikasyon ve fiyat değişikliği ayrıcalıkları saklıdır. TEKTRONIX ve TEK, Tektronix, Inc.'nin tescilli ticari markalarıdır. Referans verilen diğer tüm ticari adlar, ilgili şirketlerin hizmet markaları, ticari markaları veya tescilli ticari markalarıdır.
052124 SBG 46W-74037-1
Belgeler / Kaynaklar
![]() |
Tektronix, tm_ Cihazları ve Python ile Test Otomasyonunu Basitleştiriyor [pdf] Kullanıcı Kılavuzu 48W-73878-1, tm_ Cihazları ve Python ile Test Otomasyonunu Basitleştirme, tm_ Cihazları ve Python ile Test Otomasyonu, tm_ Cihazları ve Python ile Otomasyon, tm_ Cihazları ve Python, Cihazlar ve Python, Python |