DROS stands for Dave's Robotic Operating System and it is basic software modules needed for robotics. At the moment, the framework consists mainly of support functions for modular programming and modules for mobile robots. However, in the future the scope should expand and, of course, contributions are most welcome.
DROS is open source and is distributed under the GNU Public License.
The basic idea of the DROS is to re-use the good parts of all of the software systems that I have been involved with over the years (it is heavily based on the ISR via RSS) to fix (most of) the bugs/limitations in previous systems. The major features are as follows:
- Promote re-use of components. The present system requires that everyone maintain their own compiled copy of the system. This is wasteful of disk space and time. DROS will allow a much simpler use of the system, possibly without even re-compiling, through the following:
- Installed programs will be provided in some public directory so that few people have to compile the entire system.
- Unique message IDs will be used within a pre-defined message header. Each message ID will have a defined (and documented) structure associated with it. Once any program that uses that message is "released" the message should be frozen and never changed. This is necessary so that the installed components will not crash because of changed message formats.
- Run-time configuration will allow re-use of installed components without re-compilation.