Design and implementation of PSO-based PID controller for MA2000 robotic manipulator

number: 
2897
إنجليزية
Degree: 
Author: 
Ali Hadi Mohammed Hashim
Supervisor: 
Dr. Firas Abdullah Thweny
year: 
2012
Abstract:

Proportional-Integral-Derivative (PID) controllers are widely applied in the industry due to their relatively simple structure and reliability. As the three parameters of the PID controller, namely, the proportional, the integral and the derivative gains co-determine the controller's response, many strategies were presented to tune these parameters. Such strategies varied between conventional tuning methods and application of modern optimization algorithms. In this thesis, a complete control system is proposed, implemented and tested to control the TQ MA2000 robotic manipulator which is a six degree of freedom (DOF) complex structure robotic manipulator arm. The kinematics of the MA2000 manipulator were verified by simulation using Matlab. Tests were performed to assure the operation of the derived forward kinematics model and the inverse kinematics (IK) calculation algorithm. The implemented control system is a networked control system, where two PCs interacted via a computer network to form the overall control and tuning functions. The control system utilized the PID algorithm to control the MA2000 manipulator, where each joint was treated as a separate Single Input Single Output (SISO). Six separate PID controllers were used to control the operation of the MA2000 manipulator. In the implemented control system, the Particle Swarm Optimization (PSO) algorithm was used to tune the individual PID controllers of the robotic arm. The tuning process was considered as a nonlinear optimization problem. Where a certain fitness function was minimized in order to obtain the desirable transient response for each joint. A hardware interfacing system was designed and implemented to create the physical connection between the MA2000 manipulator and the control system. The system software which comprises two separate software applications, the client application and the server application, was designed and built. Those applications exchange control messages via a Transmission Control Protocol / Internet Protocol (TCP/IP). The server application was written using the C programming language in order to reduce its computational cost, while the client application was written using the C-Sharp (C#) language, where its visual interface design capabilities were utilized. The MA2000 manipulator was tuned practically in real time. Each joint was tuned separately, in a serial manner (one joint at a time). Several tests were conducted against the PID gain sets resulting from the tuning process, where these tests gave satisfactory results.