Changes on tower
This commit is contained in:
@@ -48,7 +48,7 @@ Hierbei ist zu beachten, dass der SSH-Server im Container auf Port 2222 antworte
|
||||
|
||||
Nach der Verbindung wird automatisch die ROS2-Umgebung eingerichtet.
|
||||
Diese kann ohne weitere Befehle nach Verbindungsaufbau genutzt werden.
|
||||
Um die erstellten Pakete zu kompillieren, wurde das Skript \code{build.sh} im \code{workspace}-Verzeichnis erstellt.
|
||||
Um die erstellten Pakete zu kompilieren, wurde das Skript \code{build.sh} im \code{workspace}-Verzeichnis erstellt.
|
||||
|
||||
\begin{minted}[breaklines,frame=single]{bash}
|
||||
#!/bin/bash
|
||||
@@ -71,7 +71,7 @@ Dadurch befindet sich der Fehlers immer im letzten Paket der Ausgabe, da alle an
|
||||
|
||||
\section{Entwicklungsumgebung}
|
||||
|
||||
Ein einfacher Texteditor ist für das Schreiben von ROS-Packages ausreichend und bietet bei der Arbeit mit Containern sogar einen großen Vorteil.
|
||||
Ein Texteditor ist für das Schreiben von ROS-Packages ausreichend und bietet bei der Arbeit mit Containern sogar einen großen Vorteil.
|
||||
Das Editieren von Dateien ist mit einem Texteditor auch von außerhalb des Containers möglich.
|
||||
Jedoch besitzt ein Texteditor nur wenige Funktionen einer vollständigen Entwicklungsumgebung, die den Prozess der Softwareentwicklung beschleunigen.
|
||||
Um diese Funktionen bieten zu können, analysieren Entwicklungsumgebungen den geschriebenen Code.
|
||||
@@ -534,10 +534,12 @@ Der ActorServer ist die Brücke zwischen ROS und dem ActorPlugin.
|
||||
Er ist als das Programm \code{ros_actor_action_server} im gleichnamigen Paket enthalten.
|
||||
Dieser weitere Dienst bindet das ActorPlugin an ROS an.
|
||||
|
||||
Dafür werden zwei ROS-ActionServer gestartet, die jeweils Bewegungen oder Animationen des simulierten Menschen auslösen können.
|
||||
Beide ActionServer prüfen bei dem Empfang eines neuen Ziels zuerst, ob bereits eine andere Aktion ausgeführt wird.
|
||||
Wird bereits eine andere Aktion ausgeführt, kommt es zur Ablehnung weiterer Anfragen.
|
||||
Im anderen Fall wird die Aufgabe akzeptiert und in das MessageQueue-Format übersetzt und an das ActorPlugin gesandt.
|
||||
Nach dem Start des ActorServers werden zwei ROS-ActionServer gestartet.
|
||||
Diese können jeweils zum Abspielen von Animationen oder zum Starten von Bewegungen des simulierten Menschen genutzt werden.
|
||||
Wenn ein Client eine dieser Aktionen startet, überträgt er die Zieldaten an den entsprechenden ActionServer.
|
||||
Beide ActionServer prüfen bei dem Empfang eines neuen Ziels als erstes, ob bereits eine andere Aktion ausgeführt wird.
|
||||
Wird bereits eine andere Aktion ausgeführt, kommt es zur Ablehnung der aktuellen Anfrage.
|
||||
Im anderen Fall wird die Anfrage akzeptiert und in das MessageQueue-Format übersetzt und an das ActorPlugin gesandt.
|
||||
|
||||
Um das Starten mehrerer gleichzeitiger Aktionen zu unterbinden, muss der Empfang einer neuen Anfrage bestätigt werden, bevor weitere Befehle über den ROS-ActionServer entgegen genommen werden können.
|
||||
Hierzu wird ein Mutex verwendet, der die Auswertung neuer Nachrichten verhindert, so lange der aktuelle Befehl noch nicht durch das Plugin bestätigt wurde.
|
||||
|
||||
Reference in New Issue
Block a user