\chapter{Test chování vozu na skidpadu}
\label{sec:skid}

\begin{figure}
	\centering
	\includegraphics[width=\linewidth]{obrazky/skid/skidpad-fs}
	\caption{Schéma disciplíny skidpad Formule student}
	\label{obr:skidpad-fs}
\end{figure}

\begin{figure}
	\centering
	\includegraphics[width=\linewidth]{obrazky/skid/skid-reg}
	\caption{Schéma regulátoru nahrazujícího řidiče pro skidpad}
	\label{obr:skid-reg}
\end{figure}

\begin{figure}
	\centering
	\includegraphics[width=\linewidth]{obrazky/skid/skid-traj}
	\caption{Trajektorie vozů na skidpadu}
	\label{obr:skid-traj}
\end{figure}

\begin{figure}
	\centering
	\includegraphics[width=\linewidth]{obrazky/skid/skid}
	\caption{Porovnání rychlostí, natočení volantu, odchylky od trajektorie a úhlu odchýlení od trajektorie}
	\label{obr:skid}
\end{figure}

Jedním z~možných způsobů jak otestovat chování vozu v~zatáčce je tzv.~skidpad\cite{skidpad}.
Skidpad je kruhová trať o~definovaném poloměru, určená pro testování chování vozu.
Test probíhá následovně. Vůz jezdí po kruhové dráze, postupně zrychluje, až se dostane do smyku a vyjede z~tratě.
Výsledkem testu je rychlost, při které dojde ke smyku. Čím je rychlost vyšší, tím je vůz lepší.

Skidpad je také jedna z~disciplín v~soutěži Formule student, ale je mírně modifikován, jak je vidět na obrázku \ref{obr:skidpad-fs}.
Řidič musí nejprve dvakrát objet jeden kruh a poté dvakrát objet kruh druhý a měří se čas průjezdu celou tratí.

Já jsem se zaměřil na původní verzi skidpadu, protože navrhnout systém, který by vůz řídil skrz verzi Formule student, by bylo obtížné.
Aby bylo možné vůz udržet na~této trati, bylo nutné navrhnout regulátor natočení volantu a regulátor plynového pedálu.
Aby bylo možné tyto regulátory navrhnout efektivně, musel jsem převést souřadnice vozu ze souřadnic kartézských na souřadnice polární, s~počátkem ve středu skidpadu.
V~tomto případě mi stačí hodnotit vzdálenost vozu od středu skidpadu a podle ní regulovat vůz.

Při testování se ukázalo, že odchylka od středu tratě je nedostačující.
Pokud se vůz dostane do přetáčivého smyku, může se otočit směrem do středu skidpadu, toto ale regulátor natočení volantu neví, a nechá volant otočen zhruba stejně, jako když je vůz orientován správně. To způsobí, že se vůz začne velmi rychle přibližovat ke středu skidpadu.
Jakmile se vůz dostane do vnitřní poloviny tratě, začne sice regulátor natočení volantu korigovat tento problém, ale protože je tento regulátor optimalizován na opatrnou korekci trajektorie, je poměrně pomalý, tak se mu to nepovede.
Navíc v~tomto případě vyhodnotí regulátor plynového pedálu, že je ve vnitřní polovině kruhu, tudíž může přidat plyn.
Protože je ale vůz orientován špatným směrem, ještě více se začne od žádané trajektorie oddalovat a vůz už se na dráhu nevrátí.

Proto jsem navrhl ještě jednu odchylku, a tou je odchylka od ideální orientace vozu.
Z~polohy vozu na trati se vypočítá nejen vzdálenost vozu od středu, ale i úhel tohoto vektoru a vůz by měl být orientován kolmo na tento vektor.
Odchylku od této ideální orientace používám v~obou regulátorech.
V~případě regulátoru natočení volantu tento odchylkový úhel přímo sčítám s~akčním zásahem zbytku regulátoru, takže kola jsou vždy natočena nezávisle na orientaci vozu.
V~případě regulátoru plynového pedálu použiji záporně vzatou absolutní hodnotu této odchylky v~druhé proporcionální větvi tohoto regulátoru.
Smyslem této vazby je, aby regulátor omezil akční zásah, pokud je tato odchylka příliš velká, bez ohledu na znaménko.
Schéma kompletního regulátoru je vidět na obrázku \ref{obr:skid-reg}.

Na obrázku \ref{obr:skid-traj} je vidět porovnání trajektorií vozů na skidpadu.
Graf používá stejné znázornění jako bylo použito v~předchozím testování systému \acs{esp} a bylo popsáno v~kapitole \ref{sec:esp-test}.
Porovnání rychlostí, natočení volantu, odchylky od trajektorie a úhlu odchýlení od trajektorie je znázorněno na obrázku \ref{obr:skid}.
Očekával jsem, že se jednotlivé vozy ustálí na jiných rychlostech.
Místo toho se všechny vozy ustálí na zhruba stejných rychlostech, nebo se neustálí.
Důvod proč mají vozy takový problém se ustálit je nedokonalost regulátorů nahrazujících řidiče.
Další rozvoj tohoto testu by vyžadoval mnohem více času, ve kterém bych zdokonaloval právě tento regulátor a na výsledné chování vozu by neměl příliš vliv.
Navíc můžu tento čas věnovat například skutečnému testování vozu.
Z~těchto důvodů jsem tento test nemohl použít pro hodnocení efektivity navržených systémů.

\chapter{Test chování vozu na slalomu}
\label{sec:slalom}

\begin{figure}
	\centering
	\includegraphics[width=\linewidth]{obrazky/slalom/slalom}
	\caption{Porovnání rychlostí jednotlivých vozů ve slalomu}
	\label{obr:slalom}
\end{figure}

\begin{figure}
	\centering
	\includegraphics[angle=90,height=\textheight]{obrazky/slalom/slalom-traj}
	\caption{Porovnání trajektorií vozů ve slalomu}
	\label{obr:slalom-traj}
\end{figure}

Slalom je jednoduchý způsob jak otestovat chování vozu, navíc bývá často součástí okruhu Formule student.
Pro řízení vozu na slalomu jsem využil dva bloky z~mnou používaného toolboxu, podélný\cite{matlab-longitudinal-driver} a příčný\cite{matlab-lateral-driver} řidič.
Podélný řidič je blok, který se snaží udržet nastavenou rychlost regulací plynového pedálu a příčný řidič je blok, který se snaží držet stopu pomocí natáčení volantu.
V~mém případě jsem nastavil podélného řidiče na konstantní hodnotu, a do příčného řidiče jsem pustil obdélníkový signál, který určuje stopu, ve které se má vůz pohybovat.
Tento obdélníkový signál byl odvozen od uražené vzdálenosti a ne od času simulace, takže vozy by měly opisovat přibližně stejnou trajektorii.

Ukázalo se, že příčný řidič má jeden nedostatek, je pravděpodobně určen pro případy jako přejíždění mezi jízdními pruhy, protože dovolí jen určité natočení vozu, takže pokud je amplituda slalomu příliš vysoká, nezvládne tuto trajektorii kopírovat.

Nakonec jsem zvolil slalom s~periodou $ 30 \unit{m} $ a amplitudou $ 5 \unit{m} $.
Kratší perioda nebo vyšší amplituda způsobovaly problémy.
Jak je ale vidět na obrázku \ref{obr:slalom-traj}, výsledné trajektorie vozů jsou téměř stejné, i když se zdá, že vůz se systémem \acs{esp} verze 3 zvládá slalom nejlépe, tak podle obrázku \ref{obr:slalom} je vidět, že jede zároveň nejpomaleji.
Z~tohoto důvodu jsem tento test ve svém hodnocení nepoužil.


\chapter{Obsah přiloženého CD}

\dirtree{%
	.1 ..
	.2 chassis-simulations\DTcomment{Simulace}.
	.3 chassis.prj\DTcomment{Projektový soubor Simulink R2019b}.
	.3 \dots .
	.2 esp\DTcomment{Software řídicí jednotky}.
	.3 esp-fw.
	.4 esp-fw.ioc\DTcomment{Projektový soubor CLion}.
	.4 \dots .
	.3 \dots .
	.2 diplomka-text\DTcomment{Zdrojový text práce}.
	.3 sablona-prace.tex\DTcomment{Výchozí soubor}.
	.3 \dots .
	.2 refman.pdf\DTcomment{Dokumentace softwaru řídicí jednotky}.
}\hfill
