Logical Designs has been involved in the development of a large number of applications. The robotics control project is an example of one such application. The goal of this project was to show the abilities of a neural network to control a Puma 502 robotic arm.

There where two tasks involved in the development of the project. The first was to show in a simulation of the arm that a neural network could in effect "solve" the inverse kinematics problem. That is, given an initial set of joint angles and a set of target coordinates(x,y,z), that a neural network could generate a sequence of joint angle changes to move the end affector of the arm to the target coordinates. The aim here was complicated by the need for the algorithm to adapt on-line to changes in the arm calibration.

The second task was to develop a path planning algorithm that could avoid known obstacles in the path of the arm. While there have been methods that have been demonstrated in two dimensions, the algorithm had to operate in three dimensions, and control an arm with five degrees of freedom.

The solution to the first task involved both neural network and random search methods. Simulation software was written to model the Puma robotic arm. With this model and feedback as to the true coordinates of the arm a supervised learning method was developed for a neural network. Network inputs consisted of the current joint angles, the coordinates of the end effector, and the target coordinates. If the controller were only to make small random changes to the joint angles and store the changes that moved the end effector closer to the target, a path would eventually be found. This random method was coupled to a neural network whose outputs where to represent the desired changes in joint angle.

At each step in the process the network was run to determine the changes in joint angle. A random attempt was then made to improve the position of the arm. The combined random and network changes where then used to update the network weights. As training progressed, the network outputs overshadowed the random changes.

The second task was accomplished using a Kohonen self organizing map to build a set of feasible intermediate points that could be reached using the above network without hitting an obstacle. From the feasible set of intermediate points, a shortest path algorithm was used to determine the final path.

The two methods where implemented on the Puma arm to produce a demonstration of the path planning and control system.

Logical Designs has the ability and experience to make your project and application a success.