Feedback

Faculté des Sciences appliquées
Faculté des Sciences appliquées
MASTER THESIS
VIEW 120 | DOWNLOAD 65

Development of the software architecture of a mobile robot

Download
Bounar, Nadir ULiège
Promotor(s) : Boigelot, Bernard ULiège
Date of defense : 24-Jun-2024/25-Jun-2024 • Permalink : http://hdl.handle.net/2268.2/20386
Details
Title : Development of the software architecture of a mobile robot
Translated title : [fr] Développement de l'architecture logicielle d'un robot mobile
Author : Bounar, Nadir ULiège
Date of defense  : 24-Jun-2024/25-Jun-2024
Advisor(s) : Boigelot, Bernard ULiège
Committee's member(s) : Mathy, Laurent ULiège
Sacré, Pierre ULiège
Language : English
Number of pages : 117
Keywords : [fr] Robocup
[fr] Computer Science
[fr] Kernel
[fr] C
[fr] Software Architecture
[fr] Humanoid Robot
Discipline(s) : Engineering, computing & technology > Computer science
Target public : Researchers
Professionals of domain
Student
General public
Complementary URL : https://gitlab.uliege.be/Macgyver/test.git
Institution(s) : Université de Liège, Liège, Belgique
Degree: Master en sciences informatiques, à finalité spécialisée en "management"
Faculty: Master thesis of the Faculté des Sciences appliquées

Abstract

[en] This master's thesis focuses on building a software infrastructure for a unique form of humanoid robot, developed within the RoboCup competition framework. The primary aim was to integrate a real-time operating system, such as Preempt-RT, Xenomai, or RTAI, to minimize latency and optimize system performance. An appropriate Linux distribution was also chosen as the software development base. Following a thorough evaluation based on various criteria, including latency, Preempt-RT was selected as the real-time operating system, accompanied by the Fedora distribution, chosen for its minimal size.

The second part of this thesis concentrates on establishing efficient communication between electronic and software components. The chosen communication mode is USB (Universal Serial Bus), and results demonstrate satisfactory data transfer between these components.

The third part involves implementing an event logging system, based on four selectable log levels by the user, enabling quick issue tracking and resolution during robot program execution. Recorded logs are detailed, including time down to the nanosecond, message level, content, as well as the relevant line and file. Users can select the base level, filtering logged messages into a file located in a specific directory.

Furthermore, robust interfaces for task creation and inter-task communication have been designed to meet future needs. The primary goal was to optimize the efficiency and responsiveness of information exchange, thus contributing to the overall robot performance. The task-related interface facilitates the creation of tasks, assigning priorities and periods as needed, and, if required, assigning them to a designated processor core. The second interface enables tasks to communicate with each other: if a task requires another task's content, it can request and receive it once available. During this content wait, the task is paused to conserve processor resources.

To conclude, this thesis has established a robust software infrastructure for a humanoid robot intended for the RoboCup competition. Through the selection of Preempt-RT and Fedora, system performance has been optimized. The use of USB for communication and the implementation of a logging system have also been validated. The interfaces created for task management and communication meet future needs for efficiency and responsiveness.

[fr] Cette thèse de master se concentre sur la construction d'une infrastructure logicielle pour une forme original de robot humanoïde, développée dans le cadre de la compétition RoboCup. L'objectif principal était d'intégrer un système d'exploitation temps réel, tel que Preempt-RT, Xenomai ou RTAI, afin de minimiser la latence et d'optimiser les performances du système. Une distribution Linux appropriée a également été choisie comme base de développement logiciel. Suite à une évaluation approfondie basée sur divers critères, dont la latence, Preempt-RT a été sélectionné comme système d'exploitation temps réel, accompagné de la distribution Fedora, choisie pour sa taille minimale.

La deuxième partie de cette thèse se concentre sur l'établissement d'une communication efficace entre les composants électroniques et logiciels. Le mode de communication choisi est l'USB (Universal Serial Bus), et les résultats montrent un transfert de données satisfaisant entre ces composants.

La troisième partie implique la mise en place d'un système de journalisation d'événe-ments, basé sur quatre niveaux de journal sélectionnables par l'utilisateur, permettant un suivi et une résolution rapides des problèmes lors de l'exécution du programme du robot. Les journaux enregistrés sont détaillés, incluant l'heure jusqu'à la nanoseconde, le niveau du message, son contenu, ainsi que la ligne et le fichier pertinents. Les utilisateurs peuvent sélectionner le niveau de base, filtrant ainsi les messages enregistrés dans un fichier situé dans un répertoire spécifique.

De plus, des interfaces robustes ont été conçues pour la création et la communication des tâches, afin de répondre aux besoins futurs. Elles visent principalement à optimiser l'efficacité et la réactivité des échanges d'informations, contribuant ainsi à la performance globale du robot. L'interface de gestion des tâches facilite leur création, permettant d'attribuer des priorités et des périodes si nécessaire, ainsi que de les affecter à des cœurs de processeur spécifiques. La seconde interface permet aux tâches d'interagir entre elles : lorsqu'une tâche requiert le contenu d'une autre, elle peut en faire la demande et le recevoir dès qu'il est disponible. Durant cette attente, la tâche est mise en pause pour économiser les ressources du processeur.

En conclusion, cette thèse a développé une infrastructure logicielle solide pour un robot humanoïde compétitif. La sélection de Preempt-RT et de Fedora a amélioré les performances du système, tandis que l'utilisation de l'USB et la mise en place d'un système de journalisation ont été confirmées. Les interfaces conçues pour la gestion des tâches et la communication anticipent efficacement les futurs besoins en termes d'efficacité et de réactivité.


File(s)

Document(s)

File
Access Development of the software architecture for a mobile robot.pdf
Description:
Size: 2.19 MB
Format: Adobe PDF

Author

  • Bounar, Nadir ULiège Université de Liège > Master sc. inform. fin. spéc. manag.

Promotor(s)

Committee's member(s)

  • Mathy, Laurent ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Systèmes informatiques répartis et sécurité
    ORBi View his publications on ORBi
  • Sacré, Pierre ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Robotique intelligente
    ORBi View his publications on ORBi
  • Total number of views 120
  • Total number of downloads 65










All documents available on MatheO are protected by copyright and subject to the usual rules for fair use.
The University of Liège does not guarantee the scientific quality of these students' works or the accuracy of all the information they contain.