This paper describes the design of a robot controller's software system built for a PUMA 560 robot manipulator located at the Department of Automation and Applied Informatics, BUTE. The original developments of the system were aimed to change the legacy Russian controller which was hard to maintain. During the past several years the system has been the source for theses and research projects. The goal of the thesis is to redesign and fix the existing code to support future developments.
In this paper I am going to show the system's current status and it's functional requirements. I am going to explain the detailed architecture of the Advanced Robot Controller (ARC) panels. I am going to describe the CPUs in the controller and discuss on the possibilities of communication between them with regard to the pitfalls of the synchronous and real-time operation. I am also going to discuss on the QNX operating system which is the target platform of the controller and describe some of the concepts and practices about design maintainable and performant code.