/Designs/Measuring_instruments/ABL01A/DOC/src/zprava.cs.tex
45,13 → 45,12
\section{Automatický vypouštěč meteobalónů}
 
Celý systém by měl být robotizovaným doplňkem sítě
\href{/doku.php?id=cs:rmds}{radiových detektorů meteorů}, případně pak i
její vizuální varianty (video pozorování
\textsuperscript{\href{\#fn\_\_1}{1)}} a bolidové kamery).
\href{http://wiki.mlab.cz/doku.php?id=cs:rmds}{radiových detektorů meteorů}, případně pak i
její vizuální varianty (video pozorování a bolidové kamery).
 
Účel zařízení je zpřesnit odhad trajektorie temné dráhy meteoritu v
atmosféře zavedením korekcí na proudění vzduchových mas během letu. A
tím v důsledku zmenšit plochu dopadové elipsy.
tím v důsledku zmenšit plochu dopadové elipsy meteoritu na zemský povrch.
 
Údaje o proudech v atmosféře budou získány balónovou sondou vypuštěnou
bezprostředně po detekci průletu bolidu atmosférou. Místo vypuštění
67,43 → 66,38
 
\subsection{Pozemní vypouštěcí box}
 
Pozemní stanici balónové sítě bude tvořit kompaktní krabice obsahující
techniku potřebnou k vypuštění balónové sondy. Zařízení musí být
Pozemní stanici balónové sítě tvoří kompaktní krabice obsahující
techniku potřebnou k vypuštění balónové sondy. Zařízení je
konstruováno tak, aby bylo schopné vydržet řádově několik roků v
pohotovostním režimu, a čekat na příkaz k vypouštění sondy.
 
\subsubsection{Technické požadavky}
\subsubsection{Technické parametry}
 
Většinu řídící elektroniky lze složit z modulů
Většinu řídící elektroniky je složena z modulů
\href{http://www.mlab.cz/}{stavebnice MLAB}
 
\paragraph{Komunikace se sítí stanic}
Komunikace s řídícím systémem sítě stanic je aktuálně řešena terminálem na RS232 tvořeného modulem \href{http://www.mlab.cz/PermaLink/RS232SINGLE01A}{RS232SINGLE01A} respektive jeho USB variantou \href{http://www.mlab.cz/PermaLink/USB232R01B}{USB232R01B}. Další možnosti připojení jsou následující:
 
\begin{itemize}
\item
Ethernet - modulem \href{/doku.php?id=cs:eth}{ETH01A}
Ethernet - modulem \href{http://www.mlab.cz/PermaLink/ETH01A}{ETH01A}
\item
RS232 - \href{/doku.php?id=cs:rs232single}{RS232SINGLE01A}
Konvertor z TTL na sběrnici CAN \href{http://www.mlab.cz/PermaLink/TTLCAN01B}{TTLCAN01B}
\item
Konvertor z TTL na sběrnici RS485. \href{http://www.mlab.cz/PermaLink/TTLRS48501A}{TTLRS48501A}
\item
GSM (pro odlehlé oblasti)
\end{itemize}
Zároveň bude potřeba také vybavení pro příjem telemetrie z již
vypuštěných radiosond \textsuperscript{\href{\#fn\_\_2}{2)}} z jiných
stanic.
 
Tyto požadavky splňuje modul
Jako hlavní řídící MCU této jednotky byl vybrán ARM STM32F103R8T v modulu
\href{/doku.php?id=cs:stm32f10xrxt}{STM32F10xRxT01A}
 
\paragraph{Napájení systému}
 
\begin{itemize}
\item
lokální (stand-alone) - Fotovoltaický panel
\item
Síťové napájení (síťový adaptér + UPS)
\end{itemize}
\paragraph{Diagnostika poruch}
Ve vývojové fázi funkčního vzoru je napájení systému řešeno PC ATX zdrojem, ze kterého jsou využity +5 V a +12 V větve. Toto řešení se neukázalo jako příliš optimální vzhledem ke špatné spolehlivosti PC zdrojů při provozu s nízkou zátěží v dalším prototypu bude proto ATX zdroj pravděpodobně nahrazen jiným spínaným zdrojem určeným pro tento druh aplikace.
 
\subsubsection{Diagnostika poruch}
 
\begin{itemize}
\item
Kontrola úspěšného startu (měření vztlaku balónu)
113,39 → 107,31
Vlhkost uvnitř krabice (průsak a ztráta vodotěsnosti proražením víka a
podobně)
\end{itemize}
\paragraph{Meteorologická data}
 
\begin{itemize}
\item
Základní meteorologická čidla (teplota, tlak, rychlost větru) - k
určení možnosti startu. \href{/doku.php?id=cs:aws}{AWS01B}
\item
GPS (pozice stanice a přesný čas) log reportu o startu.
\href{/doku.php?id=cs:gps}{GPS01A}
\end{itemize}
\paragraph{Mechanická konstrukce}
\subsubsection{Meteorologická data}
 
\begin{itemize}
\item
Svařovaná plastová bedna s odstranitelným víkem. Dostatečně těsná, aby
Základní meteorologické veličiny nutné pro rozhodnutí o startu jsou snímány lokálně (teplota, tlak, relativní vlhkost, směr rychlost větru) jsou snímány meteostanicí \href{http://wiki.mlab.cz/doku.php?id=cs:aws}{AWS01B} a lokálně zaznamenáván společně s údaji z \href{/doku.php?id=cs:gps}{GPS01A} (pozice stanice a přesný čas) logu a reportu o průběhu startu.
 
 
\subsubsection{Mechanická konstrukce}
 
Svařovaná plastová bedna s odstranitelným víkem. Dostatečně těsná, aby
nebyla zajímavá pro hlodavce a další havěť.
\item
Konstrukce navržená tak, aby umožnila vypouštění i současných
profesionálních balónových sond.
\item
Aktivace mechanických prvků přepálením vlákna
\item
uzavření balónu zatavením hrdla
\end{itemize}
 
 
\subparagraph{Akční členy}
 
Většina akčních členů by měla být konstruována s důrazem na maximální
spolehlivost. Akční členy proto pravděpodobně budou pružiny s
Většina akčních členů je konstruována s důrazem na maximální
spolehlivost. Akční členy proto jsou pružiny s
přepalovacími PE pojistkami (silonové vlákno, nebo stuha
přepalovaná výkonovým rezistorem) ke spínáni proudu do rezistorů může
být využit modul \href{/doku.php?id=cs:nfet4x}{NFET4X01B}
je využit modul \href{http://www.mlab.cz/PermaLink/NFET4X01B}{NFET4X01B}
 
\section{Firmware}
\section{Firmware pozemní stanice}
 
\subsection{Real-time operační systém}
Pro ovládání celého systému byl zvolen real-time operační systém (ROS). Ten byl zvolen především pro zjednušení programování vypouštěče, konkrétně nastavování periférií procesoru a řízení vícevláknové aplikace na něm běžící.\\
167,12 → 153,17
Posledním krokem je zatavení naplněného balónu. V tomto kroku je opět nadefinován čas, po který dochází k zatavování balónu pomocí odporového drátu. Po uplynutí nadefinované doby je balón zataven a na terminál je vypsána informace o ukončení vypouštění a všechny výstupy jsou v neaktivním stavu.\\
Ad. 2. V případě příjmu zprávy, která přikazuje ukončení procesu odpalování, se deaktivují výstupy aktivní během vypouštění a uživatel je informován o úspěšném přerušení celé sekvence.\\
Ad. 3. Pro přesné časování během celého procesu odpalování je využito funkce časovače. Ten se v každém kroku odpalování sepne na určitou dobu, která je celočíselným násobkem celkové doby, kterou se čeká v daném kroku. Tento postup byl zvolen z toho důvodu, aby mohla být průběžně aktualizována zpráva pro uživatele vyjadřující čas, který zbývá do ukončení daného úkolu.
 
\subsubsection{Příjem příkazu od uživatele}
 
Pro komunikaci s uživatelem je využito sériové linky. Ta se využívá jak pro informování uživatele o aktuálním stavu programu tak zároveň k příjmu příkazů od uživatele. Celý algoritmus příjmu příkazu spočívá ve vyčítání znaků zadaných uživatelem znak za znakem až do té chvíle, kdy je stisknut ENTER a nebo je překročena maximální délka příkazu. Poté se buď zadaný příkaz dekóduje a následně provede a nebo je vypsána informace, že příkaz nebyl rozeznán.
 
\subsubsection{Příjem dat z GPS modulu}
 
Posledním vláknem využívaném ve firmwaru vypouštěče je vlákno, které se stará o příjem a dekódování NMEA zprávy posílané po sériové lince z GPS modulu
\cite{GPS_ublox}. Každou vteřinu je vyčítána NMEA zpráva a z ní je vybrána GPRMC zpráva, ze které je následně získána informace o aktuálním čase, datu a poloze stanice. Tato informace slouží jednat pro přesné logování událostí a zároveň v budoucnu pro snadné lokalizování vypouštěcí stanice.\subsection{Uživatelské rozhraní terminálu}
Při spuštění terminálu se po resetu programu procesoru vypíše úvodní zpráva s nápovědou, na které výstupní kontakty procesoru jsou připojeny jednotlivé akční členy. Následně je program v pohotovostním režimu a očekává příkaz. Jednotlivé příkazy jsou:\\
Při spuštění terminálu se po resetu programu procesoru vypíše úvodní zpráva s nápovědou, na které výstupní kontakty procesoru jsou připojeny jednotlivé akční členy. Následně je program v pohotovostním režimu a očekává příkaz. Jednotlivé příkazy jsou:
 
\begin{enumerate}
\item odpal
\item zrus (nebo písmeno "s")
179,11 → 170,12
\item help
\item check
\end{enumerate}
 
Příkaz \textbf{odpal} spustí vypouštěcí sekvenci probuzením daného vlákna pro vypouštění. Příkaz \textbf{zrus} zastaví vypouštěcí sekvenci, pokud byla zahájena a indormuje o tom výpisem o ukončení vypouštění. Zároveň jde vypouštění zrušit okamžitě stisknutím "s" bez nutnosti potvrzovat příkaz enterem. Příkaz \textbf{help} vypíše stejnou úvodní zprávu jako po resetu programu. Poslední příkaz \textbf{check} lze použít pro kontrolu stavu vypouštěče před začátkem vypouštění. Po zadání tohoto příkazu jsou na terminál vypsány informace o aktuálních stavech použitých senzorů. Lze tak například zkontrolovat, že střecha není zajištěna, nebo že je lis již spuštěn.
 
\begin{figure}[hbtp]
\centering
\includegraphics[scale=0.6]{./img/program_flow.png}
\includegraphics[height=200mm]{./img/program_flow.png}
\caption{Funkční diagram firmwaru Automatického vypouštěče}
\label{Diag_firmware}
\end{figure}