\section[Amb. de simulação]{Ambiente de simulação}
\begin{frame}{Ambiente de simulação}
	\begin{multicols}{2}
		\tableofcontents[currentsection, hideothersubsections]
	\end{multicols}
	\note[item]{Conteúdo do ambiente de simulação.}
\end{frame}

%--------------------------------------------%
% Definição dos elementos                    %
%--------------------------------------------%
\subsection{Definição dos elementos}
\begin{frame}{Definição do modelo}
	\begin{minipage}[t]{0.76\linewidth}
		\begin{flushleft}
			\begin{itemize}
				\item Adaptação do robô com cinemática de \textit{Ackermann}, \textit{CIR-KIT-Unit03}, ao modelo do ATLASCAR2.
				\item A velocidade e direção dadas pelo algoritmo são publicadas no tópico \textit{cmd\_vel}.
				\item A velocidade linear e direção são transformadas em velocidade de rotação e ângulos de direção.
			\end{itemize}
			\begin{figure}[!h]
				\centering
				\includegraphics[width=0.7\linewidth]{figuras/modelo1.png}
			\end{figure}
		\end{flushleft}
	\end{minipage}
	\begin{minipage}[t]{0.22\linewidth}
		\begin{flushright}
			\begin{figure}[!h]
				\centering
				\includegraphics[width=1.2\linewidth]{figuras/modelo2.png}
			\end{figure}
		\end{flushright}
	\end{minipage}
	\note[item]{Devido à inexistência de um controlador interno do Gazebo para modelos com direção do tipo Ackermann foi utilizado um robô da ROS Wiki, o cir-kit\_unit03. Foi necessária a adaptação das dimensões do robô ao ATLASCAR2 bem como as propriedades visuais.}
	\note[item]{A velocidade e direção determinadas pelo algoritmo de planeamento são publicadas no tópico cmd\_vel do tipo geometry\_msgs::Twist.}
	\note[item]{Estes valores de velocidade e direção são convertidos em valores de rotação e ângulo de direção de um veículo simples de 2 rodas. Depois o modelo passa para um modelo mais complexo com velocidade de rotação distinta nas rodas traseiras e direção diferente nas rodas dianteiras.}
\end{frame}

%--------------------------------------------%
\begin{frame}{Definição de sensores}
	\begin{itemize}
		\item Para a simulação dos sensores LIDAR foi utilizado o \textit{plugin} \textit{gazebo\_ros\_head\_hokuyo\_controller}.
		\item Foi utilizado um sensor na posição central com grande abertura de feixe e características semelhantes aos LIDARs 2D. 
	\end{itemize}
	\begin{figure}[!h]
		\centering
		\includegraphics[width=0.7\textwidth]{figuras/sensor.png}
	\end{figure}
	\note[item]{O Gazebo permite a incorporação de váios ttipos de sensores. Neste caso foi escolhido um sensor laser 2D semelhante aos instalados.}
	\note[item]{Para simular o sensor foi ulilizado o plugin  gazebo\_ros\_head\_hokuyo\_controller que permite a configuração de parametros como o alcance, a abertura do feixe, a resolução, introdução de ruído, entre outros.}
	\note[item]{Como é possível definir uma abertura mais ampla e identificar quais os objetos com propriedades de colisão foi colocado um só sensor ao centro para evitar a fusão de dados.}
	\note[item]{O scan laser foi depois convertido para uma point cloud para se realizar a integração direta com o package de planeamento}
\end{frame}

%--------------------------------------------%
% Simulações realizadas                      %
%--------------------------------------------%
\subsection{Simulações realizadas}
\begin{frame}{Simulações}
	\begin{itemize}
		\item O ambiente de simulação utilizado assenta numa pista de Fórmula 1, cujos limites são definidos por muros verticais.
		\item As simulações realizadas podem ser enquadradas em dois tipos:
		\begin{itemize}
			\item Simulações simples;
			\item Simulações considerando a linha central.
		\end{itemize}
	\end{itemize}
	\begin{figure}[!h]
		\centering
		\includegraphics[width=0.70\textwidth]{figuras/resultadofinal1.png}
	\end{figure}
	\note[item]{Para a realização das simulações teve que ser escolhido um ambiente fechado, semelhante a uma estrada mas limitado por barreiras físicas para deteção através dos LIDARs.}
	\note[item]{Foi então escolhido o modelo de um circuíto de fórmula 1 que fosse traçado em estrada, neste caso o circuíto do Mónaco.}
	\note[item]{As simulações podem ser divídidas em dois grandes grupos: as que consideram a linha central e as que não consideram a linha central.}
	\note[item]{Nas simulações sem considerar a linha o guiamento é feito apenas através dos muros laterais detetados pelos dados laser.}
	\note[item]{Quando se adiciona a informação das linhas o planemanto também considera a linha central da pista como uma nuvem de pontos que é adicionada de forma distinta ao algoritmo.}
\end{frame}

%--------------------------------------------%
% Parâmetro de avaliação                     %
%--------------------------------------------%
\subsection{Parâmetro de avaliação}
\begin{frame}{Avaliação do algoritmo}
	\begin{itemize}
		\item A avaliação do planeamento é realizada através da medição da distância mínima a que o modelo se encontra dos obstáculos.
		\item Esta informação é publicada no tópico \textit{min\_dist\_to\_obstacles} para poder ser analisada e comparada.
	\end{itemize}
	\vspace{2.0mm}
	\begin{minipage}[t]{0.47\linewidth}
		\begin{flushleft}
			\begin{figure}[!h]
				\centering
				\includegraphics[width=1.0\linewidth]{figuras/eval2.png}
			\end{figure}
		\end{flushleft}
	\end{minipage}
	\begin{minipage}[t]{0.48\linewidth}
		\begin{flushright}
			\vspace{5.0mm}
			\begin{figure}[!h]
				\centering
				\includegraphics[width=1.0\linewidth]{figuras/eval1.png}
			\end{figure}
		\end{flushright}
	\end{minipage}
	\note[item]{Para a realização de simulações comparativas é necessário avaliar o planeamento, mas como as trajetórias escolhidas não são executadas na totalidade é difícil avaliar a qualidade do planemaneto.}
	\note[item]{Como priorização da segurança, a forma de avaliação encontrada calcula a distância da posição atual do modelo ao obstáculo mais próximo.}
	\note[item]{Esta distância é calculada de forma idêntica à DLO e é publicada no tópico min\_dist\_to\_obstacles para poder ser armazenada em bags e analisada posteriormente.}
\end{frame}
