Лого на TektronixОпростяващ тест
Автоматизация с
tm_devices и Python
КАК ДА РЪКОВОДИТЕЛ Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python

Опростяване на автоматизацията на тестовете с tm_ устройства и Python

КАК ДА РЪКОВОДИТЕЛ
Опростяване на автоматизацията на тестовете с tm_devices и Python
Инженерите в много индустрии използват автоматизация, за да разширят възможностите на своите тестови инструменти. Много инженери избират безплатния език за програмиране Python, за да постигнат това. Има много значителни предимстваtagкоито правят Python чудесен език за програмиране за автоматизация:

  • Универсалност
  • Лесен за преподаване и учене
  • Четливост на кода
  • Широко достъпни бази знания и модули

Има два основни случая на използване на автоматизацията:

  • Рутинни процедури, които имитират човешкото поведение, за да автоматизират предния панел и да спестят време, напр. автоматизирано тестване за съответствие.
    Вместо да седи на обхвата, да добавя подходящи измервания и да записва резултатите всеки път, когато трябва да тествате нова част, инженерът разработва скрипт, който прави всичко това и показва резултата.
  • Употреби, които разширяват функционалността на инструмента; напримерample: регистриране на измервания, валидиране или осигуряване на качеството.
    Автоматизацията позволява на инженера да изпълнява сложни тестове без много от недостатъците, присъщи на тези тестове. Няма нужда оператор да настройва обхвата и ръчно да записва резултатите, а тестът може да се извършва по един и същи начин всеки път.
    Това ръководство ще обхване какво ви е необходимо, за да започнете да програмирате обхвати в Python, включително основите на програмните интерфейси и как да изтеглите и стартирате exampле.

Какво е програмен интерфейс?

Програмният интерфейс (PI) е граница или набор от граници между две изчислителни системи, които могат да бъдат програмирани да изпълняват специфични поведения. За нашите цели това е мостът между компютъра, който управлява всяка част от тестовото оборудване на Tektronix, и приложението, написано от краен потребител. За да стесните това още повече, това са команди на sof, които могат да бъдат изпратени дистанционно до инструмент, който след това обработва тези команди и изпълнява съответната задача. PI Stack (Фигура 1) показва потока от информация от хост контролера надолу към инструмента. Кодът на приложението, написан от крайния потребител, определя поведението на целевия инструмент. Това обикновено се пише в една от популярните платформи за разработка в индустрията като Python, MATLAB, LabVIEW, C++ или C#. Това приложение ще изпраща данни, използвайки формата на стандартни команди за програмируеми инструменти (SCPI), който е стандарт, поддържан от повечето тестово и измервателно оборудване. SCPI командите често се изпращат чрез слой на софтуерна архитектура на виртуален инструмент (VISA), който се използва за улесняване на преноса на данни чрез включване на допълнителна устойчивост (напр. проверка на грешки) към комуникационния протокол. В някои случаи приложенията могат да извикат драйвер, който след това ще изпрати една или повече SCPI команди към слоя VISA.Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - интерфейсФигура 1. Стекът на програмния интерфейс (PI) показва потока от информация между хост контролер и инструмент.

Какво представлява пакетът tm_devices?

tm_devices е пакет за управление на устройства, разработен от Tektronix, който включва множество команди и функции, за да помогне на потребителите лесно да автоматизират тестовете на продукти на Tektronix и Keithley, използвайки езика за програмиране Python. Може да се използва в най-популярните IDE за Python и поддържа помощни средства за допълване на код. Този пакет прави кодирането и автоматизирането на тестовете прости и лесни за инженери със софтуерни умения от всяко ниво. Инсталацията също е проста и използва pip, системата за управление на пакети на Python.

Настройване на вашата среда

Този раздел ще ви преведе през предпоставките и инсталациите, за да ви подготви да извършвате развойна работа с tm_devices. Той също така включва инструкции, които поддържат виртуални среди в Python (venvs), за да направят вашите проекти по-лесни за управление и поддръжка, особено ако просто изпробвате този пакет, преди да се ангажирате с използването му.
Забележка: Ако имате среда без директен достъп до интернет, ще трябва да промените стъпките си, като използвате командите в приложението. Ако имате проблеми, не се колебайте да публикувате в дискусии в github за помощ.

Инсталацията и предпоставките приключихаview

  1. Инсталирайте Python
    а. Python ≥ 3.8
  2. PyCharm – инсталация на PyCharm, стартиране на проект и инсталация на tm_devices
  3. VSCode – Инсталиране на VSCode, стартиране на проект и инсталация на tm_devices

PyCharm Community (безплатно) издание
PyCharm е популярна IDE на Python, използвана от разработчиците на софтуер във всички индустрии. PyCharm има интегриран модулен тестер, който позволява на потребителите да изпълняват тестове от file, клас, метод или всички тестове в папка. Подобно на повечето съвременни IDE, той има форма на допълване на код, която ускорява неимоверно вашето развитие в сравнение с основен текстов редактор.
Ще преминем през инсталационното издание на общността на PyCharm (безплатно), последвано от инсталиране на tm_devices в IDE и настройка на виртуална среда за разработка.

  1. Отидете на https://www.jetbrains.com/pycharm/
  2. Превъртете покрай PyCharm Professional до PyCharm Community Edition, щракнете върху изтеглянеTektronix опростява автоматизацията на тестовете с tm_ устройства и Python - общност на PyCharm
  3. Трябва да можете да продължите само със стъпките за инсталиране по подразбиране. Ние не изискваме нищо уникално.
  4. Добре дошли в PyCharm!Tektronix опростява автоматизацията на тестовете с tm_ Devices и Python - общност на PyCharm 1
  5. Сега ще трябва да създадете нов проект и да се уверите, че сте настроили виртуална среда. Кликнете върху „Нов проект“
  6. Потвърдете пътя за проекта, уверете се, че е избрано „Virtualenv“.Tektronix опростява автоматизацията на тестовете с tm_ Devices и Python - общност на PyCharm 2
  7. Отворете терминал. Ако твоят view не включва етикетирания бутон в долната част, вижте това:Tektronix опростява автоматизацията на тестовете с tm_ Devices и Python - общност на PyCharm 3
  8. Потвърдете, че виртуалната среда е настроена, като проверите за ( venv ) преди подканата във вашия терминалTektronix опростява автоматизацията на тестовете с tm_ Devices и Python - общност на PyCharm 4
  9. Инсталирайте драйвер от терминала
    Тип: pip install tm_devicesTektronix опростява автоматизацията на тестовете с tm_ Devices и Python - общност на PyCharm 5
  10. Вашият терминал трябва да е без грешки! Приятно хакване!

Код на Visual Studio
Visual Studio Code е друга популярна безплатна IDE, която разработчиците на софтуер във всички индустрии използват. Той е страхотен за повечето езици и има разширения за повечето езици, които правят кодирането в тази IDE много удобно и ефективно. Visual Studio Code предоставя IntelliSense, който е изключително полезен инструмент при разработване, тъй като помага при завършване на код, информация за параметри и друга информация относно обекти и класове. Удобно, tm_devices поддържа довършване на код, който описва командното дърво на обектите и класовете.
Имаме отлично ръководство за инсталиране както на Python, така и на Visual Studio Code, включително информация за настройка на виртуална среда тук.

Exampле код

В този раздел ще преминем през части от прост код, напрample и подчертайте някои необходими компоненти, за да използвате tm_ устройствата ефективно.
ВносTektronix опростява автоматизацията на тестовете с tm_ устройства и Python - импортиранеТези два реда са критични за ефективното използване на tm_devices. В първия ред импортираме DeviceManager. Това ще се справи с шаблонното свързване и прекъсване на множество класове устройства.
Във втория ред импортираме конкретен драйвер, в този случай MSO5B.
Настройваме контекстен мениджър с DeviceManager:Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - Импортиране 1И тогава, когато използваме диспечера на устройствата и драйвера заедно:Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - Импортиране 2

Можем да създадем екземпляр на инструмент със специфичен набор от команди, който съответства на неговия модел. Просто въведете IP адреса на вашия инструмент (други VISA адреси също работят).
След завършването на тези четири реда можем да започнем да пишем смислена и специфична автоматизация за MSO5B!
Кодови фрагменти
Нека да разгледаме няколко прости действия –
Задаване на типа тригер на EdgeTektronix опростява автоматизацията на тестовете с tm_ устройства и Python - Импортиране 3Ето как бихте добавили и поискали измерване от пик до пик на CH1:Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - Импортиране 4Ако искате да вземете ampизмерване на литуда на CH2:Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - Импортиране 5

Използване на IntelliSense/завършване на код

IntelliSense – името на Microsoft за довършване на код е много мощна функция на IDE, която сме се опитали да използваме възможно най-много.
Една от основните пречки пред автоматизацията с тестови и измервателни устройства е наборът от команди SCPI. Това е остаряла структура със синтаксис, който не се поддържа широко в общността за разработка.
Това, което направихме с tm_devices, е да създадем набор от команди на Python за всяка SCPI команда. Това ни позволи да генерираме Python код от съществуващия команден синтаксис, за да избегнем ръчното разработване на драйверите, както и да създадем структура, която е позната на съществуващите SCPI потребители. Той също така се свързва с кода от по-ниско ниво, който може да изисква умишлено отстраняване на грешки по време на създаването на вашата програма. Структурата на командите на Python имитира структурата на командите SCPI (или в някои случаи на Keithley TSP), така че ако сте запознати с SCPI, ще сте запознати с тях.
Това е бившampкак IntelliSense показва всички налични команди с въведената преди това команда:
В списъка с възможност за превъртане, който се появява след точката върху обхвата, можем да видим азбучен списък с категории команди за обхват:Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - завършване на кодИзбирайки afg, можем да видим списък с категории AFG:Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - завършване на код 1Крайна команда, написана с помощта на IntelliSense:Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - Фиг

Помощ за Docstring

Докато кодирате или докато четете кода на някой друг, можете да задържите курсора на мишката върху различни части от синтаксиса, за да получите специфичната помощна документация за това ниво. Колкото по-близо сте до пълния синтаксис на командата, толкова по-конкретна ще стане тя.Tektronix опростява автоматизацията на тестовете с tm_ Devices и Python - Помощ за DocstringВ зависимост от условията на вашето IDE можете да показвате както помощ за IntelliSense, така и за docstring едновременно.Tektronix опростява автоматизацията на тестовете с tm_ Devices и Python - Помощ за Docstring 1С това ръководство видяхте някои от предимствата на пакета tm_devices с драйвери за питон на Tek и можете да започнете своето пътешествие по автоматизация. С лесната настройка, допълването на кода и вградената помощ ще можете да учите, без да напускате вашата IDE, да ускорите времето си за разработка и да кодирате с по-голяма увереност.
Има насоки за принос в Github repo, ако искате да подобрите пакета. Има много по-напреднали бившиampмаркирани в документацията и в съдържанието на пакета в Exampпапка les.

Допълнителни ресурси

tm_devices · PyPI – Изтегляне на драйвери за пакети и информация
tm_devices Github – Изходен код, проследяване на проблеми, принос
tm_devices Github – Онлайн документация

Отстраняване на неизправности

Надграждането на pip обикновено е добра първа стъпка към отстраняване на неизправности:
Във вашия терминал въведете: Python.exe -m pip install -upgrade pip
Грешка: whl изглежда като a fileиме, но file не съществува ИЛИ .whl не е поддържано колело на тази платформа.Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python - Отстраняване на неизправности

Решение: Пип колело за инсталиране, така че да разпознава file формат.
Във вашия терминал тип: pip install wheel
Ако трябва да инсталирате wheel офлайн, можете да следвате подобни инструкции като Приложение A, но изисква изтегляне на tar.gz вместо .whl file.

Приложение A – Офлайн инсталация на tm_devices

  1. На компютър с интернет изтеглете пакета заедно с всички зависимости към указаното местоположение на пътя, като използвате:
    pip изтегляне – дест колело setuptools tm_devices
  2. Копирайте files към вашия компютър, който няма достъп до интернет
  3. След това следвайте инструкциите от главното ръководство за която и да е IDE, която използвате, но сменете командата за инсталиране със следното:
    pip install –no-index –find-links files> tm_устройства

Информация за контакт:
Австралия 1 800 709 465
Австрия* 00800 2255 4835
Балкани, Израел, Южна Африка и други страни на ISE +41 52 675 3777
Белгия* 00800 2255 4835
Бразилия +55 (11) 3530-8901
Канада 1 800 833 9200
Централна Източна Европа / Балтика +41 52 675 3777
Централна Европа / Гърция +41 52 675 3777
Дания +45 80 88 1401
Финландия +41 52 675 3777
Франция* 00800 2255 4835
Германия* 00800 2255 4835
Хонконг 400 820 5835
Индия 000 800 650 1835
Индонезия 007 803 601 5249
Италия 00800 2255 4835
Япония 81 (3) 6714 3086
Люксембург +41 52 675 3777
Малайзия 1 800 22 55835
Мексико, Централна/Южна Америка и Карибите 52 (55) 88 69 35 25
Близък изток, Азия и Северна Африка +41 52 675 3777
Холандия* 00800 2255 4835
Нова Зеландия 0800 800 238
Норвегия 800 16098
Китайска народна република 400 820 5835
Филипини 1 800 1601 0077
Полша +41 52 675 3777
Португалия 80 08 12370
Република Корея +82 2 565 1455
Русия / ОНД +7 (495) 6647564
Сингапур 800 6011 473
Южна Африка +41 52 675 3777
Испания* 00800 2255 4835
Швеция* 00800 2255 4835
Швейцария* 00800 2255 4835
Тайван 886 (2) 2656 6688
Тайланд 1 800 011 931
Обединено кралство / Ирландия* 00800 2255 4835
САЩ 1 800 833 9200
Виетнам 12060128
* Европейски безплатен номер. Ако не
достъпен, обадете се на: +41 52 675 3777
Рев. 02.2022

Намерете по -ценни ресурси на адрес TEK.COM
Авторско право © Tektronix. Всички права запазени. Продуктите на Tektronix са обхванати от американски и чуждестранни патенти, издадени и висящи. Информацията в тази публикация замества тази във всички публикувани по -рано материали. Запазени са привилегиите за спецификация и промяна на цената. TEKTRONIX и TEK са регистрирани търговски марки на Tektronix, Inc. Всички други споменати търговски наименования са търговски марки, търговски марки или регистрирани търговски марки на съответните им компании.
052124 SBG 46W-74037-1

Лого на Tektronix

Документи / Ресурси

Tektronix опростява автоматизацията на тестовете с tm_ устройства и Python [pdf] Ръководство за потребителя
48W-73878-1, Опростяване на автоматизацията на тестове с tm_ устройства и Python, автоматизация на тестове с tm_ устройства и Python, автоматизация с tm_ устройства и Python, tm_ устройства и Python, устройства и Python, Python

Референции

Оставете коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са маркирани *