Bachelor's Thesis

Using Python for measurement

Final Thesis 2.46 MB Appendix 605.14 kB

Author of thesis: Zdeněk Štok

Acad. year: 2025/2026

Supervisor: Ing. Martin Čala, Ph.D.

Reviewer: Ing. Vít Šimeček

Abstract:

This bachelor thesis explores the possibilities of integrating two distinct environments LabVIEW and Python. The aim is to explore bidirectional communication between these environments. This includes calling Python scripts in LabVIEW using the Python Node and using LabVIEW generated dynamic link libraries (DLLs) in Python.
The second part of the thesis focuses on creating a complex application that demonstrates the practical use of this integration. This application handles the export of graphs from LabVIEW into a desired format for further publication.

Keywords:

LabVIEW, Python, virtual environment, matplotlib

Date of defence

16.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student obhájil bakalářskou práci. Komise neměla žádné námitky k řešené práci. V průběhu odborné rozpravy student reagoval na dotazy oponenta. Dále zodpověděl dotazy týkající se doby prvotního běhu programu a možností jeho zrychlení, a dále dostupnosti hotových modulárních prostředků v prostředí LabVIEW pro zefektivnění řešení.

Language of thesis

Czech

Faculty

Department

Study programme

Automation and Measurement (BPC-AMT)

Composition of Committee

prof. Ing. Rudolf Jalovecký, CSc. (předseda)
prof. Ing. Luděk Žalud, Ph.D. (místopředseda)
Ing. Martin Čala, Ph.D. (člen)
Ing. Jakub Dokoupil, Ph.D. (člen)
Ing. Adam Chromý, Ph.D. (člen)
doc. Ing. Miroslav Jirgl, Ph.D. (člen)

Supervisor’s report
Ing. Martin Čala, Ph.D.

Bakalářská práce pana Štoka s názvem „Využití jazyka Python pro měření“ navazovala na semestrální projekt. Od začátku pracoval iniciativně, pravidelně docházel na konzultace a byl schopen samostatně postupovat dle zadání, i když s blížícím se termínem odevzdání jeho aktivita mírně poklesla. V průběhu řešení, konkrétně při práci na bodu 4 zadání (demonstrační úlohy), jsme dospěli k závěru, že kombinace LabVIEW a Pythonu je velmi vhodná pro generování grafů. Z tohoto důvodu bylo řešení zaměřeno pouze na jednu demonstrační úlohu. Dosažené výsledky jsou použitelné, nicméně jejich další rozpracování by již přesahovalo rámec zadání. Systém pro detekci plagiátů neodhalil žádnou významnou shodu. Navrhuji hodnocení B/82 bodů. Points proposed by supervisor: 82

Grade proposed by supervisor: B

Reviewer’s report
Ing. Vít Šimeček

V bakalářské práci „Využití jazyka Python pro měření“ student prověřil možnosti vzájemné integrace programovacího jazyka Python a LabVIEW jakožto používaného nástroje v měřicích řetězcích.
V první kapitole student popsal programovací jazyky Python a LabVIEW a jejich základní charakteristiky. Následně v kapitole druhé popsal integraci Pythonu do LabVIEW včetně tří základních funkčních bloků pro inicializaci Pythonu, výměnu dat mezi prostředími a ukončení relace. Dále provedl analýzu časové náročnosti zmíněných funkčních bloků. V následující třetí kapitole řeší volání LabVIEW kódu v Pythonu a vzájemné předávání proměnných. Tato část nebyla doplněna o praktickou ukázku, na rozdíl od volání Pythonu v LabVIEW, čímž se zabývala kapitola čtvrtá. Byla navržena jednoduchá aplikace pro export dat z LabVIEW a následné grafické zobrazení v Pythonu pomocí knihovny Matplotlib, což je knihovna nabízející uživateli více možností než klasické zobrazení v LabVIEW. Student řešil všechny přenášené parametry a nastavení grafu tak, aby byly korektně přeneseny do rozhraní Pythonu, a umožnil tím graf věrohodně rekonstruovat a upravovat. Závěrem v kapitole páté zhodnotil a ilustroval výsledky této aplikace.
Výše uvedeným student splnil body zadání, pouze v bodu číslo čtyři vytvořil jednu demonstrační úlohu namísto několika.
Po formální stránce mám k práci drobné připomínky. Co se práce se zdroji týče, student citoval zejména z populárně-naučných článků. Doporučil bych spíše používat oficiální dokumentace. Navíc na s. 13 má kupříkladu zmíněn princip garbage collectoru, avšak uváděný zdroj informace o něm neobsahuje. Seznam literatury dále obsahuje zdroj [4], který v práci není citován. V práci postrádám popis přílohy; je tam pouze návod na vytvoření virtuálního prostředí, ale popis přiložených skriptů již ne.
Celkově práce odpovídá svou úrovní absolventovi bakalářského studia, pročež ji doporučuji k obhajobě. Topics for thesis defence:
  1. 1. Které další knihovny kromě Keras mohou být užitečné pro volání z LabVIEW? Uveďte alespoň 2 a to včetně důvodů proč.
  2. 2. Z tab. 4.3 vyplývá, že volání Python node trvá nejméně 1,5 ms. V tab. 2.1 máte přenosy polí, přičemž přenos 1000 prvků typu DBL trvá 0,3 ms. Vysvětlete způsob měření času a proč volání pouhého Python node trvá déle, než přenos dat.
  3. 3. Uveďte příklad úlohy, kdy má smysl volat LabVIEW kód z Pythonu, jak popisujete v kapitole 3.
Points proposed by reviewer: 79

Grade proposed by reviewer: C

Responsibility: Mgr. et Mgr. Hana Odstrčilová