[ros-users] [Discourse.ros.org] [General] Hardware Robot Information Model (HRIM): Beriain release

Ibaiape via Discourse.ros.org ros.discourse at gmail.com
Tue Jan 15 10:44:06 UTC 2019



Dear ROS community,

Our team at Acutronic Robotics is very excited to introduce the second release *(0.2.0)* of HRIM: [Beriain](https://github.com/erlerobot/HRIM/releases/tag/Beriain). HRIM is an **information model for robot modules** that focuses on hardware at the component level and aims to enable modularity and interoperability via "standardizing" data I/O amongst said components.

HRIM in itself can be separated in two concepts:

* **Definition**: On one hand, we focus on developing communication models that encompass the components currently being used in the industry, categorized by their function. We need **consistent yet flexible**-enough models that can adapt to the individualities of different manufacturers and specific products while maintaining a homogeneous structure. You can read further on our approach for this [here](https://acutronicrobotics.com/docs/technology/hrim/introduction/general%20structure), and the definition and description of our models [here](https://acutronicrobotics.com/docs/technology/hrim/model/models). Basically, and as a ***TL;DR***, we define certain **common communications** we deem necessary across all components (like identification, communication status...), **purpose-specific** capabilities all components of that subtype should have (like all cameras publishing images), and **additional** capabilities that each module may or may not have (like a motor providing a temperat
 ure reading).

* **Composition**: On the other, we get into the composition of said models through what we refer to as the **meta-model**. This is a way to take the existing model definitions as the building blocks for a specific module, with specific capabilities. The meta-model ***aims to facilitate part of the robot development process by providing a simple interface to generate custom packages based on the capabilities of your component***.

[Beriain](https://github.com/erlerobot/HRIM/releases/tag/Beriain) contains all the module models we've developed so far in a platform independent representation through XML, and the tooling to "compile" these representations into ROS 2.0's communication artifacts. That is the main difference from the previous release, [Anboto](https://github.com/erlerobot/HRIM/releases/tag/v0.1.0).

The meta-model has not been added to the main branch yet, as we are still considering many approaches on how to implement it. One of these approaches is available at our [meta-clean](https://github.com/erlerobot/HRIM/tree/meta-clean) branch for anyone that wants to put their hands on it.

Contributions and suggestions are very welcomed. We strongly believe our best bet to realise the potential of HRIM lies in receiving input from multiple types of profile and field, this is one of the main reasons why we decided on an open-source development. We don't aim to become *another* "standard", but to truly impact how roboticists develop new solutions and help them in the often tedious and time-consuming integration effort, plus some extras. And we know **we can't do it alone**. Anyone interested is more than welcome to initiate a discussion at [our issues](https://github.com/erlerobot/HRIM/issues).

Thanks a lot to ROS Industrial for believing in this project's value and providing funding for its development.

#### Links of interest:
* [ROSin ftp](http://rosin-project.eu/ftp/hrim)
* [arXiv.org article](https://arxiv.org/abs/1802.01459)
* [Source code](https://github.com/erlerobot/HRIM)
* [Documentation](https://acutronicrobotics.com/docs/technology/hrim)





---
[Visit Topic](https://discourse.ros.org/t/hardware-robot-information-model-hrim-beriain-release/7458/1) or reply to this email to respond.




More information about the ros-users mailing list