In den letzten Jahren ist die Bedeutung von mobilen Robotern schnell gewachsen. Mit dieser neuen
Art von Roboter entstehen neue Anforderungen bei der Entwicklung. Ein Tool, das sich in diesem
Bereich für die Softwareentwicklung durchgesetzt hat, ist das Robot Operating System (ROS).
Anfänglich von und für Hochschulen entwickelt, kommt ROS nach und nach auch mehr in
industriellen Anwendungen zum Einsatz. Diese bringen jedoch auch neue Herausforderungen mit
sich. Um die damit einhergehenden Ansprüche zu erfüllen ist die erste Version von ROS, ROS 1,
komplett überarbeitet worden. Daraus entstanden ist ROS 2. Ziel dieser neuen Version ist es,
zuverlässige und deterministische Applikationen entwickeln zu können, die beispielsweise auch in
sicherheitskritischen Anwendungen zum Einsatz kommen können.
Ziel dieser Master-Thesis ist es, sowohl die Leistungsfähigkeit als auch die Limitationen von ROS 2
für Echtzeitanwendungen mittels Versuche an zwei verschiedenen Versuchsaufbauten aufzuzeigen
und einzuordnen. Hierzu wird auch eine Speicher Programmierbare Steuerung (SPS), ein industriell
weit verbreitetes System, beigezogen.
Basierend auf den Resultaten der Experimente kann aufgezeigt werden, dass das Verhalten bezüglich
zeitlicher Vorgaben stark durch den/die Entwickler:in beeinflusst wird. Dies beginnt mit dem
Aufsetzen des Betriebssystems und geht weiter über diverse Einstellmöglichkeiten im Quellcode der
zu entwickelnden Anwendung. Ebenfalls muss der Einbindung von externer Hardware (z.B. Sensoren)
grosse Beachtung beigemessen werden.
Zum jetzigen Entwicklungsstand von ROS 2 eignet sich das Tool für Anwendungen mit weichen
Echtzeitanforderungen. Dies sind Anwendungen, bei der eine gestellte zeitliche Anforderung an das
System bis zu einem gewissen Grad resp. zu einer gewissen Anzahl überschritten werden darf. Für
Anwendungen mit harten Echtzeitanforderungen, bei denen die zeitlich gestellten Anforderungen
jeder Zeit eingehalten werden müssen, sind andere Systeme wie beispielsweise eine SPS zu
bevorzugen. Dies kann sich jedoch mit der laufenden Weiterentwicklung von ROS 2 in der Zukunft
ändern.
In recent years, the importance of mobile robots has grown rapidly. With this new type of robot, new
development requirements arise. One tool that has gained acceptance in software development is the
Robot Operating System (ROS). Initially developed by and for universities, ROS is gradually being
used increasingly in industrial applications. However, this also brings new challenges. The first
version of ROS, ROS 1, was completely revised in order to meet the demands. The goal of this new
version is to be able to develop reliable and deterministic applications that can also be used in
safety-critical applications, for example.
This master thesis aims to demonstrate and classify the performance and the limitations of ROS 2 for
real-time applications through tests on two different test setups. For this purpose, a programmable
logic controller (PLC), a widely used industrial system, is used for comparison.
Based on the results of the experiments, it can be shown that the developer strongly influences the
behaviour concerning time specifications. This starts with setting up the operating system and
continues with various setting options in the application's source code to be developed. Likewise,
integrating external hardware (e.g. sensors) must be given great attention.
At the current stage of the development of ROS 2, the tool is suitable for applications with soft realtime
constraints. These are applications where a set time constraint on the system may be exceeded
up to a certain degree or a certain number of times. For applications with hard real-time constraints,
where the time requirements must always be met, other systems such as PLCs are preferable.
However, this may change in the future with the ongoing development of ROS 2.
Die vorliegende Arbeit befasst sich mit der Konzeption, Umsetzung und Evaluation einer Follow-me-
Implementation f¨ur einen mobilen Roboter im Healthcare-Sektor.
Die entwickelte L¨osung basiert auf einer modularen ROS2-Architektur und kombiniert Objektdetektion
mit YOLOX, Multi-Object-Tracking mit ByteTrack sowie eine Leader-Identifikation mittels MediaPipe.
Zus¨atzlich wird eine Re-Identification des Leaders eingesetzt, die auf einem Appearance-Vektor
basiert. Dieser Vektor wird aus den K¨orperproportionen der Zielperson abgeleitet. Als Grundlage
wird eine Tiefenbildkamera verwendet.
Die Follow-me-Funktionalit¨at gliedert sich in einen Vision- und einen Movement-Aspekt. Die Vision-
Pipeline erkennt die Zielperson, initialisiert diese als Leader und erstellt einen referenzierenden
Appearance-Vektor. Die Position des Leaders wird anschliessend kontinuierlich getrackt, w¨ahrend der
Roboter den ROS2 Nav2-Stack verwendet, um dem Leader zu folgen. Das Tracking zeigt sich robust
gegen¨uber Occlusion sowie kurzzeitigem Trackingverlust.
Die Umsetzung erfolgte ohne GPU, was gezielte Optimierungen hinsichtlich Modellwahl und Framerate
erforderte. Die entwickelte Pipeline wurde anhand mehrerer Testf¨alle in einer Laborumgebung
evaluiert. Die Ergebnisse zeigen, dass eine zuverl¨assige Personenerkennung, Leader-Identifikation
und Re-Identification m¨oglich ist. Gleichzeitig wurde deutlich, dass klassische zielpunktbasierte
Navigationsans¨atze nur eingeschr¨ankt f¨ur dynamische Follow-me-Szenarien geeignet sind. Die Arbeit
leitet daraus zentrale Herausforderungen ab und zeigt konkrete Optimierungsans¨atze f¨ur zuk¨unftige
Weiterentwicklungen auf.
Schlüsselwörter: Mobile Robotik, ROS2, Multi Object Tracking, Follow-me
This thesis addresses the conception, implementation, and evaluation of a follow-me system for
a mobile robot in the healthcare sector.
The developed solution is based on a modular ROS 2 architecture and combines object detection
using YOLOX, multi-object tracking with ByteTrack, and leader identification using MediaPipe.
In addition, a leader re-identification mechanism is employed based on an appearance vector. This
vector is derived from the body proportions of the target person. A depth camera serves as the
primary sensing modality.
The follow-me functionality is divided into a vision and a movement component. The vision pipeline
detects the target person, initializes the leader, and generates a reference appearance vector. The
leader’s position is then continuously tracked, while the robot follows the leader using the ROS 2
Nav2 navigation stack. The tracking approach proves robust against occlusions as well as short-term
tracking losses.
The implementation was carried out without GPU-acceleration, which required targeted optimizations
regarding model selection and frame rate. The developed pipeline was evaluated using multiple test
cases in a laboratory environment resembling a hospital setting. The results demonstrate that reliable
person detection, leader identification, and re-identification are feasible. At the same time, it became
evident that classical goal-based navigation approaches are only partially suitable for dynamic
follow-me scenarios. Based on these findings, key challenges are identified and concrete optimization
strategies for future work are proposed.
Keywords: Mobile robotics, ROS 2, multi-object tracking, follow-me
Im Rahmen dieser Bachelorarbeit wurde ein „Follow-Me“-System für den mobilen Roboter «Health
Care Robot» entwickelt, der das Pflegepersonal in Spitälern durch automatisierte
Materialtransporte entlasten soll. Der Roboter besitzt eine Bewegungssteuerung und
Hinderniserkennung. Ziel war es, ihm die Fähigkeit zu verleihen, einer Person autonom zu folgen.
Für die Aufgabenstellung wurde Wissen im Bereich der Bilderkennung erarbeitet. Zur Umsetzung
kam eine Intel RealSense D435if Stereo-Kamera zum Einsatz. Die Personenerkennung erfolgte
mithilfe von YOLO11-Modellen. Die Softwarearchitektur basierte auf ROS 2 Foxy. Zielpositionen
wurden als ROS-Nachricht publiziert und vom Roboter zur Navigation verwendet.
Tests zeigten, dass Personen zuverlässig erkannt und in Echtzeit verfolgt werden. Daraus
resultierende Steuerimpulse ermöglichen die Anpassung von Position und Orientierung des
Roboters. Zukünftige Erweiterung könnten eine Gestensteuerung oder ein fortschrittliches
Personen-Tracking beinhalten.
As part of this bachelor's thesis, a "Follow-Me" system was developed for the mobile robot
"Health Care Robot", which is intended to support hospital staff by automating material
transport. The robot already features a functioning motion control and obstacle detection
system. The goal was to additionally enable it to autonomously follow a specific person.
To address this task, knowledge in the field of image recognition was acquired. An Intel
RealSense D435if stereo camera was used for implementation. Person detection was carried out
using YOLO11 models, integrated via the Ultralytics library. The software architecture was based
on ROS 2 Foxy. Target positions were published as ROS messages and used by the robot for
navigation.
Tests showed that people can be reliably detected and tracked in real time. The resulting control
impulses allow the robot to adapt its position and orientation. Future extensions could include
gesture control or advanced person tracking.