77,28 → 77,45 |
|
\subsection{Časově digitální převodník (TDC)} |
|
Nejjednodušším způsobem elektronického měření časových intervalů je použití čítače a oscilátoru. Čítač pak počítá počet period oscilátoru mezi příchozími pulzy pro start a stop signál. Toto řešení je ale velmi nepraktické, jelikož pro získání velkého časového rozlišení je třeba vysoká frekvence velice přesného oscilátoru. |
Navíc pro požadované časové rozlišení ~65ps by nutná frekvence oscilátoru byla zhruba 15,3GHz, což je ale se současnou digitální technikou neproveditelné. Nezanedbatelná je zároveň také potřebná délka extrémně rychlého čítače, která by dosahovala desítek bitů. |
|
K měření se proto používá vhodnějšího principu a postupné vlny v sofistikovaném řetězci hradel. Ideové znázornění je na \ref{TDC_unit}. |
Metoda funguje tak, že příchozím startovacím impulzem je v řetězci vygenerována postupná vlna, která se šíří po jednotlivých hradlech až do doby, než je pomocí nadřazené logiky zamezeno jejímu šíření příchozím stop pulsem. Následně je pak podle počtu překlopených hradel mezi pulzy START a STOP možné určit délku časového intervalu. |
Metoda tedy využívá konečnou rychlost šíření signálu přes hradla a její přesnost závisí na mnoha faktorech, jako je například geometrie čipu nebo zapojení řetězce. |
|
\begin{figure}[htbp] |
\begin{center} |
\label{TDC_unit} |
\includegraphics[width=150mm]{./img/TDC_principle2.png} |
\caption{Ideové schéma měřící jednotky TDC} |
\end{center} |
\end{figure} |
|
Zajímavým problémem této metody je potřeba omezit počet hradel v řetězci na minimální množství, neboť tak lze lépe udržet linearitu měření a zjednodušit výrobu. Jednou možností, jak tento problém vyřešit je zkombinovat měření na řetězci s měřením pomocí čítače. |
Příchodem startovacího pulzu, je pak aktivována rychlá měřící jednotka. Která měří pouze do nejbližší hrany hodin čítače. Následně počítá čítač hrubé intervaly až do doby než příchozí stop impulz aktivuje měřící jednotku která pak odměří čas do zbývající hrany hodin. Rozdíl pak udává skutečnou délku intervalu. Tento způsob měření je znázorněn na obrázku \ref{TDC_unit_long}. |
|
\begin{figure}[htbp] |
\begin{center} |
\includegraphics[width=100mm]{./img/TDC_principle.png} |
\label{TDC_unit_long} |
\includegraphics[width=150mm]{./img/TDC_principle.png} |
\caption{Způsob přesného měření delších časových úseků} |
\end{center} |
\end{figure} |
|
Předpokladem užití tohoto způsobu měření je dostatečně stabilní oscilátor s periodou kratší, než je měřící rozsah rychlé TDC jednotky. |
|
\section{Realizace} |
|
Pro konstrukci přístroje byl zvolen čip TDC-GP2 od firmy Acam. Tento integrovaný obvod využívá k měření krátkých časových intervalů řetězově zapojených hradel. Podle počtu překlopených hradel mezi pulzy START a STOP je pak možné určit délku časového intervalu. |
Pro konstrukci přístroje byl zvolen čip TDC-GP2 od firmy Acam. Tento integrovaný obvod využívá k měření krátkých časových intervalů výše popsané metody řetězově zapojených hradel. Blokové schéma vnitřní architektury čipu je znázorněno na \ref{GP2_chip_block}. |
Cip obsahuje mnoho dalších podpůrných obvodů, které zjednodušují jeho použití a také přidávají další funkce (generování spouštěcího pulzu pro výstřel LASERu, měření teploty atd.). |
|
S ohledem na tyto možnosti byla navržena koncepce výsledného zařízení tak, aby umožnila využití všech potenciálních možností čipu. Blokové schéma této koncepce je na \ref{device_block}. A obsahuje jednak obvody potřebné pro funkci čipu TDC-GP2, jako kalibrační oscilátor a napěťový stabilizátor. Potom i řídící mikroprocesor, několik možných komunikačních rozhraní a obvody pro referenční měření teploty i pro manipulaci se vstupními a výstupními signály (vstupní signál z experimentu může bát poškozen rušením, nebo disperzí vedení, výstupní signál musí naopak odpovídat požadavkům experimentálního zařízení). |
|
|
\begin{figure}[htbp] |
\begin{center} |
\label{device_block} |
\includegraphics[width=150mm]{./img/blokove_schema.png} |
\caption{Ideové schéma cílového zařízení} |
\end{center} |
106,6 → 123,7 |
|
\begin{figure}[htbp] |
\begin{center} |
\label{GP2_chip_block} |
\includegraphics[width=150mm]{./img/TDC_block.png} |
\caption{Blokové schéma čipu TDC-GP2} |
\end{center} |
122,6 → 140,12 |
\end{center} |
\end{figure} |
|
I. prototyp obsahoval pouze jeden mikroprocesor, který obstarával jak komunikaci s měřícím čipem TDC-GP2, tak i generování testovacích start-stop impulzů. Komunikace a přenos dat pak byla řešena přímo programátorem PICPROGUSB02A. |
|
Toto řešení se po zprovoznění základních funkcí měřícího čipu ukázalo být nepraktické, neboť nezohledňovalo reálný způsob vzniku měřených signálů, což poměrně komplikovalo programování. Navíc způsob komunikace mezi řídícím mikroprocesorem a počítačem nemohl být trvalým řešením. |
|
Z tohoto důvodu byl připraven další prototyp. V kterém byl rychlejší mikroprocesor dedikován pouze pro generování testovacích impulzů simulujících reálný experiment. Pro komunikaci s čipem byl pak přidán levnější a pomalejší mikroprocesor a převodník USB232R01B pro sériovou komunikaci s počítačem. |
|
\begin{figure}[htbp] |
\begin{center} |
\includegraphics[width=150mm]{./img/prototyp2.jpg} |
139,24 → 163,37 |
|
\subsection{Hardware} |
|
Pro realizaci experimentálního zařízení bylo s výhodou využito stávajícího elektronického vývojového systému MLAB, který byl pro účely realizace měřícího zařízení obohacen o nový modul GP201A, který obsahuje čip TDC-GP2. |
Pro realizaci všech prototypů experimentálního zařízení bylo s výhodou využito stávajícího elektronického vývojového systému MLAB, který byl pro účely realizace měřícího zařízení obohacen o nový modul GP201A, který obsahuje čip TDC-GP2. Zapojení modulu bylo opět zvoleno tak, aby neomezilo využitelné možnosti čipu. Jeho konkrétní zapojení je součástí přílohy. Motiv navrženého plošného spoje je na \ref{GP201A_PCB}. |
|
\begin{figure}[htbp] |
\begin{center} |
\label{GP201A_PCB} |
\includegraphics[width=150mm]{./img/GP2_PCB.png} |
\caption{Návrh plošného spoje modulu GP201A} |
\end{center} |
\end{figure} |
|
|
\subsubsection{Mikroprocesory} |
|
V prvním prototypu byl k ovládání měřícího čipu TDC-GP2 využit mikroprocesor PIC18F4550 v modulu PIC18F4550v01A, který zároveň generoval testovací signály. V následujícím druhém prototypu byl odsunut pouze do pozice generátoru testovacího signálu. A pro obsluhu měřícího čipu byl přidán mikroprocesor PIC16F887 v modulu PIC16F87xTQ4401B. Jehož parametry jsou dostačující pro komunikaci s měřícím čipem i nadřazeným počítačem. |
|
|
\subsubsection{Kalibrační oscilátor} |
|
Princip měření čipu TDC-GP2 je ze své podstaty závislý na mnoha dalších proměnných (Rychlost překlápění hradel se mění například s teplotou a napájecím napětím) a proto je třeba měřící řetězec soustavně a systematicky kalibrovat. K tomu slouží externí oscilátor o kterém se předpokládá, že má stabilní periodu. Měřící řetězec TDC čipu se pak použije ke změření periody oscilátoru a je jej pak možné kalibrovat za předpokladu, že výstupní digitální hodnota z měřícího řetězce je lineární funkcí času. |
|
Při návrhu konstrukce prototypu bylo vybíráno z celé řady oscilátorů [viz příloha] a hodnoceny jejich parametry; cena, stabilita a dostupnost. |
Při návrhu konstrukce prototypu bylo vybíráno z celé řady oscilátorů [viz příloha] a hodnoceny jejich parametry; cena, stabilita a dostupnost. Výsledným vybraným kalibračním oscilátorem je SG8002 - 5MHz. |
|
\subsection{Software} |
\subsubsection{Teplotní kalibrace} |
|
Samotný čip TDC-GP2 je vybaven elektronikou určenou k měření teploty avšak její princip je založen měření doby na nabíjení referenčního kondenzátoru přes statické odpory a termistory - jde tedy o poměrovou metodu. Použití poměrového měření ke korekci teplotních driftů samotného čipu TDC-GP2 by tudíž bylo problematické navíc jeho TDC jednotka, kterou chceme teplotně kalibrovat se v tomto měření přímo využívá. |
|
Prototyp byl tedy obohacen o digitální teploměr DS18B20 jehož absolutní přesnost 0,6K a rozlišení 0,01K lze pokládat za dostačující. A lze tedy TDC čip spolu s oscilátorem kalibrovat vzhledem k teplotě naměřené tímto teploměrem. |
|
\subsection{Firmware} |
|
Firmware mikroprocesoru je napsán v jazyce C v prostředí CCS C compiler. |
|
\begin{figure}[htbp] |
\begin{center} |
\includegraphics[width=100mm]{./img/program.png} |
164,8 → 201,12 |
\end{center} |
\end{figure} |
|
Programová smyčka řídícího mikrokontroléru je navržena tak, aby umožnila realizovat oba měřící režimy TDC čipu. |
Programová smyčka řídícího mikrokontroléru je navržena tak, aby umožnila realizovat oba měřící režimy TDC čipu. K ovládání TDC-GP2 byla vytvořena knihovna, která umožňuje nastavit všechny možnosti čipu. |
|
Obsahuje také několik funkcí vyšší úrovně, které se týkají ovládání určitého měřícího módu čipu. TDC-GP2 má dva hlavní časové měřící módy, liší se především v rozsahu měřeného intervalu a počtem kanálů na kterých je možné sledovat STOP impuls. |
|
\subsubsection{Měřící mód 1} |
|
\begin{figure}[htbp] |
\begin{center} |
\includegraphics[width=100mm]{./img/TDC_mode1.png} |
173,6 → 214,11 |
\end{center} |
\end{figure} |
|
|
\subsubsection{Měřící mód 2} |
|
|
|
\begin{figure}[htbp] |
\begin{center} |
\includegraphics[width=100mm]{./img/TDC_mode2.png} |
180,20 → 226,53 |
\end{center} |
\end{figure} |
|
\subsubsection{Fire generator - generování spouštěcího signálu} |
|
Oba měřící módy čipu umí zároveň využít takzvaný "Fire generator", který slouží k vygenerování spouštěcího signálu pro začátek měření. (Například výstřel LASERu). K tomu v knihovně opět existují potřebné prostředky. |
|
|
\subsubsection{Měření teploty} |
|
Při měření teploty čipem TDC-GP2 je třeba jej resetovat do továrního nastavení a následně nastavit počet měřených kanálů (Dva nebo čtyři). Další nastavení není třeba provádět. A lze rovnou spustit měření funkcí DOPLNIT. |
|
Firmware je od druhého prototypu nakonfigurován tak, že automaticky měří všechny čtyři možné teplotní kanály a navíc přečte i digitální senzor teploty DS18B20. |
|
Naměřený výstup ze čtyř poměrových termočlánkových teploměrných kanálů není firmwarem nijak zpracováván a jeho vyhodnocení je ponecháno na uživateli. |
|
\subsubsection{Datový výstup} |
|
Datový výstup je podobný známému GPS textovému formátu NMEA. Zde je příklad výstupních dat: |
|
|
Výstupní data jsou odesílána na sérový port s parametry 9800 8N1. A ke sběru dat lze použít libovolný textový terminál. |
|
\section{Výsledky} |
Na dvou prototypech byla ověřena funkčnost čipu TDC-GP2 a |
|
\subsection{Použití} |
|
Po vybavení přístroje potřebnými optickými elementy ke pak možné jej použít k laserovému měření vzdáleností. Nebo i pro Time Correlated Photon Countig a v dalších aplikacích. |
|
\subsection{Možnosti dalšího vývoje} |
|
Další vývoj zařízení by již měl být cílen na konkrétní aplikaci ve které bude přístroje nasazen. Aktuální stav je dobrým výchozím bodem pro nasazení v konkrétních experimentech. |
|
\subsubsection{Komunikační protokol} |
|
Použitý komunikační protokol je důsledkem postupného vývoje prototypů a pro |
|
|
\subsubsection{Speciální zpracování rychlých vstupních a výstupních signálů} |
|
Samotný čip TDC-GP2 používá jako vstupní a výstupní signál logické úrovně 5V CMOS. To nemusí být pro některé aplikace vhodné, jednak kvůli komplikacím s vedením jednoduchého CMOS signálu na delší vzdálenosti a potom i z hlediska ochrany samotného obvodu před poškozením externím zařízením. |
|
Do budoucna bylo tedy připraveno několik základních modulů umožnujících interakci s jinými přístroji. |
|
Patří mezi ně převodník TTL na PECL, výstupní PECL signál je pak diferenciální a lze jej proto snadno odvádět na velké vzdálenosti kvalitním diferenciálním vedením, jako jsou například kabely SATA, nebo UTP kabely bez rizika poškození signálu elektrickou interferencí. Stejný převodník (Osazený jiným IO) pak lze použít i k převedení PECL signálu zpět na TTL a dovedením pouze na krátkou vzdálenost. Problémy kompatibility CMOS a TTL lze pak v takovém případě zanedbat. |
|
\section{Závěr} |
|
Výsledkem práce je přístroj, který lze bez zásadních úprav využít k měření krátkých časových intervalů v laboratorních experimentech. Zařízení je zároveň dostatečně flexibilní pro potřebné úpravy některých speciálních aplikacích, které zatím nelze předvídat. |
|
%\pagebreak |
%\listoffigures |