Clever household robots had been described in many sci-fi stories and shown in movies throughout the XX century. The first attempt to construct a machine dates back to 270BC when the ancient Greeks built a clock.
Rapid technology advancements are radically redefining the way people behave, work, and learn. That includes domestic chores. Robots are much more precise and do not mind performing dull and monotonous tasks. Rosie robot is an excellent example of how technology can make our lives easier.
We were a part of the team that worked on an advanced household robot. Our goal was to create software for a robot to conduct certain domestic activities independently. Starting by bringing water from the fridge, through vacuuming to arranging a phone call.
We wanted the robot to be capable of prioritizing its work and moving around the room freely. Rosie is a conceptual, electronic robot that can successfully replace the human in the home duties or be simply an invaluable home help for everyone.
We were responsible for:
- Determining the robot’s path
- Scheduling and prioritization of the robot’s task
- Planning robot’s movement
- Developing vacuum cleaning algorithms
- Processing point cloud registration
- We were responsible for market research in order to select cameras
- Creating expansion algorithms – the robot, by moving thru given space several times, creates a map of the rooms and then analyzes it in order to develop the most optimal path for cyclic scanning
- Image processing and distance from the object
- Data processing e.g. removing noise from robot sound recordings
The robot plans and executes tasks primarily on visual information. It maps, scans, and localizes itself in the environment by LIDAR, RGB-D, and image sensors.
The robot is capable of object recognition, moving around the room, and performing certain domestic activities such as placing objects back in place. The robot also has the function of a telecommunications platform, the owner can ask to talk to anyone at any time. Rosie is also compatible with an external application for task determination and prioritization (mobile app). We are proud to announce that our robot was presented during the General Electronics fair in the US.
For us, it was the first project of this type where we had the opportunity to fulfill the hidden dream of most programmers and take an active part in creating the robot. It was a great experience for us and something like a pursuit of ambition, which we can proudly say that we succeeded.
Project’s Tech stack:
We decided to use several technologies:
We joined the team after the start of the project, so some technologies were agreed in advance and C++ was one of them. Nonetheless, it was the best choice because it provided maximum performance giving into account the subject of the project.
Used in the entire project, the main example of the use of technology is a fast segmentation of the apartment plan into rooms
As a development environment, efficient in terms of testing and monitoring possible errors, finally a product for docker service.
Robotic framework that provides services for device and hardware control, core functionality implementation, and package management. selection of rather inherent projects related to robotics due to the numerous tools in this subject
Convolutional Neural Networks
Object classification, 2D image processing (for example determining the location of a mobile phone), and 3D mapping
Constructing a map of an unknown environment and simultaneously keeping tracking the robot’s location
3D mashing and mapping
Used to determine the location of a given object in 3D