This section is a work in progress.
HRIM, is an standard interface for robot modules presented as a model. It focuses on the standardization of the logical interfaces between robot modules. In other words, it's hardware oriented and defines a set of rules that each device has to meet in order to achieve interoperability.
HRIM is based on the Robot Operating System (ROS) component model.
An information model is typically understood as an abstraction and a representation of the entities in an environment including their properties, attributes and operations. An information model also describes the way that entities (modules in this particular case) relate to each other. An information model is typically independent of any specific repository, software usage, protocol, or platform. As such it can be used to define the semantics for the interactions between modules, becoming all of these interoperable.
HRIM is created due to the need for a standard model in terms of communication between components.
Nowadays there is no leading candidate for a solid and standard interface that remove the integration effort for bulding robots and much less for a global plug and play standard. This is a topic that has been demanding for years by the industry to to be able to obtain the flexibility in their robots to create small customized series for clients or to be able to use the same machinery to do different tasks, and at the same time reduce costs.
ROS supports the reuse of code, however, although it offers some messages for different components, users end up creating their own messages (adapting them to their needs) or use existing ones as best suits them (without following any rules). Consequently, when a new device is added, the user has to invest time in understanding the content of the package to later be able to implement it.
HRIM wants to simplify this whole process, creating a series of rules and steps to follow when creating the packet of the devices. In this way all the components will use the same pattern to communicate, for example all the cameras will send the images in the same format at least.
Many sectors will benefit thanks to HRIM: developers, industrial roboticists, robot modules manufacturers etc., the robotics industry in general.
The best way to create a standardization project is to build it collaboratively. For us it is very important to count with the opinions of the ROS community (considering that the first interaction of the information model is written using ROS messages syntax), robotics experts (being the information model an implementation for differents middlewares) and device manufacturers (since there are the ones who know the most about all the characteristics and the possibilities of each component), among others (all constructive opinions are welcome).
The more collaborative the more solid will be the information model and more useful will be for all who want to benefit from the work done. That is why we wanted to share it in the state of development. For our part, we will continue adding more components (giving priority to the most used in robotics), while improving the existing with received feedback.
We are working on creating a modular interface assigning at least a basic message that covers the main objective of the device. For the other characteristics we use optional messages, so the user will be able to work with the 100% of possibilities that the component offers.
Although the information model has required analyzing each device separately to create custom messages, all are based on a general structure created by a strategist designed for the standardization of robotic modules.
To create an easily understable interface, the information model follows a common naming convention. It is recommended to check it before jumping to particular cases.
HRIM was created through a need found during the development of H-ROS, where the need of reusability and interoperability in robotics is solved by a plug-and-play hardware components. For that, a standard communication between components is needed. So, HRIM is the part in charge of providing a common interface.
However we wanted to make HRIM an independent standard interface for robot modules which contains rules/specifications that standardize interactions between different robot components. In this way, we are apporting to robotics community a solution that everyone can benefit from, instead of spending resources for its development.
H-ROS, The Hardware Robot Operating System, delivers a solution for companies manufacturing sensors, actuators etc. to create a modular robot components that interoperate and can be easily reused; even from different manufacturers, you will only have to connect them together. With H-ROS you can create plug and play devices simplifying the robot building process.
Nowadays the incompatibility in terms of communication between components is one of the biggest problem in robotics. An expert is required to spend almost a 70% time over the total (building robot process) working to achieve communication between components. H-ROS eliminates this problem thanks to all its infrastructure, and the information model is part of it, standardizing the content that all the modules must include to be sure that all of them speak the same language at all levels.
H-ROS is an infrastructure that works on top of ROS 2, what it has leaded us to create an Information Model which standarized modules using ROS messages syntax. But we want to do it more generic adapting the information model for different implementations. That is to say, the information model is created specifically for H-ROS, but I have to say, that we are taking care of making it as modular as posible, so, all of you can take advantage of this work.
The information model will solve one of the biggest problem of robotics: the incompatibility in terms of communication between components. The information model is focused on create a software standard content that each device has to contain. As mentioned before, H-ROS uses ROS 2 infrastructure, that is why we have worked focused on it.