Research /
ExperimentalThis is my best attempt to elucidate what I am currently looking into. Generally I am interested in how to improve robotic systems to better support robotic applications. There are several different directions in which this research may lead. Part of the problem is the wide variation in robotic platforms, so some of this may seem contradictory. ArchitectureOne way to attack this is to look at the architectures assumed by previous researchers. Right now there seems to be two competing ways of structuring the system:
This is neglecting the Subsumption architecture and it's modern day approach: NSB. Also neglected is the Model Based approach. The modern approach, that taken by ROS and supported by YARP among others, is to provide the robotic application programmer with the modules with pub/sub abstraction. The lower level control, what used to be what the TLA supplied, is handled by provided libraries. This forces the question: which level of programming do I intend to support. I need a nomenclature to help define this split. Unfortunately "robotic operating system" has been taken by a very improperly named system. Faults (TODO: this title and the other make little sense)Other approaches, such as the work done with Fiasco and Faults are very much at the lower level. They allow for systems to be built upon them which have added benefits, such as real-time guarantees and fault detection. (TODO: finish fleshing this idea out. Relate it back to what you are doing. Talk about the experiments.) |