In diesem Kapitel wird zunächst die Möglichkeit der Integration des Testadapters in ein System, welches die actionlib verwendet, beispielhaft überprüft.
In diesem Kapitel wird zunächst die Möglichkeit der Integration des Testadapters in ein System, welches die actionlib verwendet, beispielhaft überprüft.
Die actionlib \cite{Actionlib} baut ein Protokoll auf den Nachrichten von ROS auf und ermöglicht Kommunikation von Nodes für das Ausführen einer bestimmten Aufgabe mithilfe einer Client-Server-Architektur. Diese unterscheidet sich von den \textit{ROS Services}\footnote{\url{http://wiki.ros.org/Services}} insbesondere durch die ermöglichte Asynchronität, welche für konstante Rückmeldung des Servers sowie weitere Anfragen des Clients (wie etwa nach der Präemptierung einer Aktion) genutzt wird.
Die actionlib \cite{Actionlib} baut ein Protokoll auf den Nachrichten von ROS auf und ermöglicht Kommunikation von Nodes für das Ausführen einer bestimmten Aufgabe mithilfe einer Client-Server-Architektur. Diese unterscheidet sich von den \textit{ROS Services}\footnote{\url{http://wiki.ros.org/Services}} insbesondere durch die ermöglichte Asynchronität, welche für konstante Rückmeldung des Servers sowie weitere Anfragen des Clients (wie etwa nach der Präemptierung einer Aktion) genutzt wird.
Dazu wurde von der Bibliothek die Implementierung eines endlichen Automaten realisiert, was sich neben den verwendeten ROS-Nachrichten für das Testen mittels TRON aufgrund der einfachen Modellierung in Uppaal anbietet. \\
Dazu wurde von der Bibliothek die Implementierung eines endlichen Automaten realisiert, was sich neben den verwendeten ROS-Nachrichten für das Testen mittels TRON aufgrund der einfachen Modellierung in Uppaal anbietet. \\
Wenn die Integration möglich ist, wird folgend das am Lehrstuhl verwendete Cobot-Projekt\footnote{\url{https://git-st.inf.tu-dresden.de/ceti/ros/chemistry-lab-demo/}} (verwendete Version \href{https://git-st.inf.tu-dresden.de/ceti/ros-internal/chemistry-lab-demo/cobot_1/-/tree/0ab6cd6d48613f4cb913e433832ccd741682bcde}{0ab6cd6d}) benutzt, um den Testvorgang mittels des vorgestellten Konzeptes zu evaluieren. Der Roboter (Franka Panda\footnote{\url{https://www.franka.de/robot-system}}) soll eine Flasche aufheben, um damit ein Glas zu befüllen. Folglich wird die Flasche wieder an ihre Anfangsposition gebracht und das nun befüllte Glas auf die andere Seite des Roboters transportiert.
Wenn die Integration möglich ist, wird folgend das am Lehrstuhl verwendete Cobot-Projekt\footnote{\url{https://git-st.inf.tu-dresden.de/ceti/ros/chemistry-lab-demo/}} (verwendete Version \href{https://git-st.inf.tu-dresden.de/ceti/ros-internal/chemistry-lab-demo/cobot_1/-/tree/0ab6cd6d48613f4cb913e433832ccd741682bcde}{0ab6cd6d}) benutzt, um den Testvorgang mittels des vorgestellten Konzeptes zu evaluieren. Der Roboter (Franka Panda\footnote{\url{https://www.franka.de/robot-system}}) soll eine Flasche aufheben, um damit ein Glas zu befüllen. Folglich wird die Flasche wieder an ihre Anfangsposition gebracht und das nun befüllte Glas auf die andere Seite des Roboters transportiert. Der Ablauf ist in \cref{fallbeispiel:cobot} dargestellt.
\begin{figure}[H]
\centering
\includegraphics[scale=.4]{./cobot_ablauf.png}
\caption{Ablauf der Aktionen des Cobots, aus \cite{Molkenthin2021}}
\label{fallbeispiel:cobot}
\end{figure}
\section{Integration mit actionlib}\label{actionlib:integration}
\section{Integration mit actionlib}\label{actionlib:integration}
Hier wird überprüft, ob der Testadapter bei Systemen, welche auf der actioblib basieren, verwendbar ist.
Hier wird überprüft, ob der Testadapter bei Systemen, welche auf der actioblib basieren, verwendbar ist.