Interfacing a PUMA 500 Robot with a PC-based Controller · Yellow PUMA (ECE4007L01) iii EXECUTIVE SUMMARY The Unimation PUMA (Programmable Universal Machine for Assembly, or Programmable
Post on 07-Jul-2018
215 Views
Preview:
Transcript
Proposal
Interfacing a PUMA 500 Robot with a PC-based Controller
ECE4007 Senior Design Project
Section L01, Yellow PUMA Team
Josh Chao, Team Leader
Francis Fernandes
Denny Lie
Jackson Tanis
Submitted February 4, 2009
Yellow PUMA (ECE4007L01) ii
TABLE OF CONTENTS
Executive Summary ........................................................................................................ iii
1. Introduction ............................................................................................................... 1
1.1 Objective ......................................................................................................... 1
1.2 Motivation ....................................................................................................... 1
1.3 Background ..................................................................................................... 2
2. Project Description and Goals .................................................................................... 3
3. Technical Specification ............................................................................................... 4
4. Design Approach and Details ...................................................................................... 8
4.1 Design Approach ............................................................................................. 8
4.2 Codes and Standards ........................................................................................ 10
4.3 Constraints, Alternatives, and Tradeoffs........................................................... 10
5. Schedule, Tasks, and Milestones ................................................................................. 11
6. Project Demonstration ................................................................................................ 12
7. Marketing and Cost Analysis ...................................................................................... 14
7.1 Marketing Analysis .......................................................................................... 14
7.2 Cost Analysis ................................................................................................... 15
8. Summary ..................................................................................................................... 17
9. References .................................................................................................................... 18
Appendix A ...................................................................................................................... 21
Yellow PUMA (ECE4007L01) iii
EXECUTIVE SUMMARY
The Unimation PUMA (Programmable Universal Machine for Assembly, or
Programmable Universal Manipulation Arm) 500 robot is a six-axis articulating arm robot.
Applications such as welding, packaging, palletizing, and parts installation have been automated
using industrial robots for higher efficiency and productivity. Application engineering, design
experience, and enhanced manufacturing techniques have resulted in a powerful robot line with
longer reach and higher payload capabilities. The advanced design and flexibility of the robots
offer new opportunities for productivity and quality improvement in a wide range of
manufacturing operations.
Georgia Tech’s ME department has donated one such robot to the ECE department.
Currently the robot’s controller is not functioning and the task involves inspecting the
mechanical aspects of the robot and replacing the robot’s control system with a Rockwell
Automation controller. The next phase would involve setting up all the components – PC, control
system, motor drivers, motors, and the robot, to communicate and interface with each other.
Once these components are functioning, kinematic equations need to be programmed into the
control system in order to make the end effector of the robot move to a specified x, y, and z
coordinate with a specified rotational direction within an error of ± 1 cm and ± 3 degrees
respectively.
PUMA robots have six degrees of freedom and re-programming ability which allows
them to handle various tasks with software updates thereby reducing production cost. With all
the costs combined the robot is worth $13,447 per unit installation. With successful completion
of the robot, the functional system can be used as an automated measurement tool for research
and groundwork for future ECE student’s projects.
Yellow PUMA (ECE4007L01) 1
Interfacing a PUMA 500 Robot with a PC-based Controller
1. INTRODUCTION
Industrial robots are reshaping manufacturing industries [1]. Many applications, such as
welding, packaging, palletizing, and parts installation, have been automated using industrial
robots for higher efficiency and productivity. In particular, the six-axis articulating arm robots
are extensively used due to their wide range of motion and reach [2].
Georgia Tech’s ME department has donated one such arm robot, the Unimation PUMA
500, to the ECE department. The team members will inspect the mechanical aspects of the robot
and replace the broken control system with a Rockwell Automation controller. The functional
system can then be used as an automated measurement tool for research and groundwork for
future ECE student’s projects.
1.1 Objective
The Unimation PUMA 500 robot will be mechanically and electrically repaired. Dr.
Thomas E. Michaels, an Electrical and Computer Engineering professor, requested for the
robot’s motors to be inspected and the control system to be replaced with a Rockwell
Automation controller. Then, given a single or a series of inputs, the robot shall move its end
effectors to a specific position in the spatial coordinates.
1.2 Motivation
This project will give the team members a practical approach in building arm robot
control systems. This experience will prove to be useful for the team member’s future careers in
robotic industries, as articulating arm robots are widely used in manufacturing industries.
Yellow PUMA (ECE4007L01) 2
The functional system can be used by Dr. Thomas E. Michaels as an automated
measurement tool for research and groundwork for future ECE projects. In addition, the success
of this project will be useful for Rockwell Automation, as it proves that the Rockwell
Automation controller can be used to control Unimation PUMA 500 robots.
1.3 Background
Industrial Robots
As mentioned above, industrial robots are reshaping the manufacturing industries. North
American manufacturing companies have spent up to $877 million on industrial robots since
2003 [1]. Depending on the structures, industrial robots can be categorized into Selective
Compliant Assembly Robot Arm (SCARA), Gantry (Cartesian coordinate robot), and
Articulating Arm [3]. The articulating arm robots are widely used in manufacturing industries
due to their wide range of motion and reach [2].
Depending on the end effectors, an articulating arm robot can perform different tasks,
such as welding, assembly, painting, and packaging. Some of the commercial welding robots
include Panasonic VR-006, Motoman UP6, Fanuc, and ABB IRB 1600 [4].
Rockwell Automation Controller
Rockwell Automation is a global provider of industrial automation, power, control, and
information solutions. Brands in the industrial automation include Allen-Bradley and Rockwell
Software. In robotics industry, Rockwell Automation’s Programmable Automation Controllers
(PAC), such as CompactLogix system, ControlLogix system, and SoftLogix5800 controller, are
widely used. These controllers provide the reliability of a PLC, task flexibility, and computing
power of a PC for motion control. These PAC have built-in software called RSLogix 5000
(v.17), which supports kinematics control for multi-axes robots. The software eliminates the
Yellow PUMA (ECE4007L01) 3
expenses for additional robot controllers, software, and integration time in building the whole
robot system [5].
Other Related Research
The Unimation Puma 500 robot donated by the ME department was actually used for a
senior design project by two ME students in 1999 [6]. Although the focus of the previous project,
interfacing force or torque sensors on the robot, is irrelevant to the topic of this project, the
reports from the previous project might provide useful information about the technical
specifications and usage of the robot.
2. PROJECT DESCRIPTION AND GOALS
The Unimation PUMA 500 robot will be mechanically inspected and fixed, i.e. each of
the six motors in the robot joints. Next, the robot’s control system will be replaced with a
Rockwell Automation control system, which includes a Programmable Automation Controller
(PAC), motor drivers, and I/O module cards. After the robot and the controller are interfaced and
connected, the team members will program the robot to move its end effectors to a specific
position in the spatial coordinates. Once the system is built and functional, it will have the
following properties:
Functional motors in each of the robot joints
Interface connector between the robot and the controller
Compiled programs of kinematic principles to control the robot’s movement
The system will also meet the following goals:
Ability to move all of the six axes within the robot’s joint angles specification
Yellow PUMA (ECE4007L01) 4
Ability to read a single input and move the end effectors to a user-defined position
If time permits, the following goals shall be met:
Ability to read a series of inputs and move the end effectors to all of the specified
positions forming a trajectory
Ability to move to a position within an error of ± 1cm and ± 3 degree
3. TECHNICAL SPECIFICATIONS
The Unimation PUMA 500 robot has six revolute joints, and each joint is driven by a DC
servomotor. The orientation of each axis and the angle of rotation of each joint are shown in
Figure 1 and Table 1 [6]. The maximum static load at the tip of the end effectors is 25 N and the
maximum straight line velocity is 51 cm/sec. The arm is 86.6 cm long while the wrist is 5.6 cm
long shown in Figure 2. The height of the tower, i.e. the distance between the base of the robot
and Joint 2 in Figure 1, is 67.2 cm. The total weight of the robot is 54.4 Kg [7]. Detailed
technical specifications can be viewed in Table 2.
Yellow PUMA (ECE4007L01) 5
Table 1. Joints, Axis of Rotation, and Maximum Angle of Rotation
Joint Axis of Rotation Maximum Angle of
Rotation
Joint 1 – Waist Z 320°
Joint 2 – Shoulder X 250°
Joint 3 – Elbow X 270°
Joint 4 - Wrist Rotation Y 300°
Joint 5 - Wrist Bend X 200°
Joint 6 – Flange Z 532°
Figure 1. Schematic of Unimation PUMA 500 robot with joint angles,
axis of rotation, and maximum rotation range [6].
Yellow PUMA (ECE4007L01) 6
Figure 2. Schematic of Unimation PUMA 500 robot with dimensions of the robot in
inches [8].
Yellow PUMA (ECE4007L01) 7
Table 2. Detailed Technical Specifications of the Unimation PUMA 500 Robot
Axes 6 revolute axes
Configuration 6 degrees of freedom
Drive Electric DC servomotors
Power Requirement 110-130 VAC, 50-60 Hz, 1500 Watts
Repeatability ± 0.1 mm
Maximum Static Load 25 N
Maximum Straight Line Velocity 51 cm/sec
Reach
86.6 cm to the wrist
92.2 cm to the flange
Weight 54.4 kg
The motors will be driven by the Rockwell Ultra 3000 motor drivers [8]. The controller is
a ControlLogix PAC system by Rockwell Automation and can be connected to a PC and
programmed using the RSLogix 5000 programming language also developed by Rockwell
Automation [9].
Yellow PUMA (ECE4007L01) 8
4. DESIGN APPROACH AND DETAILS
4.1 Design Approach
The Unimation PUMA 500 robot needs a new control system and motor drivers, because
the old control system and motor drivers are not functioning. All six motor drivers of the
Unimation PUMA 500 robot will be replaced with the Ultra 3000 motor driver model number
2098-DSD-020 by Rockwell Automation. The motor driver produces 100 – 240 VAC with a
frequency range of 47 – 63 Hz and a 2000 Watt continuous power output. If the motors are
broken or do not comply with the motor drivers, the motors will be replaced. The motors will be
selected based on the rotation speed, torque, and dimensions of the mount. Motors will be
selected from the F-Series, Y-Series, 1326AB, or MP-Series Low-Inertia brushless servo motors
provided by Rockwell Automation [8].
Each motor will be controlled by the CompactLogix PAC system by Rockwell
Automation. The CompactLogix PAC system will be connected to a Windows based PC over a
network using Ethernet connection as shown in Figure 3. The PAC system is programmable
using the RSLogix 5000 programming language provided by Rockwell Automation.
Yellow PUMA (ECE4007L01) 9
Each motor will be removed from the robot and tested separately. As a safety measure,
the maximum range of rotation for each joint will be tested and programmed into the user
interface once the motor is mounted back into the robot. This procedure is to prevent twisting
and breaking of the robot. After all the motors have been mounted to the robot, forward
kinematics formulation will be programmed into the control system. Forward kinematic
principles are used to translate the joint angle configurations of the robot into the Cartesian
coordinate position of the end effectors in space. At this point, the application program will
move one motor at a time for the end effectors to reach its destination.
Next, a simple trajectory generation will be formulated based on the change or difference
between the initial and final joint angle configuration. The change in the joint angles is evenly
divided by the number of via points. For example, the change in an angle of a joint from its
initial state to its final state is 40 degrees, and 4 via points are desired to reach destination.
Figure 3. Block diagram of the components of the robot control system.
PC
PAC
Motor
Driver Motor
Driver
Motor
Driver
Motor
Driver
Motor
Driver
Motor
Driver
Motor Motor Motor Motor Motor Motor
Yellow PUMA (ECE4007L01) 10
Therefore the motor needs to rotate by 40 / (4+1) = 8 degrees per unit time. At this point, the
application will move all the motors simultaneously.
Once this phase of the project is accomplished and if time permits, inverse kinematic
functions will be formulated and added into the robot’s control interface. Inverse kinematics
allows translation from Cartesian coordinate to the joint angle configurations. If this
functionality is implemented, the user can input in Cartesian coordinates, i.e. the x, y, z
coordinates, and the angles of orientation of the wrist.
4.2. Codes and Standards
The design will use parts from Rockwell Automation. The connection between the motor
drivers and the motion controller will use the 2090-U3AE-D44xx cable connector by Rockwell
[10]. The motion controller is then connected to the PC using an Ethernet cable connection. The
programming language that will be used to program the motion controller is RSLogix 5000 by
Rockwell Automation.
4.3. Constraints, Alternatives, and Tradeoffs
The motor drivers need to be replaced with the Ultra 3000 motor drivers in order to
comply with the CompactLogix PAC system. The motors will have to be replaced if they are not
functioning properly or if they do not comply with the new motor drivers.
The user interface can be developed using LabView, Matlab, or Python. Programming in
any one of those languages will require an OPC library to communicate with the hardware. A
possible economic choice for an OPC library is the Open OPC [11]. However, this project will
utilize the RSLogix 5000 programming language, provided by Rockwell Automation. This
approach will eliminate driver issues from using other programming languages. In addition, the
Yellow PUMA (ECE4007L01) 11
RSLogix 5000 programming software includes Kinematics Robot Control Package, which is
capable of coordinating up to three axes [12].
In programming the robot, taking a forward kinematics approach is more preferable than
an inverse kinematics approach, because solving for a forward kinematics problem yields to a
single unique solution, while solving for an inverse kinematics problem yields to multiple
solutions making it more challenging. In addition, implementing inverse kinematics feature into
the robot requires a complex algorithm to determine the most efficient solution. Due to time
constraints, this project might not be able to implement the inverse kinematics feature into the
robot.
5. SCHEDULE, TASKS, AND MILESTONES
The design team will work as one entity towards each component of the project.
Successful completion of each phase of the project is important to move onto the next level and
hence all members will work together every step of the way. Table 3 displays the scheduled
tasks, duration, start dates, end dates, level of difficulty, and the main person responsible for the
task.
Yellow PUMA (ECE4007L01) 12
Table 3. Schedule, Tasks, and Milestones
January 12th
marks the commencement of the project and April 24th is the anticipated end
date. Appendix A shows the Gantt chart of the project.
6. PROJECT DEMONSTRATION
The demonstration of the project will take place in the Van Leer building Room 113, in
the last week of April. The goal of the demonstration is to show that the interface between each
component is established. The demonstration will be consisted of the following steps:
Desired position of each motor will be randomly generated and entered in the PC.
The motor in the arm robot will then move to the desired position one at a time.
Yellow PUMA (ECE4007L01) 13
Angle of each motor will be measured and compared to the input value. The goal is
achieved when the difference is within three degrees.
If time permits, the following steps will be performed:
Desired position of each motor will be randomly generated and entered in the PC. All
six motors in the arm robot will then move to the desired position simultaneously.
Angle of each motor will be measured and compared to the input value. This step is
accomplished if the difference is within three degrees for each motor.
Desired position of the end effectors will be randomly generated and entered in the
PC. The arm robot will then move the end effectors to the desired position. Location
and orientation of the end effectors will be measured and compared to the input value.
This step is accomplished if the error is within one cm and three degrees in any
Cartesian axis.
A spreadsheet of the desired positions will be loaded in the PC. The arm robot will
execute every instruction to form a smooth trajectory, such as drawing figure eight
with its end effectors.
During the demonstration, each of the four team members will have his own duty:
Enter numeric inputs provided by the PC or an audience and also demonstrate the PC
user interface.
Measure the angle of each motor in the robot or the location and orientation of the
end effectors and report the result.
Yellow PUMA (ECE4007L01) 14
Record all the results on the board and explain if the results meet specifications and
the reason for success and failure.
Explain concepts behind each step and prepare for an emergency stop in case of any
unexpected event.
7. MARKETING AND COST ANALYSIS
7.1 Marketing Analysis
The Unimation PUMA 500 robot has six degrees of freedom that allows it to reach any
point in space with any orientation. In 2004, about 5% to 15% of the industrial robots in injection
molding industry were six-axis articulated robots [12], leaving a big market for PUMA 500
robots to grow. However, since PUMA 500 series arm robot was manufactured in 1985 [7], it is
not equipped with modern technology such as a high speed microprocessor or zero-backlash
mechanism such as harmonic drive gearing [13]. Compared to the KUKA 5 sixx R850 [14], a
modern arm robot in the same class, the PUMA arm robot is inferior in many aspects such as
speed, repeatability, and payload, and is shown in Table 4.
Table 4. Comparison between PUMA 500 Robot and KUKA 5 sixx R850 Robot
Technical Specifications PUMA 500 KUKA 5 sixx R850
Axes 6 6
Repeatability ± 0.1 mm ± 0.03mm
Maximum Static Load 2.5 kg 5 kg
Maximum Speed 0.508 m/s 7.6 m/s
Reach 914 mm 814 mm
Yellow PUMA (ECE4007L01) 15
Although the PUMA 500 arm robot does not excel in comparison, it is capable of
completing any task where speed and accuracy is not critical.
Hand-held teach pendants are commonly used for programming arm robot in the current
market. Motoman NXC100 is an example of a hand-held teach pendant [15]. A PC-based
controller will replace the original hand-held teach pendant to control the PUMA arm robot.
According to [16], PC-based controllers have an advantage of reduced cost, improved
robustness, and open architecture platform. Six degrees of freedom and re-programming ability
allows the PUMA robot to handle different types of tasks with software updates, and thereby
reducing production cost and increasing its potential in the market.
7.2 Cost Analysis
Four major components required for the project are: motors in the arm robot, motor
drivers, PAC, and PC. The cost and status of each of the components is listed in Table 5.
Yellow PUMA (ECE4007L01) 16
Table 5. Cost and Status of Major Components
Item Description Part Number Typical
Cost Status Notes
Arm
Robot
[17]
Unimation
PUMA 500 N/A $5,000
Donated by
Dr. Harvey
Lipkin
Discontinued
Product; Used
robot is available
at auction sites
Motor
Drivers
(6) [18]
Ultra 3000
500W
2.5A/7.5A
2098-DSD-
005 $5,820
To be
Purchased
Sponsored by Dr.
Thomas E.
Michaels
Compact
Logix
[18]
EtherNet
Controller, 512
Kbyte memory,
16DI, 16DO,
24VDC
1769-L23E-
QB1B $1,816
Provided by
Rockwell
Automation
L2x Platform
PC [19]
Dell D600 P-M
1.4GHz/256MB
/20GB/XP
N/A $240
Provided by
Dr. Thomas
E. Michaels
and Phillip
Marks
Software
[18]
RSLogix 5000
Service Edition
9324-
RLD000ENE $571
Same as
Above
Total $13,447
As shown in Table 5, most hardware components are provided free of cost for the project.
he robot is donated by Dr. Harvey Lipkin, an Associate Professor in Automation and
Mechatronics. A laptop with RSlogix 5000 software is provided by Dr. Thomas E. Michaels and
Phillip Marks, an ECE graduate student. CompactLogix system is provided by Rockwell
Automation. The major components that are not present are the six Ultra 3000 motor drivers,
which cost $5,820 in total.
Dr. Thomas Michaels is the sponsor for this project and will cover the cost above the
$403 allowance for the Senior Design Project class. Real costs may vary as the functionality of
the motors is currently unknown, special harness may be required, and discounts from Rockwell
Automation may apply.
Yellow PUMA (ECE4007L01) 17
The other cost of the project would be the labor, which in this case is the work put in by
the group members. Table 6 projects the number of hours spent on a particular task for each
member.
Table 6. Estimated Labor Hours
Task J. Chao (Hr.) J. Tanis (Hr.) D. Lie (Hr.) F. Fernandes
(Hr.)
Class
Lecture 26 26 26 26
Reports 34 34 34 34
Website development 0 0 12 0
Project
Project Definition 32 32 29 32
Robot Inspection and Testing 48 48 45 48
Interface Components 26 26 23 26
Code Implementation 28 28 25 28
Total per Person 194 194 194 194
Total Hours 776
8. SUMMARY
The design team is continuing research on parts and components that need to be
purchased and implemented. Gathering information on Rockwell ControlLogix PAC system,
RSLogix 5000 software, motor drives, I/O module cards, and MP-Series Low-Inertia brushless
servo motors provided by Rockwell Automation [8]. The group has met with Dr. Thomas E.
Michaels who has stated the goals and objectives, and provided useful insight for a successful
working Unimation PUMA 500 robot controlled by a Rockwell Automation PLC. Next two
weeks will be dedicated in disassembling the motors from the robot, testing each motor
individually, repairing if possible, and replacing if necessary. Implementation will then take
place once all the parts have arrived.
Yellow PUMA (ECE4007L01) 18
9. REFERENCES
[1] J.M. Pethokoukis. (2004, Mar. 7). Industrial robots are reshaping manufacturing. U.S.
News [Online]. Available:
http://www.usnews.com/usnews/biztech/articles/040315/15eerobots.htm
[2] ATSI. (2008). Articulating Arm Robot [Online]. Available:
http://www.atsi.cc/articulating-arm-robot.htm
[3] ATSI. (2008). Robot Basics [Online]. Available: http://www.atsi.cc/robotbasics.htm
[4] RobotWorx. (2009). Industrial Arc Welding Robot Application [Online]. Available:
http://www.robots4welding.com/applications.php?app=arc+welding
[5] Rockwell Automation. (2007). Rockwell Automation Incorporates More Than 30 Product
Enhancements into Latest Version of Rockwell Software RSLogix 5000 Programming
Software [Online]. Available: http://phx.corporate-
ir.net/phoenix.zhtml?c=196186&p=irol-newsArticle&ID=957142&highlight=
[6] W. Bihr and F. Degrange. (1999). Interfacing of a Force/Torque sensor on a PUMA 500
robot. Georgia Inst. of Technology. Atlanta, GA. [Online]. Available:
http://helix.gatech.edu/Students/SiouxWill/project.html
[7] Unimation (1985, March). PUMA Mark II Robot 500 Series Equipment Manual for VAL
II and VAL PLUS Operating System.
Yellow PUMA (ECE4007L01) 19
[8] Rockwell Automation (2004, September). Ultra 3000 Digital Servo Drives [Online].
Available:
http://literature.rockwellautomation.com/idc/groups/literature/documents/br/2098-
br002_-en-p.pdf
[9] Rockwell Automation (2008, July). CompactLogix Controllers Selection Guide [Online].
Available:
http://literature.rockwellautomation.com/idc/groups/literature/documents/sg/1769-
sg001_-en-p.pdf
[10] Rockwell Automation (2004, April). Ultra 3000 Digital Servo Drives Installation Manual
[Online]. Available:
http://literature.rockwellautomation.com/idc/groups/literature/documents/in/2098-in003_-
en-p.pdf
[11] SourceForge.net. OpenOPC for Python [Online]. Available:
http://openopc.sourceforge.net/
[12] M. Knights, Six axis robot: where they fit in injection molding, Plastics Technology
[Online Article]. October 1, 2004. Available:
http://goliath.ecnext.com/coms2/summary_0199-1325378_ITM
[13] A. Lauletta (2006, April), The Basics of Harmonic Drive Gearing, Power Transmission
Engineering, [Magazine]. pp.32.
Yellow PUMA (ECE4007L01) 20
[14] KUKA Roboter GmbH, “KR 5 sixx R850,” [Company Website], Available:
http://www.kuka-
robotics.com/usa/en/products/industrial_robots/small_robots/kr5_sixx_r850/start.htm
[15] RobotWorx, “Motoman NX100 Teach Pendant,” [Company Website], Available:
http://www.robots.com/motoman.php?controller=nx100
[16] M. Faroog, “Implementation of a new PC-based Controller for a PUMA robot,” Journal
of Zhejiang University-Science A,” vol. 8, no.12, pp. 1962-1970, Nov. 2007.
[17] Ebay Inc., ”Staubli PUMA 500 Robotic Robot Arm 1621 hrs CS4 Panel,” [Company
Website], Item number: 270328501673, Available: http://cgi.ebay.com/STAUBLI-
PUMA-500-ROBOTIC-robot-ARM
[18] Rockwell Automation Shop, [Company Website], Available:
http://shop.rockwellautomation.com/RA/index.jsp?scrnCurrentStore=RA
[19] Ginstar Computer Inc., “Dell D600 P-M 1.4GHz/256MB/20GB w/CD-ROM/XP,”
[Company Website], Available: http://www.ginstar.com/productList.aspx?category=41
Yellow PUMA (ECE4007L01) 21
APPENDIX A – PROJECT GANTT CHART
See next page for project Gantt chart.
Yellow PUMA (ECE4007L01) 22
top related