# Implementation of a robust dynamic control for SCARA robot

- 444 Downloads
- 1 Citations

## Abstract

A control system for SCARA robot is designed for implementing a robust dynamic control algorithm. This study focuses on the use of DSPs in the design of joint controllers and interfaces in between the host controller and four joint controllers and in between the joint controllers and four servo drives. The mechanical body of SCARA robot and the servo drives, are selected from the commercially available products. The four joint controllers, assigned to each joint separately, are combined into a common system through the mother board hardwarewise and through the global memory softwarewise. The mother board is designed to connect joint controllers onto the board through the slots adopting PC/104 bus structures. The global memory stores the common data which can be shared by joint controllers and used by the host computer directly, and it virtually combines the whole system into one. To demonstrate the performance and efficiency of the system, a robust inverse dynamic algorithm is proposed and implemented for a faster and more precise control. The robust inverse dynamic algorithm is basically derived from an inverse dynamic algorithm and a PID compensator. Based upon the derived dynamic equations of SCARA robot, the inverse dynamic algorithm is initially implemented with l msec of control cycle—0.3 msec is actually used for the control algorithm—in this system. The algorithm is found to be inadequate for the high speed and precision tasks due to inherent modelling errors and time-varying factors. Therefore a variable PID algorithm is combined with the inverse dynamic algorithm to reinforce robustness of control. Experimental data using the proposed algorithm are presented and compared with the results obtained from the PID and the inverse dynamic algorithms.

## Key Words

Robust Dynamic Control System PID Disturbance DSP## Nomenclature

**D(q)**is an

*n*×*n*inertia matrix- \(C(q, \dot q)\)
represents the centrifugal and Coriolis terms

**G(q)**is an

*n*×1 gravity vector- \(N(q, \dot q)\)
is equal to\(C(q, \dot q)\)+

**G(q)**- τ
is the

*n*×1 torque vector**J**_{m}is an inertia matrix of motor

**B**_{m}is a friction matrix of motor

**R**is a gear ratio matrix

**π**_{m}represents the torque supplied by the actuator

**u**represents a control input vector

**K**_{P}is a proportional gain coefficient

**K**_{1}is an integral gain coefficient

**D**_{D}is a differential gain coefficient

**K**_{D}is equal to

**q**_{ m }^{ d }-**q**_{ m }- η
is equal to -\([J_m + \overline {D_m } (q_m )]^{ - 1} \varepsilon \)

- ∈
is defined by\(\left\| {\ddot e_i } \right\|\) and non diagonal terms of

**D**_{ m }(**q**_{ m })- \(\overline {D_m } (q_m )\)
is a diagonal submatrix of

**D**_{ m }(**q**_{ m })*L*is the acronym of large

*M*is the acronym of medium

*H*is the acronym of high

- μ
_{E}(*x*) is the input membership function of position error for axes 1, 2, and 4

- μ
_{V}(*y*) is the input membership function of velocity error for axes 1, 2, and 4

- μ
_{KD}(*z*) is the output membership function of

*K*_{ D }for axes 1, 2, and 4_{KI}(*z*)is the output membership function of

*K*_{1}for axes 1, 2, and 4- μ
_{PE}(*x*) is the input membership function of positive z-directional position error for axis 3

- μ
_{PV}(*y*) is the input membership function of positive z-directional velocity error for axis 3

- μ
_{PKD}(*z*) is the output membership function of positive z-directional

*K*_{ D }for axis 3- μ
_{PKI}(*z*) is the output membership function of positive z-directional

*K*_{1}for axis 3- μ
_{ME}(*x*) is the input membership function of negative z-directional position error for axis 3

- μ
_{MV}(*y*) is the input membership function of negative z-directional velocity error for axis 3

- μ
_{MKD}(*z*) is the output membership function of negative z-directional

*K*_{ D }for axis 3- μ
_{MKI}(*z*) is the output membership function of negative z-directional

*K*_{1}for axis 3- λ
_{i} represents weights for the input membership functions

## References

- Chen, C. L. and Chang, F. Y., 1996, “Design and Analysis of Neural/Fuzzy Variable Structural PID Control System,”
*IEE Proc. Control Theory Appl.*, Vol. 143, No. 2, pp. 200–208.MATHCrossRefGoogle Scholar - Digital Signal Processing Products, 1989,
*Digital Signal Processing Applications with the TMS320 Family*, Vol. 1, 2, 3, Texas Instruments Inc.Google Scholar - Digital Signal Processing Products, 1993,
*TMS320C5X User’s Guide*, Texas Instruments Inc.Google Scholar - Franklin, G. F., Powell, J. D., and Enami-Naeini, A., 1986,
*Feedback Control of Dynamic System*, Addison-Wesley.Google Scholar - Kelly, R. and Salgado, R., 1994, “PD Control with Computed Feedforward of Robot Manipulators: A Design Procedure,”
*IEEE Trans. Robo. and Auto.*, Vol. 10, No. 4.Google Scholar - Lewis, F. L., Abdallak, C. T., and Dawson, D. M., 1993,
*Control of Robot Manipulators*, Macmillan Publishing Company.Google Scholar - Lin, K. S., Frantz, G. A., and Simar, R. Jr., 1987, “The TMS320 Family of Digital Signal Processors,”
*IEEE Proc.*, Vol. 75, No. 9.Google Scholar - Maeno, T., and Kobata, M., 1972, “AC Commulatorless and Brushless Motor,”
*IEEE Trans. Power Appl. Syst.*, Vol. PAS-91, pp. 1476–1484.CrossRefGoogle Scholar - Mamdani, E. H., 1977, “Application of Fuzzy Logic to Approximate Reasoning Using Linguistic Systems,”
*IEEE Trans. Com.*, C-26, pp. 1182–1191.MATHCrossRefGoogle Scholar - Pillay, P., and Krishnan, R., 1989, “Modeling, Simulation, and Analysis of Permanent-Magnet Motor Drives, Part II: The Brushless DC Motor Drive,”
*IEEE Trans. Ind. Appl.*, Vol. 25, No. 2.Google Scholar - Rocco, P., 1996, “Stability of PID Control for Industrial Robot Arms,”
*IEEE Trans. Robo. and Auto.*, Vol. 12, No. 4.Google Scholar - Shyu, K. K., Chu, P. H., and Shang, L. J., 1996, “Control of Rigid Robot Manipulators via Combination of Adaptive Sliding Mode Control and Compensated Inverse Dynamics Approach,”
*IEE Proc. Control Theory Appl.*, Vol. 143, No. 3.Google Scholar - Song, Y. D., Mitchell, T. L., and Lai, H. Y., 1994, “Control of a Class of Nonlinear Uncertain Systems via Compensated Inverse Dynamics Approach,”
*IEEE Trans.*, AC-39, pp. 1866–1871.MATHMathSciNetGoogle Scholar - Spong, M. W., and Ortega, R., 1994, “On Adaptive Inverse Dynamics Control of Rigid Robots,”
*IEEE Trans.*, AC-39, pp. 1866–1871.Google Scholar - Takegaki, M., and Arimoto, S., 1981, “A New Feedback Method for Dynamic Control of Manipulator,”
*ASME Trans. of Dynamic System, Measurement, and Control*, Vol. 103, pp. 119–125.MATHCrossRefGoogle Scholar - Zubek, J., Abbondanti, A., and Nordby, C. J., 1975, “Pulsewidth Modulated Inverter Motor Drives with Improved Modulation,”
*IEEE Trans. Ind. Appl.*, Vol. 1A-11, pp. 695–703.CrossRefGoogle Scholar