Computer Hardware/Controller Design


The current software has been developed entirely in the V+ programming language and operating system, on Adept's MV controller. For most industrial applications, this programming environment would be sufficient; however, it lacks the power and flexibility needed to support rapid software development and changeover. This is largely because V+ lacks features which are standard in other languages and operating systems, such as user-defined functions, standard data structures and shell script execution.

To circumvent these limitations, a more extensive controller interface design has been developed. It allows the system to support C and C++, and provides a friendlier and more flexible user interface. In addition, it allows the use of a real-time operating system, thus simplifying software development and improving performance.


Controller system architecture

In this design, the system's capabilities are expanded by using a second VMEbus in addition to the Adept MV controller VMEbus. This second VMEbus houses I/O boards and dedicated single-board computers (SBC's), on which a real-time operating system executes. C and C++ programs running on the SBC's are responsible for all high-level control and robot motions (e.g. conveyor control, pneumatic operations, specifying robot destinations), while the MV controller is used exclusively for low-level robot motions (e.g. servo control and trajectory generation) and some machine vision routines. A vision processing board is also used on the second VMEbus, thereby augmenting the AdeptVision system.

The two buses are connected by a reflective memory network. This consists of wo memory cards, one on each bus, which can be connected by either a cable or a fiber optic link. Changes made to memory on one board are automatically reflected on the other, thus allowing commands and data to be transmitted between the two buses7. The SBC's can thus place robot and vision commands on the reflective memory network. These are read by a set of command servers running on the MV controller. The servers execute the commands and, where applicable, return the results via the same network.


Last update: 12 June 1996

E-mail: rdq@po.cwru.edu