Since I started working on the BETER REHAB project, I decided to use ROS as the central platform to implement all the logic for the controller of the robotic arm. This was due to two reasons: a) ROS is considered a MUST for anyone doing robotics and b) I really wanted to learn something new (those that know me can understand that this is a very big motivation for me).
ROS (standing for Robotic Operating System) is a centralised system for running multiple ‘nodes’ that talk to each other using ‘topics’. Each node can decide which topics is it interested in and to which topics does it contribute with information. This is a very flexible system that allows to run nodes that focus on doing one job well (following the UNIX paradigm). And since it supports different languages (e.g. C, Python), it allows bringing together the powers of different systems and combining them. And of course, there is a hugo community of researchers and hobbyists using ROS and contributing with tons of packages.
I am just getting used to working with ROS, learning a lot of new things (how to use the main functions and how to download and install existing packages), and I am amazed by the possibilities that it brings and the doors that it opens. For instance, I am currently trying to make use of the skeleton_tracker package for extracting skeleton position using a Xtion depth camera.
At the same time, I am trying to contribute to the community as well. Nothing very fancy right now, just porting some packages from an older version of ROS to the latest version (currently Melodic Morenia and uploading them at AUR (Arch User Repository). Here are the four packages that I have ported so far (still working on the skeleton_tracker one):
Will try to keep on porting!