The Development of Six D.O.F. Robot Arm for Intelligent Robot

March 20, 2018 | Author: Timothy Briggs | Category: Kinematics, Control Theory, Robot, Technology, Coordinate System


Comments



Description

TuB1.6 Proceedings of 2011 8th Asian Control Conference (ASCC) Kaohsiung, Taiwan, May 15-18, 2011 The Development of Six D.O.F. Robot Arm For Intelligent Robot Jie-Tong Zou Des-Hun Tu Dept. of Aeronautical Engineering, National Formosa University, No.64, Wunhua Rd., Huwei Township, Yunlin County 632, Taiwan, R.O.C. TEL: +886-5-6315556, FAX: +886-5-6312415 EMAIL: [email protected] Institute of Opto-Mechatronics and Materials, WuFeng Institute of Technology, Chian-Kuo Rd, Sec. 2, Ming-Hsiung, Chia-Yi 621, Taiwan, R.O.C. EMAIL: [email protected] Abstract—The objective of this paper is to develop a six D.O.F robot arm for an intelligent robot. As for the shoulder part, the harmonic drive, which has some advantages (such as zero backlash, small volume, and high reduction ratio), was used to ensure the weight of the whole arm could be supported. The kinematic equations of the robot arm have been verified in this paper. As for the links of a robot arm, the DenavitHartenberg (D-H) coordinate transformation method is generally used. The six axes data of the robot arm can be obtained from the Inverse Kinematics analysis. Through the Simulink function of Matlab software, we can make the forward or inverse kinematics computation of the robot arm. In the control aspect, the PC based controller and the DSP based 8 axis motion control card were used to control the robot arm. When the robot arm hardware was finished, the PID control parameters of the servo motors should be adjusted first. Finally, we make some experiments; the PC based controller can control the robot arm to grab a box through a moving path successfully. Keywords- intelligent robot; robot arm; mechanism design; kinematic analysis; motion control I. INTRODUCTION A robot arm is a mechanical device that is driven by electric motors, pneumatic devices, or hydraulic actuators. The motion model of a robot arm decides the geometric forms of the robot arm. The basic geometric forms of robot arm include the Cartesian coordinate, cylindrical coordinate, spherical coordinate, and the articulated coordinate. There were quite a few researches regarding the robot arm. For example, Ahmad [1] discussed the drive train of a robot arm. Due to the backlashes, the eccentric joints, and the influences that the flexibility of driving axles would have on the accuracy and repeat accuracy of the arm positioning, Ahmad used linear positioning compensation and obtained good effects. Lee and Shah [2] conducted the kinematic analysis of a robot arm of the closed kinematic chains, utilizing the Homogeneous Transformation method to do the analysis of the parallel-link robot arms, while calculating the moving space. Veitschegger and Wu [3] developed the kinematic adjustment model of the PUMA560 six-axis robot arm. They used the model on compensating the positioning tolerance of the manipulator. The experiments proved that it could improve the positioning accuracy. Zhang [4] worked on the adjustment of a robot arm and proposed a new kinematic analysis method, which could avoid the tolerance caused by the singularity of kinematic analysis. Tischler, Samuel and Hunt [5] discussed the driving trains, the limitation, the classification, and the drive of a robot manipulator. Sacks and Joskowicz [6-8] discussed how the planar mechanisms would cause the kinematic tolerance due to the component shape tolerance that led to the contact point differences between the components. In that research, Sacks and Joskowicz aimed at the planar pair components’ shape tolerance of single-point contacts and multi-point contacts. They calculated the kinematic tolerance space and its maximum tolerance. Zhang [9] used robust design method to discuss the tolerance design of the components. Chen [10] continued to use the trained neural network method and analyzed the tolerance synthesis of a robot arm, while utilizing the optimized cost-tolerance function (through the simulated annealing method) to obtain the optimized tolerance design. Wu [11] used homogeneous transformation matrix and concluded that when the robot arm’s joint parameters and kinematic parameters have slight tolerance, the linear adjustment model of the homogeneous transformation matrix can be obtained. This adjustment model could be applied to the positioning of the kinematic grippers with minor tolerances, and could be also applied to the positioning tolerance analysis. The purpose of this research was to design and implement a six-degree-of-freedom robot arm of an intelligent robot. We mainly used 3D CAD software such as Solidworks to design the robot arm, made the components, and then assembled the robot arm. As for the shoulder part, the harmonic drive was used to ensure the weight of the whole arm could be supported. In the control aspect, the PC based controller and the DSP based 8 axis motion control card were used to implement the control of the robot arm. When the robot arm hardware was finished, the PID control parameters of the servo motors should be adjusted first. Then, we obtained the kinematic equations of the robot arm, and the moving path of the robot arm. Afterwards, in order to execute some difficult motions such as grabbing a beverage can or a stick, adjustments and execution were made according to the kinematic path of the robot arm. The robot arm also could be combined with the machine vision system to do the behavior control. The - 976 Downloaded from http://www.elearnica.ir In the software aspect. reduction gear would be heavier. shoulder joints need motors with bigger horsepower and torque. A joint’s reference coordinate will change along with the rotation of the links. In this way. inversely calculating the rotation angle of each joint. ROBOT ARM The purpose of this research was to accomplish the design and implementation of a six-axis robot arm. . we can make the forward or inverse kinematics computation of the robot arm. while increasing the flexibility. not only should we choose a motor with even more torque.977 - . Forward kinematics gives the rotation angle of each joint to calculate the ( x. Through the Simulink function of Matlab software. The concentric design of the two axes of shoulder joints Figure 1. position. and high reduction ratio) ensure that the weight of the whole arm could be supported. but also the motions of the arm would not be sharp enough. Kinematics can be divided into forward kinematics and inverse kinematics. the components were manufactured and assembled the proposed robot arm (as shown in Figure 2). As for the links of a robot arm. The concentric design of the two axes of shoulder joints There is limited space on a robot’s shoulders.manipulator could grab an object with this visual feedback system. If we fixed the motor on the shoulder joint. In this research. We need to consider the transformation relations between joint n and n+1 that are in the two adjacent coordinate systems. Figure 3. y. the motor and III. The transformation matrix of the coordinate could be abbreviated as D-H transformation matrix. and the coordinates will change in space as time goes by. the weight and the inertia of the arm will increase. The CAD model of a six-axis robot arm The design characteristics of the proposed robot arm are as follows: A. Japan’s humanoid robots would use patented spherical joints. II. The link relations between the links and the joints are shown in Figure 4. The transmission method (as shown in Figure 3) could concenter the two axes of shoulder joints. z ) position and the direction of a manipulator or an end effecter. In addition. KINEMATIC EQUATIONS OF ROBOT ARM Kinematics mainly discusses the coordinate transformation of a robot arm. Suppose there was a reference coordinate on every joint. The picture of the six-axis robot arm The shoulder joint of the robot arm has two degrees of freedom. but not taking the force or torque into account. Therefore. the cogged-belts were used to link the motors and the shoulder joints. This design could lighten the weight of the arms.O. through the kinematic equations. The transfer of motors on the shoulders Figure 2. a 3D CAD software such as Solidworks was used to design the sixaxis robot arm (as shown in Figure 1). so that the kinematic motions would be similar to the ones of real human beings. First. we purposely used the harmonic gear regarding the part of shoulder joint. the kinematic path of the robot arm could be simulated. In general. the Denavit-Hartenberg (D-H) coordinate transformation method is generally used. and speed. B. Usually. and there are links between the joints. DESIGN AND IMPLEMENT OF A SIX D. we transferred the two motors on shoulder joints (including the harmonic gears) into the body of robot (as shown in Figure 1). Therefore. Its advantages (such as zero backlash. Inverse kinematics gives the coordinate of the manipulator. we compressed the coggedbelt of one axis with idle wheels. Generally speaking. it is quite difficult to make two or three rotary axes concentric. The variables include time.F. while defining the 4 important parameters by the D-H method [12]. small volume. Then. Then. and had it go through the central hole of another axis’ belt pulley. n +1˖The angle by which the rotary joint rotates around Znaxis an +1˖When being perpendicular to the oblique lines Zn -axis and Zn + 1-axis. letting Zn The above steps are illustrated as shown in Figure 5. ࢊ࢏ ݀ଵ 0 0 0 ݀ହ ࣂ࢏ ߠଵ ߠଶ ߠଷ ߠସ ߠହ ࢇ࢏ 0 ܽଶ ܽଷ 0 0 ࢻ࢏ െͻͲ௢ 0 0 െͻͲ௢ 0 T he D-H parameters of each axis will be brought into the D-H transformation matrix in equation (1). n +1. The illustration of coordinate transformation The D-H method was used to do the operation of transformation matrix of two adjacent coordinate systems XnYn-Zn and Xn+1-Yn+1-Zn+1. Forward kinematics analysis: Forward kinematics gives the rotation angle of each joint to calculate the ( x. z ) position and the direction of a manipulator or an end effecter. n +1. Rotate around Zn-axis by angle to Xn+1. y. Before establishing the equations of motion. Rotate Zn -axis around Xn+1-axis by angle and ҏZn+1 be superposed. the distance in between dn +1 ˖ The distance from Xn to Xn+1. 4. letting Xn be parallel 2. Make a translation along Zn -axis with a distance dn letting Xn and Xn+1 be collinear. letting the initial points of Xn-axis and of Xn+1-axis be superposed. Make a translation along Xn -axis with a distance an +1. Figure 4. The link relations between the joints and the links Figure 6. The transformation matrixes of two joints are shown as follows: ‫ߠܥ‬ଵ Ͳ ܵߠ Ͳ ଴ ‫ܣ‬ଵ ൌ ൦ ଵ Ͳ െͳ Ͳ Ͳ . The coordinate system of the robot arm is shown in Figure 6. The coordinate system of the robot arm TABLE I The D-H parameters of each joint Joint 1 2 3 4 5 Figure 5. The formula of coordinate transformation was obtained by the following 4 steps.978 - ܵߠଵ Ͳ ‫ߠܥ‬ଵ Ͳ ൪ Ͳ ݀ଵ Ͳ ͳ (2) . The D-H parameters of each joint are shown in TABLE I. +1. According to the above 4 steps. with which the joint translates along Zn -axis n +1˖The angle between Zn -axis and Zn + 1-axis Every rotary axis of the coordinate system is defined as Zaxis. we must first know the D-H parameters of each axis. the following are its matrix algorithms: (1) A. The steps are as follows: 1. The axes of the two adjacent coordinates would be superposed. 3. Figure 7 shows the Matlab’s illustration of the joint links.ଵ ଶ ଷ ‫ߠܥ‬ଶ െܵߠଶ ܵߠ ‫ߠܥ‬ଶ ‫ܣ‬ଶ ൌ ൦ ଶ Ͳ Ͳ Ͳ Ͳ Ͳ ܽଶ ‫ߠܥ‬ଶ Ͳ ܽଶ ܵߠଶ ൪ ͳ Ͳ Ͳ ͳ (3) ‫ߠܥ‬ଷ െܵߠଷ ܵߠ ‫ߠܥ‬ଷ ‫ܣ‬ଷ ൌ ൦ ଷ Ͳ Ͳ Ͳ Ͳ Ͳ ܽଷ ‫ߠܥ‬ଷ Ͳ ܽଷ ܵߠଷ ൪ ͳ Ͳ Ͳ ͳ (4) ‫ߠܥ‬ସ Ͳ ܵߠ Ͳ ‫ܣ‬ସ ൌ ൦ ସ Ͳ െͳ Ͳ Ͳ െܵߠସ Ͳ ‫ߠܥ‬ସ Ͳ ൪ Ͳ Ͳ Ͳ ͳ ‫ߠܥ‬ହ െܵߠହ ܵߠ ‫ߠܥ‬ହ ସ ‫ܣ‬ହ ൌ ൦ ହ Ͳ Ͳ Ͳ Ͳ Ͳ Ͳ Ͳ Ͳ ൪ ͳ ݀ହ Ͳ ͳ (5) Figure 7. The Matlab’s illustration of the joint links In the research. The block diagram of the robot arm (25) IV. Figure 8 shows the block diagram of the robot arm.979 - . We used its unique program language S-Function and programmed the expected control method. Figure 6 shows the Matlab’s illustration of the joint links. inputting the 3D model of the robot arm into software such as Matlab and Simulink(Matlab’s build-in tool). we can add the forward and inverse kinematic equations on every axis. When all the kinematic equations are completed. Then. we proposed a simulation method. The diagram of speed and position analysis After combining all the block diagrams of the six-axis. we proposed a simulation method. the simulation results would come out. Figure 7 shows the block diagram of the robot arm. We used its unique program language S-Function and programmed the expected control method. (6) Where Cθi = Cosθi ᧨ Sθi = Sinθi ᇭ The total transformation between the base of the robot arm and the hand will be: ଴ ܶହ ൌ ‫ܣ‬ଵ ൈ ‫ܣ‬ଶ ൈ ‫ܣ‬ଷ ൈ ‫ܣ‬ସ ൈ ‫ܣ‬ହ ݊௫ ‫݋‬௫ ܽ௫ ‫݌‬௫ ݊௬ ‫݋‬௬ ܽ௬ ‫݌‬௬ ൌ ൦݊ ‫݋‬ (7) ܽ௭ ‫݌‬௭ ൪ ௭ ௭ Ͳ Ͳ Ͳ ͳ where ܵ௜ ൌ ܵ݅݊ߠ௜ ‫ܥ‬௜ ൌ ‫ߠݏ݋ܥ‬௜ ܵଶଷ ൌ ܵ݅݊ሺߠଶ ൅ ߠଷ ሻ ‫ܥ‬ଶଷ ൌ ‫ݏ݋ܥ‬ሺߠଶ ൅ ߠଷ ሻ ܵଶଷସ ൌ ‫݊݅ݏ‬ሺߠଶ ൅ ߠଷ ൅ ߠସ ሻ ‫ܥ‬ଶଷସ ൌ ‫ݏ݋ܥ‬ሺߠଶ ൅ ߠଷ ൅ ߠସ ሻ ݊௫ ൌ ‫ܥ‬ଵ ‫ܥ‬ଶଷସ ‫ܥ‬ହ ൅ ܵଵ ܵହ ݊௬ ൌ ܵହ ‫ܥ‬ଶଷସ ‫ܥ‬ହ െ ‫ܥ‬ଵ ܵହ ݊௭ ൌ െܵଶଷସ ‫ܥ‬ହ ‫݋‬௫ ൌ ‫ܥ‬ଵ ‫ܥ‬ଶଷସ ܵହ ൅ ܵଵ ‫ܥ‬ହ ‫݋‬௬ ൌ ܵଵ ‫ܥ‬ଶଷସ ܵହ െ ‫ܥ‬ଵ ‫ܥ‬ହ ‫݋‬௭ ൌ ܵଶଷସ ܵହ ܽ௫ ൌ െ‫ܥ‬ଵ ܵଶଷସ ܽ௬ ൌ െܵଵ ܵଶଷସ ܽ௭ ൌ െ‫ܥ‬ଶଷସ ’୶ ൌ ‫ܥ‬ଵ ሺܽଶ ‫ܥ‬ଶ ൅ ܽଷ ‫ܥ‬ଶଷ െ ݀ହ ܵଶଷସ ሻ ‫݌‬௬ ൌ ܵଵ ሺܽଶ ‫ܥ‬ଶ ൅ ܽଷ ‫ܥ‬ଶଷ െ ݀ହ ܵଶଷସ ሻ ‫݌‬௭ ൌ ݀ଵ െ ܽଶ ܵଶ െ ܽଷ ܵଶଷ െ ݀ହ ‫ܥ‬ଶଷସ Figure 8. inputting the 3D model of the robot arm into softwares such as Matlab and Simulink(Matlab’s build-in tool). Figure 9. the simulation results would come out. Then. SIMULATION OF THE ROBOT ARM In the research. . finishing the inverse kinematics simulation in Matlab software (Figure 12). and the diagram of speed and position analysis will be obtained as shown in Figure 9.. the angle of each joint of the robot arm can be computed and saved as an Excel file. Figure 10. the motion controller runs according to the user’s preset program. we could make a five axis robot arm simulation as shown in Figure 9 by forward kinematics. what angles do the joints need to be in the achieve that end point. the manipulator’s position would be shown as the way we wanted it. every axis’ parameter (such as: PID parameter) must be adjusted first. so that every axis’ motor could achieve excellent control response. velocity control. I n t hi s r e sear c h. Figure 13 shows the hardware configuration of the sixaxis robot arm. As shown in Figure 11. The manipulator was configured to move through a motion path like “123”. Therefore. Given the end point of the manipulator. and put it in the work section of the Matlab software. The hardware configuration of the six-axis robot arm . enter the rotation angle of each axis. we al so ma d e i n ver se ki n e ma ti c s a na l ys i s o f t he r o b o t a r m. In addition. the manipulator was configured to move through a motion path like “123”. Figure 12. Before using the 8-axis motion control card to control the robot arm’s movements. Matlab software was used to make the inverse kinematics simulation of the robot arm V. the manipulator of the robot arm can move through a motion path like “123”. PC based controller 8 axis motion control card Drivers Figure 11. With the toolbox’s additional functions. After setting up the moving path.press the execution key. From the hardware design point of view. After . This joint angle file can be sent to the controller of the robot arm. the drivebot as shown in the down-left corner of Figure 10. HARDWARE CONFIGURATION In order to achieve the purpose of accurate positioning. Then. we could use the toolbox in the M-file folder. This research used the National Instruments’ (NI) eight-axis DSP based motion control card to control the six-axis robot arm. or through learning the kinematic path of the robot arm. In the kinematic equation control window. Firstly. we could load the robot arm’s assembly model. the control structure of robot arm can be divided into kinematic path programming. position control. This 8-axis motion control card could use the computer to automatically tune every axis’ PID parameter. in order to produce the motion control code of the robot arm. and current voltage control. Or we could use its sliding control to fast display the manipulator’s position.980 - DC servo motor Axis 1 Axis 2 Axis 3 Axis 4 Axis 5 Axis 6 Figure 13. a motion planning interface was used to plan the trajectory of the manipulator of the robot arm. etc. Five axis motion simulation by forward kinematics. R. (a) VII. 1982]. in press. “On certain integrals of Lipschitz-Hankel type involving products of Bessel functions.the robot arm can pick and place a box from right to left across a partition plate. Jacobs and C. 1963. the parameter of the motor driver must be simultaneously tuned.” in Magnetism. EXPERIMENTAL RESULTS After completing the physical cabling. it would represent that this axis’ motor has completed the tuning. we will finish producing the second robot arm and establishing its kinematic paths and dynamics analysis. As shown in Figure 14(a)-(j). After testing and adjusting each axis’ motor. April 1955. Noble. ACKNOWLEDGMENT (b) This work is sponsored by the National Science Council. we began to utilize an 8-axis motion control card to make the PID parameter tuning of each axis’ motor. During the tuning process. and vibration and noise were not produced. In the end.981 - G. 1892. With the aid of machine vision system and force sensor.97-2221E-274 -009. A247. Oka. K. “Title of paper if known. Tagawa. vol. K. Taiwan. reinforcement learning. New York: Academic.. “Fine particles. 740–741. London. If the motor’s position tolerance was close to zero. we need to work on the cooperative operation and motion control of two robot arms. Eason. the two robot arms will be able to complete a lot of tasks. After each axis has completed the test. I. etc. “Electron spectroscopy studies on magneto-optical media and plastic substrate interface. Eds.VI. After completing these experiments. the neural control. Finally. B. Name Stand. and Y. while doing an actual testing of the robot arm’s kinematic paths. Sneddon. 3rd ed. CA: University Science. Soc. T. as well as inserting different control methods. Bean. P. 1989. Magn. (references) J. Abbrev. M. we could use the multi-axis control program to complete the multi-axis synchronous motion control. The Technical Writer's Handbook. Republic of China under grant number NSC. N. vol. 2. For example. S. the PC based controller can control the robot arm to grab a box through a moving path successfully. pp. J. and verified the robot arm’s kinematic equations. G. M. and I. 2. III.” J. Yorozu. pp. Rado and H. . 301. “Title of paper with only first word capitalized.” unpublished. Trans. A Treatise on Electricity and Magnetism. Magnetics Japan. Suhl. Nicole. p. and the fuzzy control theory. so that some difficult and complicated movements could be easily executed. 529–551. These could be applied to the robot arm’s dynamic control. August 1987 [Digests 9th Annual Conf.” IEEE Transl.68–73.. Roy. vol. we utilized Visual Basic (VB) to write the control program for each axis. vol. Hirano. Oxford: Clarendon. pp. pp. REFERENCES [1] (c) (d) [2] [3] (e) [4] [5] (f) [6] [7] (g) (h) (i) (j) Figure 14.. Y. In addition. Clerk Maxwell. thin films and exchange anisotropy. 271–350. . Japan. The robot arm pick and place a box from right to left across a partition plate. Elissa. we make some experiments. each axis’ data calculated from inverse kinematics were utilized along with the DSP based motion control system to complete the control of the six-axis robot arm. Mill Valley.” Phil. The future goal is to make the robot arm be able to grab things by using the machine vision system. CONCLUSION This article has completed the design and production of one robot arm of the intelligent robot. Young.
Copyright © 2024 DOKUMEN.SITE Inc.