MRG is happy to share some of the in-house tools that we use to execute our research agenda. These range through low, medium, and high-level systems. Please take a look at our Github profile for more examples.
Simple, open-source, cross-platform software for mobile robotics research.
We use MOOS on all of our robots and applications including the robot car. It allows us to develop and test our autonomy system in a modular way on multiple machines across multiple operating systems.
MOOS is free, open source, cross platform software written and used by members of the Mobile Robotics Group. MOOS has its own web page which can be found at http://www.robots.ox.ac.uk/~pnewman/TheMOOS.
If you are looking for lightweight middleware designed for use in a research environment you could do a lot worse than setting the MOOS loose.
TICSync is an extremely efficient algorithm for learning the mapping between distributed clocks, which typically achieves better than millisecond accuracy within just a few seconds. Crucially it also provides a probabilistic bound on its accuracy, allowing for rapid detection of clock upsets.
Modern robotic systems are composed of many distributed processes sharing a common communications infrastructure. High bandwidth sensor data is often collected on one computer and served to many consumers. It is vital that every device on the network agrees on how time is measured. If not, sensor data may be at best inconsistent and at worst useless. Typical clocks in consumer grade computers are highly inaccurate and temperature sensitive. We argue that traditional approaches to clock synchronization, such as the use of NTP are inappropriate in the robotics context.