Projects / emss / Brochure and Poster
From emss Framework - iRobot Create C++ Framework
You are here: Projects / emss / Brochure and Poster
[edit] Brochure
Topic: The aim of the emss project is to tackle the problems of a self-sustainable, environment mapping robot in a bottom up approach. The major challenges imposed by such a mobile robot include the assembly of hardware, and more importantly the necessary software algorithms for localization, navigation, and discovery. Using ready-made hardware, much of the time-consuming electrical engineering problems have been avoided, allowing a strong focus on software.
Scope: Building upon previous work achieved in our Semester Project, the goal of this Bachelor Thesis is to create a basic environment map of obstacles and floor plan to the most accurate degree possible with the given hardware and data-sources while safely navigating and exploring the area. In addition, third-party applications must be able to connect to the emss framework and make use of the positioning data for their own purposes.
Results: The emss framework, consisting of a set of “hot-swappable” modules, provides an extensible design, which allows a wide array of functionality and supports different strategies for the same problem. Safe navigation has been achieved by intelligently avoiding drops, obstacles, and walls. Furthermore, small areas can be autonomously navigated and mapped using different algorithms. Collaboration with third-party software has been realized with a Wireless Positioning System where necessary signal reference points are automatically collected. Other routine tasks, such as docking the robot on its charging station, have been implemented.
More information, source code, downloads, and videos can be found at: http://emssframework.sourceforge.net
[edit] Poster
The aim of the emss project is to tackle the problems of a self-sustainable, environment mapping robot in a bottom up approach. The major challenges imposed by such a mobile robot include the assembly of hardware, and more importantly the necessary software algorithms for localization, navigation, and discovery.
Using ready-made hardware, much of the time-consuming electrical engineering problems have been avoided, allowing a strong focus on software. However, many hardware modifications have been undertaken to better suit the needs of the project.
Building upon previous work achieved in our Semester Project, the goal of this Bachelor Thesis is to create a basic environment map of obstacles and floor plan to the most accurate degree possible with the given hardware and data-sources, all while safely navigating and exploring the area. In addition, third-party applications, such as the Wireless Positioning System from the HSR Institute of Software, must be able to connect to the emss framework and make use of the positioning data for their own purposes.
The emss framework, consisting of a set of “hot-swappable” modules written in C++, provides an extensible design, which allows a wide array of functionality and supports different strategies for the same problem. The framework features a full blown multi-threaded software stack which allows the autonomous controlling and interfacing of the robot. Important modules include the Controller, Navigation, Tracker and Maps, Task Manager, Watchdog, and Remote Interface which all work together to accomplish the given task. The Hardware Abstraction Layer allows for the complete emulation of the underlying hardware, achieved largely by reverse engineering the behavior of the proprietary hardware.
Safe navigation has been achieved by intelligently avoiding drops, obstacles, and walls. Furthermore, small areas can be autonomously navigated and mapped using different space-filling algorithms and map structures. Collaboration with third-party software has been realized with the Wireless Positioning System PointZero by automatically collecting necessary signal reference points. Other routine tasks, such as docking the robot on its docking station, have been implemented. Finally, a rich graphical user interface is provided by the framework, allowing user interaction with all the different modules within.
The emss code base is open source and provided under the GPLv3 license. We are very proud to offer the robotics community a complete framework written in C++ which cross compiles on Linux, OS X, and Windows.
More information, source code, downloads, and videos can be found at: http://emssframework.sourceforge.net.
Special thanks to Prof. Stefan Keller and the Institute for Software HSR for their support in the project. We also thank Dr. Joachim Wirth for his continued support.
[edit] Abstract
The aim of the emss project is to tackle the problems of a self-sustainable, environment mapping robot in a bottom up approach. The major challenges imposed by such a mobile robot include the assembly of hardware, and more importantly the necessary software algorithms for localization, navigation, and discovery. Using ready-made hardware, much of the time-consuming electrical engineering problems have been avoided, allowing a strong focus on software. However, many hardware modifications have been undertaken to better suit the needs of the project. Building upon previous work achieved in our Semester Project, where a part of the necessary hardware and software was developed, the goal of this Bachelor Thesis is to create a basic environment map of obstacles and floor plan to the most accurate degree possible with the given hardware and data-sources, all while safely navigating and exploring the area. In addition, third-party applications, such as a Wireless Positioning System, must be able to connect to the emss framework and make use of the positioning data for their own purposes. The emss framework, consisting of a set of “hot-swappable” modules written in C++, provides an extensible design, which allows a wide array of functionality and supports different strategies for the same problem. The framework features a full blown multi-threaded software stack which allows the autonomous controlling and interfacing of the robot. The Hardware Abstraction Layer allows for the complete emulation of the underlying hardware, achieved largely by reverse engineering the behavior of the proprietary hardware. Safe navigation has been achieved by intelligently avoiding drops, obstacles, and walls. Furthermore, small areas can be autonomously navigated and mapped using different space-filling algorithms and map structures. Collaboration with third-party software has been realized with the Wireless Positioning System PointZero by automatically collecting necessary signal reference points. Other routine tasks, such as docking the robot on its docking station, have been implemented. In this paper we present an accurate description how these tasks have been realized, our assessment of the results, and insights into future improvements.