Are there standards for ROS drivers that describe common interfaces for various actuators and sensors that are independent of specific manufacturers and hardware? If so, where might those be found? If not, are there plans to create or adopt such standards or models? Debating standards is never fun, but the dream of having interoperable, interchangable driver packages is very compelling.
I have seen the Hardware Robot Information Model and it seems like a great idea. Is this being actively used by the community and maintained?
RobMoSys seems even more ambitious and general, but it appears that they do not yet have models for many hardware components.
Is there any agreement about using one of these or some other guidelines when writing driver packages so they are as interchangeable and interoperable as possible?
For example, I use lots of different motor drivers and controllers, each with its own API. I would like to write a ROS driver for each one and use the same interface for all of them. A general enough interface might work with stepper motors, motors with encoders, rotary actuators, linear actuators, etc, but even if the interface just removed the differences between manufacturers for the same type of motor that would be very useful. Has anyone worked out a common interface for such motors? Or does every ROS motor driver package have its own slightly different interface? What about other actuators and sensors? Thanks!