CORBA in Robot Control Application

CORBA is an acronym for the Common Object Request Broker Architecture. It is an open architecture, specified by the Object Management Group. The OMG exists to provide vendor independent software standards for distributed systems.

To design a CORBA object to operate in the robot control application, it was first established what data needed to be passed from one process to another. This would be done before designing any object whether it is in C++, Java or CORBA. A CORBA object, however, contains no data. It may have data-types providing application specific data structure, but apart from this, it will consist only of methods. The methods required for our application were decided to be the following:

Frame – a function taking no variables but returning a large array containing the last bitmap image grabbed by the server.
Calibrate – this function sends image coordinates corresponding to the ;ast frame sent over by frame allowing remote calibration.
Newsnake – instantiates a new B-Spline snake interpolating four or more image coordinates specified as an array in the parameters of the function.
Pos – returns the current snake coordinates.
Map – returns the topology of the environment the server is controlling. This allows low-bandwidth operation by eliminating the need to use the heavy weight frame function.
Send – finally, a function which takes image coordinates (or map coordinates if in low-bandwidth mode) and asks the server to navigate the robot to the world coordinates o which they correspond.

No comments:

Post a Comment