NBB009

Speciální fyzika

Literatura a dokumenty

pdf Výtah přednášek – Doc. RNDr. Pavel Schauer, CSc.
pdf Automatizace měření se zaměřením na Python, přístroje Agilent, sběrnici GPIB a knihovnu VISA, v prostředí Windows XP – Mgr. Miroslav Luňák, Ph.D.

Odkazy na autory mimo Ústav fyziky, FAST, VUT:
Kurz Python – Pavel Kosina (přehlednější seznam těchto lekcí je níže)

Zde si stáhněte aktuální simulační jednotku v Pythonu visa_simul.py

Po stažení nezapomeňte simulační jednotku vyměnit ve všech svých úložištích (prohledejte instalační adresář Python2X/Lib a aktuální adresář, kde program spouštíte) a smažde všechny vygenerované binární překlady visa_simul.pyc, vygenerují se nové.

Instalace programovacího prostředí pro Python se zaměřením na přístroje Agilent, sběrnici GPIB a knihovnu VISA, v prostředí Windows XP

Rozhodli jsme se sestavit ovládání přístrojů prostřednictvím sběrnice GPIB (IEEE 488) a za použití programovacího jazyka Python. Začneme stáhnutím a nainstalováním základních součástí.

Upozornění na začátek: pokud vám nepůjde některá část nainstalovat, je možné, že budete potřebovat jinou verzi konkrétní aplikace, například pro Windows Vista, nebo jiný než 32-bitový systém.

Dotazy můžete směřovat na Mgr. Miroslav Luňák, Ph.D. (lunak@dp.fce.vutbr.cz).

  1. Začneme stažením instalačního souboru jazyka Python (ver. 2.7.1) a nainstalujeme.
  2. Stáhneme pomocnou aplikaci-prostředí pro pohodlnou editaci programů v jazyce python, PythonWin-pywin a nainstalujeme.
  3. Je doporučeno stáhnout také numerickou knihovnu pro python, má název Numpy a nainstalovat. Bude se jednou hodit pro případ použití složitějších matematických funkcí (log, sin, cos,…).
  4. Je doporučeno stáhnout také vědeckou knihovnu pro python, má název Scipy a nainstalovat. Bude se jednou hodit pro případ použití ještě složitějších matematických funkcí (FFT).
  5. Zájemci o práci s databázemi (není náplní kurzu) ocení pysqlite, tento krok však můžeme vynechat.
  6. Pro komunikaci s přístroji od firmy Agilent pomůže balíček pyvisa, více se dočteme zde.
  7. Aby jste mohli své programátorské počiny převádět do „*.exe“, můžete využít Py2exe, více zde.
  8. Poslední, ale pro skutečně zapojená zařízení jako budou: USB-GPIB karta pro ovládání přístrojů Agilent a nebo samotné přístroje Agilent, je velmi vhodná instalace ovladačů komunikačních karet, shrnutých v trochu objemnější instalačce IOLibSuite (Input/Output knihovny) od firmy Agilent.

Nyní máme vše podstatné nainstalováno.

Autor: Mgr. Miroslav Luňák, Ph.D., Ústav fyziky, FAST, VUT v Brně

Kurz Python

Seznam lekcí, které je vhodné studovat pro zvládnutí programování automatizace měření

Python – 0. lekce. Instalace, vyladění, editory, literatura, první příkaz.
Python – 1. lekce. Python se představuje: čísla, řetězce, seznamy, proměnné, grafika a úkol.
Python – 2. lekce. Na konci této lekce budete mít program, který vás nebo kohokoliv jiného bude zkoušet z násobilky. V průběhu tvorby se naučíme mimo jiné generovat náhodná čísla a pamatovat si je, ptát se a zpracovávat odpovědi od uživetele, rozhodovat, jestli je něco pravda nebo nepravda, opakovat věci několikrát dokola.
Python – 3. lekce. Práce s řetězci je jednou z velmi silných stránek jazyka Python. Řetězec je prostě text. Jedno písmeno, slovo, nebo celá věta či dokonce mnoho vět. Řetězce v Pythonu poznáte jednoduše – jsou v uvozovkách a většinou se v editorech zobrazují zeleně. Také se s nimi jednoduše pracuje. Když budete trochu pečliví, Python pod vaším vedením zvládne v řetězcích i češtinu se vším všudy.
Python – 4. lekce. Výraz x>10 bude pravdivý, když x bude třeba 100. Výrazu ‚x>10‘ se říká podmínka, která může být pravdivá nebo nepravdivá, podle toho, kolik je x. Aby byla nepravdivá, muselo by x být třeba 5 nebo -62. Dokonce i pro x=10 je podmínka nepravdivá. S podmínkami úzce souvisí příkaz if, o kterém je dnešní lekce.
—-
Python – 8. lekce. Existuje proměnná, které Python říká seznam.  Jiné programovací jazyky ji nazývají „pole“.  Python zvolil seznam snad proto, že takový název intuitivněji odpovídá více nějakému seznamu (třeba telefonnímu) než slovíčko pole. Seznamy si děláte, když chodíte nakupovat, když si píšete rozvrh nebo úkoly. Tak přesně o tom (a mnohem více) je seznam v Pythonu.
Python – 9. lekce. Budeme pokračovat v našem „telefonním seznamu“. Každého jistě napadlo, co všechno náš program by mohl umět. Mě osobně tam chybí možnost uložení do souboru, abych měl data přístupná i po skončení programu. Někdo by rád v seznamu vyhledával a vypisoval výsledky. Vylepšovat můžeme prakticky vše. Dneska se podíváme na možnosti seřazení seznamu podle abecedy.
Python – 10. lekce. Tak, konečně se dostáváme k práci se soubory. Ukážeme si, jak ukládat a načítat data do a ze souborů.
Python – 11. lekce. Něco o grafickém prostředí neboli GUI neboli oknech. Aneb jak z Pythonu dostat, aby se moje aplikace otevřela v běžném okně na Linuxu, Windows i Macu, místo toho, aby se otevírala v černém shellovském okně.

Python – 18. lekce. Chyby, výjimky, errory. Chyby jsou většinou nemilé, ohlašují nějakou špatnou zprávu. Jde ale o to, jestli nám chybové hlášky sdělují něco více než jen ERROR!. Nás určitě zajímá, kde a proč se tak chyba stala. Dokáže Python pomoci?

Výtah lekcí z Kurzu Python, autor Pavel Kosina, kurz odkazuje na server www.programujeme.com


Seznamy a zadání

 


a) Přednáška

Každý týden, učebna Z108, 13 týdnů

Osnova přednášky 13 týdnů

Pořadí Náplň počet
týdnů
1. Úvod: Počítače v měření, ekonomický přínos, kvalitativní přínos 2
2. Snímače a převodníky: snímače tlaku, teploty, mechanického napětí, změny délky, změny objemu. Úvod do měřícího systému GPIB: Základní požadavky na zapojení. 1
3. Měřící systém GPIB popis sběrnice, funkční příkazy GPIB. Komunikace s přístroji přes sběrnici GPIB
Příkazy (kódová slova) GPIB, sjednocená pro všechny GPIB od různých výrobců. Propojovací kabely a konektory GPIB. Řídící slovo výrobce přístroje.
1
4. – 6. Výuka programovaní v Pythonu dle rozpisu výše „Kurs Python“. Úprava výstupu do souboru s využitím formátovacího řetězce. 3
7. Instrukce v programové jednotce Python GPIB. Adresa přístroje. Popis přístrojů se sběrnicí GPIB od firmy Agilent. Multimetr Agilent 34401A. Číslicově řízený zdroj Agilent E3631A. Programovatelný funkční generátor Agilent 33120A. Osciloskop Agilent 54600A. 1
8. Program (skript) pro ovládání jednoduchého měřícího celku s možností simulace. Simulace měření. Vytvoření „exe“ souboru z pythonovského scriptu. Poznámky k jednotce visa_simul.py. Ukázka programu, jednoduché měření s použitím jednoho přístroje a simulační jednotky. Výstup měření do souboru. 1
9. Praktická úloha: příprava konkrétního měřícího programu ze stavební praxe 1
10. Praktická úloha: příprava konkrétního měřícího programu ze stavební praxe 1
11. Praktická úloha: příprava konkrétního měřícího programu ze stavební praxe 1
12. Praktická úloha: příprava konkrétního měřícího programu ze stavební praxe 1
13. Rekapitulace ke zkoušce 1

b) Cvičení

Každý týden, učebna Z104 nebo Z169, 13 týdnů

Poř.
týden
Náplň
1. Úvod, seznámení s předmětem a náplní, plán cvičení, základní informace
2. Ukázka snímačů podle jejich kategorií. Procvičení práce se snímači ve skupinách.
3. Sestavování měřícího celku pro vybraná schémata úloh (GPIB, koaxiální propojení, PC-přístroje, USB modul quido, Agilent), práce ve skupinách.
4. Sestavování měřícího celku pro další zvolená schémata úloh, práce ve skupinách.
5. Cejchování termistoru, cejchování termo-diody. Realizace automatizovaného celku, práce ve skupinách na úlohách částečně připravených učitelem.
6. Programování automatizovaných úloh v programovacím jazyce Python.
7. Programování úloh z 9. týdne cvičení v programovacím jazyku Python, odladění pomocí programové simulační jednotky „přístroj“.
8. Programování úloh z 11. týdne cvičení v programovacím jazyku Python, odladění pomocí programové simulační jednotky „přístroj“.
9. Měření R-I charakteristiky diody (skupina A)
Měření U-I charakteristiky odporu (skupina B)
Realizace automatizovaného měřícího pracoviště, zapojení úloh
10. Měření na pracovištích ve skupinách z 9. týdne cvičení, s využitím programu ze 7. týdne cvičení, s využitím programové jednotky „přístroj“ komunikující s přístroji. Protokol o měření.
11. Měření U-I charakteristiky diody (skupina A)
Měření R-I charakteristiky odporu (skupina B)
Realizace automatizovaného měřícího pracoviště, zapojení úloh
12. Měření na pracovištích ve skupinách z 11. týdne cvičení, s využitím programu ze 8. týdne cvičení, s využitím programové jednotky „přístroj“ komunikující s přístroji. Protokol o měření.
13. Zhodnocení protokolů. Zápočet