24
Design and Fabrication of a Robotic arm for Material Handling Bureau of Research and Consultancy UNIVSERSITI TEKNOLOGI MARA 40450 Shah Alam, Selangor Malaysia Dr. P. Nageswara Rao Dr Anuar Ahmad Dr Abdul Rahman Omar En Muhammad Azmi Ayub February 2001

Lp_dr p Nageswara Rao 01_24

Embed Size (px)

DESCRIPTION

pneumatic robotic arm

Citation preview

  • Design and Fabrication of a Robotic arm for Material Handling

    Bureau of Research and Consultancy UNIVSERSITI TEKNOLOGI MARA

    40450 Shah Alam, Selangor Malaysia

    Dr. P. Nageswara Rao Dr Anuar Ahmad

    Dr Abdul Rahman Omar En Muhammad Azmi Ayub

    February 2001

  • Design and Fabrication of a Robotic arm for Material Handling

    Dr. P. Nageswara Rao Dr Anuar Ahmad

    Dr Abdul Rahman Omar En Muhammad Azmi Ayub

    February 2001

    COPYRIGHT UiTM

  • Dr. P. Nageswara Rao Faculty of Mechanical Engineering UNIVERSITI TEKNOLOGI MARA 40450 Shah Alam, Selangor Malaysia

    Date: 13 December, 2000 Project file no.:

    To The Head Bureau of Research and Consultancy UiTM Shah Alam

    Kind attention: Dr Zainon, Coordinator, Science and Technology

    Madam

    The above research project has been successfully completed within the stipulated time. All the objectives as specified in the original proposal were achieved. The robot was fabricated and is fully operational. We herewith enclose^ copies of the final project report for your reference.

    Thanking you

    (Dr. P. N^gesjwara Rao) Principal researcher

    COPYRIGHT UiTM

  • Members of the research team

    Dr. P. Nageswara Rao

    2sv^-^j (S ta ture )

    Dr Anuar Ahmad

    (Signature)

    Dr Abdul Rahman Omar

    M >ienatu

    llU (Signature)

    En Muhammad Azmi Ayub

    (Signature)

    COPYRIGHT UiTM

  • Acknowledgements

    The practical nature of this project requires that a large amount of help is needed to successfully complete it. We would like to express our gratitude and appreciation to the Bureau of Research & Consultancy (BRC) for the readiness with which they have co-operated in the execution of every phase of this project.

    The students who have worked for the completion of this project as part of their final project have contributed immensely for the successful completion. They are Mr Muzafar Mansor and Mr Norashid Ramli @ Zainal (Mechanical Engineering) and Mr. Izazuly B Yaakup (Electrical Engineering) who have taken it as a challenge and were able to provided the necessary hard work to complete the project in the specified time.

    We would like to express our thanks to the staff of the Faculty of Mechanical Engineering in particular to Mr. Abd. Halim (Technical Assistance), Mr. Adam (Technician) and others, who have helped in the fabrication of some of the components. Also generous help has been received from the CADEM Centre staff, in particular Mr. Razip, Mr. Mohd. Shukor and others.

    v

    COPYRIGHT UiTM

  • Abstract

    The commercial robots are expensive for use in the educational institutions. Further the operation of them will not leave room for experimentation which is necessary in an educational institution. Further a large number of components that can be used for building a robot are readily available in the market. Hence this project has been taken up to allow us to build a working robot using as many of the off the shelf components to provide he necessary flexibility. This would make it a low cost robot with enough flexibility for the students to experiment the various functions of the robot.

    The mechanical component of the manipulator is built with three axes, one rotary and two linear. This configuration is most common to be used as a material handling device for machine tools. The rotary axis is achieved by making use of a pneumatic rotary table and one linear axis is by means of a pneumatic cylinder. The second linear axis in the Z-direction is achieved by the use of an AC servomotor with a ball screw and linear motion elements to provide for accurate positioning capability.

    The gripper has been designed for cylindrical components, since this robot is conceived as a material handling unit for a CNC turning centre. All the necessary design calculations have been done and the finite element analysis was carried out for the main structure.

    The control of the robot is one of the crucial elements. A PC is used as a controller. The motion control is carried with the help of a motion control card DC2-PC100. This has the ability to control 2 servo and 2 stepper motors in addition to other digital and analogue controls. The control program is developed with the necessary functioning.

    VI

    COPYRIGHT UiTM

  • Table of contents

    Acknowledgements Abstract

    Chapter 1 Introduction 1

    Chapter 2 Robots an introduction 5

    Chapter 3 Robot control concepts 14

    Chapter 4 Robot manipulator design 18

    Chapter 5 Robot controller design 26

    Chapter 6 Robot assembly 51

    Chapter 7 Conclusions & Suggestions for future work 60

    Bibliography 62

    vu

    COPYRIGHT UiTM

  • Chapter 1

    Introduction

    COPYRIGHT UiTM

  • Robot is an automatically controlled material handling unit that is widely used in the manufacturing industry. It is generally used for high volume production and better quality. Implementation of robot technology with integration of automatic system can contribute to increasing of productivity of the company and enhances the profitability of the company.

    The word 'robot' first appeared in 1921 in the Czech playwright Karel Capek's play "Rossum's Universal Robots'. The word is linked to Czech words Robota (meaning work) and Robotnik (meaning slave). Computer Aided Manufactures International of USA describes the meaning of robot as a device tlmt performs functions ordinarily ascribed to human beings, or operates with wlwt appears to be almost human intelligence. Another definition from Robot Institute of America is ...a programmable multi function manipulator designed to move and manipulate material, parts, tools or specialized devices through variable programmed motions for the performance of a variety of specified tasks.

    ISO defines a robot as: A robot is an automatically controlled, reprogrammable, multipurpose, manipulative machine with several reprogrammable axes, which in either fixed in place or mobile for use in industrial automation application.

    Webster dictionary defines a robot as: An automatic apparatus or device tlmt performs functions ordinarily ascribed to human or operates with xulmt appears to be almost human intelligence.

    There are a number of successful examples of robot applications such as:

    Robots perform more than 98% of the spot welding on Ford's Taurus and Sable cars in U.S.A.

    A robot drills 550 holes in the vertical tail fins of a F-16 fighter in 3 hours at General Dynamics compared to 24 man hours when the job was done manually.

    Robots insert disk drives into personal computers and snap keys onto electronic typewriter keyboards.

    Robot Applications

    True to the above definitions of robot as an automatic machine, industrial robots are observed to perform the following tasks (shown in the ascending order of technological complexity) in manufacturing.

    a) Parts Handling: this may involve tasks like

    Recognizing, sorting/ separating the parts Picking and placing the parts at desired locations Palletizing and Depalletizing Loading and Unloading the parts on required machines

    b) Parts Processing: this may involve operations like

    2 COPYRIGHT UiTM

  • Routing Drilling Riveting Arc Welding Grinding Flame Cutting Deburring Spray Painting Coating Sandblasting Dip Coating Gluing Polishing Heat Treatment

    c) Product Building: this may involve assembly of typical products like

    Electrical Motors Car bodies Solenoids Circuit Boards and operations like

    Bolting Riveting Spot welding Seam welding Inserting Nailing Fitting Adhesive Bonding Inspection

    The automation of the above tasks greatly facilitates computer controlled manufacturing systems. Further, robots have often been used in undesirable and hazardous environment like that of excessive heat, dust, noise, fumes etc. and for dirty, dangerous dull and difficult tasks. Accordingly, industrial robot has become an essential component of all flexible manufacturing systems, subsystems, cells and modules. The robot application in U.S. are given in Table 1.

    Robots are being applied in industries because

    Hazardous or uncomfortable working conditions: In situations where there are potential dangerous or health hazards (like heat, radiation, toxicity, etc.) robots may be used. Some of the examples are hot forging, die casting, spray painting, etc.

    3 COPYRIGHT UiTM

  • Difficult handling: If the workpiece or tool involved in the operation is awkward in shape or heavy, it is possible that robot can do this job much better.

    Multi shift operation: For increasing production and reducing the costs, multi shift operations may be desirable in which robots can work continuously.

    Repetitive tasks: If the work cycle consists of sequence of elements which do not vary from cycle to cycle, it is possible that robot can be programmed to do the job.

    Higher accuracy: In situations where the accuracy of operation required is very high.

    Table 1: U.S. Robot sales by application

    Machine tending Material transfer (Machine tending) Spot welding Arc welding Spray painting/coating Processing (Drilling, grinding, etc.) Electronics assembly Other assembly Inspection Other

    Total

    1985 16% 16 26 10 10 5 6 5 5 1

    100

    1990 15% 15 15 10 10 7

    12 8 7 1

    100

    1995 15% 15 10 9 7 7

    14 12 10 1

    100

    This report details the effort made in the development of a robotic material handling system using personal computer and the motion control card to provide the necessary controls. The robot is a 3 axis with one rotary and two linear axes. It is a hybrid robot with one axis controlled by the servo motor while the other axes are controlled by the pneumatic devices to reduce the total cost of the robot.

    The second chapter details an introduction to the Robots in terms of the various functional elements present in the system. The various options possible are briefly detailed. The next chapter deals with the control concepts of the robot. This gives the ideas of various controlling methods possible and that are actually used in the commercial robots. The next chapter gives the actual design concepts of the manipulator portion of the robot. This gives the rationale of the design process used in the design of the manipulator, which was subsequently fabricated. The next chapter gives the robot controller design using the motion controller card and its interface with the various control elements. The chapter gives the details of the robot assembly process. The next two chapters give the conclusions suggestions for future work.

    4 COPYRIGHT UiTM

  • Chapter 2

    Robots an introduction

    COPYRIGHT UiTM

  • 2.1 Robot types

    Robots can be classified by the type of motions provided.

    Cartesian coordinates Positioning may be done by linear motion along three principal axes: left and right, in and out, and up and down. These axes known, respectively, as the cartesian axes X, Y and Z. Fig. 1 shows a typical manipulator arm for a Cartesian co-ordinates robot. The work area or work envelope serviced by the Cartesian-co-ordinates robot's arm is a big box-shaped area. Programming motion for Cartesian-co-ordinates robot consist of specifying to the controller the X, Y and Z values of a desired point to be reached. The robot then moves along each axes to the desired point. This is one of the simplest types of robots.

    Spherical or Polar co-ordinates In this type of robot are mostly rotational axes. The axes for the spherical co-ordinates are 9, the rotational axis; R, the reach axis; and p, the bend-up-and-down axis. The work area serviced by a polar-co-ordinates robot is the space between two concentric hemispheres. The reach of the arm defines the inner hemisphere when it is fully retracted along the R axis. The reach of the arm defines the outer hemisphere when it fully straightened along the R axis. Fig. 2 shows the typical robot.

    Fig. 1 Typical motions of a cartesian or rectilinear robot.

    Cylindrical co-ordinates In this type of robot there is a rotary motion at the base followed by the two linear motions. The axes for the cylindrical co-ordinates are 9, the base rotational axis; R (reach) the in-and-out axis; and Z, the up-and down axis. The work area is the space between two concentric cylinders of the same height. The inner cylinder represents the reach of the arm with the arm fully retracted, and the outer cylinder represents the reach of the arm with the arm fully extended. Fig. 3 shows the typical cylindrical

    6 COPYRIGHT UiTM

  • robot. An example of a cylindrical robot linking the two CNC turning centre and a conveyor for workpiece loading and unloading is shown in Fig. 4.

    Fig. 2 Typical motions of a spherical robot.

    Fig. 3 Typical motions of a cylindrical robot.

    Jointed co-ordinates If the arm can rotate about all three axes, the robot is called a revolute co-ordinates, articulate or jointed-arm. Fig. 5 shows a typical manipulator arm for the articulated robot.

    7 COPYRIGHT UiTM

  • CNC Turni Centre ,'

    /r Conveyor

    r tb

    -y

    -J\

    n 9 _

    v5 \ \

    c

    > r-.y Cylindrical Robot

    NC Turning )entre

    I

    Fig. 4 A cylindrical robot serving two CNC turning centres.

    / ^

    Fig. 5 Typical motions of a articulated robot.

    2.2 Basic Components of a Robot

    The robot system used in manufacturing systems generally have the four basic components: manipulator, controller, power source and the end effector. The base of the manipulator is usually fixed to the floor of the work area. Sometimes, the base may be moveable by attaching it to either a rail or track, allowing the manipulator to be moved from one location to another. Some times it is also possible to have a gantry system from which the robot will be hanging, thus conserving the floor space.

    The manipulator, which does the physical work of the robotic system consists of a number of links which can be either a straight, moveable arm of the robot as explained earlier. The movement of the manipulator is controlled by the actuators. The actuator, allows the various axes to move within the work cell. The drive systems can use electric, hydraulic or pneumatic power.

    The controller in the robotic system (Fig. 6) is the heart of the total operation. The controller stores pre-programmed information for later recall, controls peripheral devices, and communicates with computers. The controller is used to control the robot manipulator's movements as well as to control peripheral

    8 COPYRIGHT UiTM

  • components within the work cell. The controller stores all program data for the robotic system. It can store several different programs, and any of these programs can be edited.

    I Recorder or f I disk drive j

    Printer

    I Serial I j Input-Output f"

    Keyboard

    Teach Pendant

    :{ Peripheral interface input-output

    Axis 1 driver

    Axis 2 driver

    1 Axis n driver

    Central I Processing Unit

    n Axes feedback signal converters

    Sensor and control interface

    Memory

    Power Supply

    Fig. 6 Typical functions of a robot controller.

    The controller is also required to communicate with peripheral equipment within the work cell. Such peripherals that are commonly connected to the controller are teach pendant, hard drive, keyboard, memory and floppy disk. The two-way communication between the robot manipulator and the controller maintains a constant update of the location and the operation of the system. The controller also controls any tooling placed on the end of the robot's arm.

    The power supply is the unit that supplies power to the controller and the manipulator. Two types of power are delivered to the robotic system. One type of power is the electric power for operation of the controller. The other type of power is used for driving the various axes of the manipulator. This power can be developed either from hydraulic, pneumatic or electric power source.

    The sensors present in the robot at various locations communicate to the robot controller about the status of the manipulator. For proper control of the manipulator it is necessary to know the position, velocity and acceleration of each of the joint. In addition to the sensors to track the motion, other sensors are used to provide further feedback about the workpiece handling.

    The purpose of the robot manipulator is to perform work. An end effector

    9 COPYRIGHT UiTM

  • attached to the robot's arm must accomplish the work to be done by the robot. The end effector can be a gripper for work handling or end-of-arm tooling if a particular job is to be done such as welding or rivetting.

    The manipulator moves the end effector to the programmed locations. These moves of the end effector are controlled by a robot's program stored in the controller memory. The type of end effector depends upon the type of work holding to be done. These can be operated by mechanical means such as using a pneumatic or hydraulic cylinder, or use vacuum to lift and transfer the part, or use an electromagnet to lift and move the part. The robot's end effector may have sensors such as proximity switches, light sensors, pressure switches, magnetic-field sensors, vibration detectors or speed-of-motion sensors depending upon the application.

    2.3 Robot Programming

    The methods used for development of robot programs or more generally called as teaching a robot is done as follows:

    Lead by nose Teach pendant Off line programming

    Lead by nose An experienced operator holds the robot hand and completes the operation manually by moving the robot hand to the various positions. The controller will be recording the actual motions, which can then be used to replay later for actual work. This is suitable for spray painting application, but not for material handling.

    Teach pendant In this case a teach pendant which has all the necessary functions to move the robot is used by the operator to do the job. The operator will move the hand to the various positions and records in the memory the various locations and paths taken to complete the program. Later on the same program can be used for regular operation. This is the most commonly used method for material handling application.

    Off line programming These are generally used with the simulation systems where more sophisticated operations which involve a number of elements within a manufacturing cell could be simulated. The simulation programs will have the facilities for defining the machine tools, workpiece geometries, material handling equipment such as robots, conveyors, etc. After the work cell arrangement is defined, then the movement of robot for work handling can be defined using the simulation language. An actual simulation of the operation can be seen on the workstation screen in wire frame modelling or realistic shaded image to check the validity of the operation. Once approved the robot program can be post processed for the particular robot to be used.

    10 COPYRIGHT UiTM

  • 2.4 Sensors

    These elements communicate to the robot controller about the status of the manipulator. For proper control of the manipulator it is necessary to know the state of each joint, that is, its position, velocity and acceleration. To achieve this, a sensor is to be incorporated into the joint-link pair. Sensors may monitor position, speed, acceleration or torque. Typically, the sensor is connected to the actuator's shaft. However, it could also be coupled to the output of the transmission (so that monitoring of each joint's actual position with respect to the two surrounding links is possible).

    External sensor

    External state sensors, is used to monitor the robot's geometric and/or dynamic relation to its task, environment, or the objects that it is handling. Such devices can be of either the visual or non-visual variety. The following types are generally used:

    1. Strain gauges 2. Pressure transducers 3. Proximity devices 4. Ultrasonic sensors 5. Electromagnetic sensors 6. Elastomeric materials

    Proximity sensors

    Proximity sensors are used to sense the nearness of an object or obstruction to the robot. This can be done either by using a contact or a non-contact technique.

    Contacting proximity sensors

    The simplest type of proximity sensor is of the contacting variety. As the robotic manipulator moves, the sensor will become active only when the rod comes in contact with an object or an obstruction. When this occurs, the switch mounted inside the sensor will close (or open, if that is more convenient). The change of state of the switch, monitored through the robot's I /O interface, will cause an appropriate action to take place. Examples include an immediate (or emergency) halt if the device is used to sense obstacles or the branching to another part of the robot's program, thereby causing a particular operation to be performed (e.g. closing of the gripper). Such contact monitors can be placed anywhere on the robot's arm and/or wrist, and it is possible to utilise more one.

    If the simple on-off switch is replaced by one of the linear position-sensing devices, the "binary" contacting proximity sensor become one that can detect actual position of the object.

    Non-contact proximity sensors

    11 COPYRIGHT UiTM

  • As the name implies, non-contact sensors measure work-cell conditions without physically touching the part. In robot work cells the most frequently used non-contact sensors are proximity and photoelectric devices and vision systems. All three types of sensors are available from many commercial vendors.

    Proximity sensors detect the presence of a part when the part comes within specified range of the sensor. Proximity sensors are available in cylindrical, rectangular, through-head type, and grooved-head type.

    2.5 Types of robotic gripper (end effectors) Mechanical grippers are designed to grasp a part either on the inside diameter or on the outside diameter of the part. Since the grippers must make contact with the surface area, two concerns arise. First, enough frictional force must be applied to the part to overcome the gravitational pull of the part. Second, the gripper must have enough contact force with the part so that when the manipulator rotates, the part will remain in the gripper.

    Grippers or end-effectors can roughly be classifies into five categories. 1 Mechanical. Two or more fingers or jaws for external/internal grasping. 2 Vacuum. One or more vacuum cups for handling flat or nearly flat

    workpieces that are reasonably smooth and clean. 3 Magnetic. One or more electromagnets (can be magnets), ferrous

    materials only. 4 Expandable. Inflatable bag or cuff to handle odd shapes and fragile

    materials, also inflatable prehensile fingers. 5 Adhesive. For materials that are lightweight and not suitable for vacuum

    techniques.

    Below are some types of grippers that can be found and use by the industrial robots.

    Standard hand Fingers self-aligning

    12 COPYRIGHT UiTM

  • Fingers for grasping different size parts Cam-operated hand with inside and outside Jaws

    Wide-opening hand

    Special hand with modular gripper

    Special hand chuck type

    Special hand with one moveable jaw

    Special hand for cartons Cam-operated hand

    13 COPYRIGHT UiTM

  • Chapter 3

    Robot control concepts

    COPYRIGHT UiTM

  • 3.1 Introduction

    With the advent of low cost computers and rapid strides taken in microelectronics, industrial automation has become an all pervading industry. In fact in the modern realm of industries automation is perhaps the only mantra which provides for progress. There are many methods to reach automation, utilising hydraulic, pneumatic and electric drive elements being combined into a proper combination with the help of a controller. The controller can be a hard wired one as in the earlier days or utilising a programmable logic controller (PLC).

    However, for very high speed applications developing a PLC programme is almost impossible. Hence for applications involving a large amount of complex sequence programming or those involving large computations, it becomes necessary to use a dedicated computer. Typical examples are the computer numerical control machine tools and robots. However, many other similar examples do exist in the manufacturing industries which requires similar controlling with less demanding input output requirements.

    In such cases, a motion control card becomes a building block for many control applications. Essentially, a motion control card is a special purpose set of computer chips, or microprocessors, on an integrated circuit board designed to be mounted in the PC slot or an enclosure that connects it with other electronic and computer devices. With the developments in the VLSI designs many of the functions required for automation are being shrunk into fit in smaller number of integrated circuits thereby reducing the total cost of automation while increasing the reliability of the operation.

    3.2 Motion Control Card Tasks

    The main job of the motion control card is to perform the time-intensive, high frequency tasks needed to keep each axis of the machine tool moving along the desired path (Fig. 3.1).

    Host Computer

    Position Command

    Posit Feed

    Pc

    Motion Controller

    ion jack

    Position Sensor

    >sition

    Motion . Command

    a

    Power Amplifier

    jrrent

    Fig. 3.1 Motion control card function

    15 COPYRIGHT UiTM

  • l.Plan each move. Take a block of coordinate information (G-code statement) from the PC software and calculate the appropriate "equation of motion" to determine how long and how fast to move each axis to arrive at that programmed destination along the desired path.

    2. Apply interpolation. Solve those equations of motion at small time intervals and generate the appropriate intermediate positions for each axis.

    3.Close the servo loop. Compare readings from the encoders, which indicate actual axis position, with each of these intermediate positions, and issue new commands to the servos to drive the difference to zero. Do so for each motor.

    4.Regulate motor commutation (optional). Calculate the level of current applied to each phase of the servo motor to produce desired torque. Do so for the motor at each axis.

    5.Maintain the current loop (optional). Compare desired current levels with actual levels and modulate current by adjusting the power transistor on/off times to drive the difference to zero. Do so for each servo motor.

    A motion control card must perform all of its tasks at high speed and with extreme reliability. Safety features allow a motion control card to bring a machine tool to a safe condition in the event of an error, or if the PC "crashes" and stops functioning.

    The software that has to reside in the personal control is shown in Fig. 3.2. The actual components that can be developed depends on the final function anticipated for the controller.

    PROGRAM EDITOR

    SYNTAX CHECKER

    GCODE INTERPRETER

    GRAPHIC SIMULATOR

    MOTION DONTROL CARD

    INTERFACE

    MOTION CONTROL CARD

    |

    - TRANSLATOR

    Fig. 3.2 The software that can be developed for a Motion control card function

    16 COPYRIGHT UiTM

  • Program Editor: This helps the user to enter the robot control program by the user in a standard language (English like) to be developed. This is more or less similar to a text editor.

    Syntax checker: This actually checks the syntax that should be used normally for defining the robot movements.

    G-code interpreter: If the graphic language used for robot movements is based on the G-codes normally used for CNC machines, this component will be used. This converts the G-codes into the low level code in robot programming language to be used for control.

    Graphic simulator: The graphic simulator provides a powerful way to simulate the robot program before actually running the robot. This helps to removes any bugs present in the program, before it is actually committed to running the robot.

    Translator: This can be any translator to be developed depending upon any other forms which might be used for programming the robot. Examples could be if a program is developed in VAL, it can be translated top the native format of the robot.

    The actual schematic of the robot controller as being planned is shown in Fig. 3.3.

    User Interface

    Off- l ine Programming

    Simulator

    Personal Computer

    1

    Motion controller

    Zaxis

    Xaxis

    Rotary axis

    Gripper

    Digital I/O

    Fig. 3.3 The complete architecture of a robot controller with the Motion control card

    17 COPYRIGHT UiTM