Robot Software And Programming

Views:
 
     
 

Presentation Description

Robotics Programming

Comments

Presentation Transcript

Robot Software And Programming: 

Robot Software And Programming Prepared by M.Ganesh Murugan

Robot Software And Programming: 

Robot Software And Programming Although robotics and manufacturing automation are highly demanding in research and development inputs of high caliber, the combined efforts of the leading research and development institutions in the country, if well coordinated and pooled together, can meet the requirements It is the collection of computer programs and related information that is developed, marketed, manufactured and sustained for industrial robots It involves computer-aided design of kinematic linkages, local area networks, MAP, business software, integration of sub-systems of FMS and so on

Robot Software Features: 

Robot Software Features The following are the common robot software elements (a) Supervisory control: It is responsible for the overall control and co-ordination of the robot system (b) Task generation and management: It is the collection of tools supplied for creating, debugging and managing the procedures and data associated with each robot task (c) Task Interpreter: It controls the step-by-step execution of the robot task and is responsible for fetching, analyzing and initiating each step that is performed (d) Arm motion control: The real time control software that moves the arm as dictated by the task interpreter (d) Communication: It links all the other software elements with operator interface devices, with associated shop floor equipment and when utilized, with external supervisory computers (e) Error reporting and diagnostics: It is a non-obvious, but essential, element in any robot software system. Its purpose is to ensure that the system is ready to operate and if not, to identify where problems exist. Monitoring software runs constantly when the machine is running to detect operating errors and stop arm motion in dangerous situations

Concept Of Programmability And Related Languages: 

Concept Of Programmability And Related Languages To operate a robot, it is necessary to give instructions by certain method In general there are two types of problems (a) Specification of positions: A robot is used to position a part or tool by moving it from one position to another. Therefore, the programming is concerned with defining of a sequence of positions or trajectories through which the robot must pass during the execution of its task. Robots should not collide with any other object (b) Dealing with uncertainties: The positioning of object cannot be exact nor can the actions of robots. Both are limited by dimensional tolerances. These type of uncertainties can be alleviate by using sensors The programming of a robot is simply the designing of a work pattern so that the robot may perform work without human intervention All robot programs are a combination of specific programming commands. These commands control movement, position input/output, hand-controlled instructions, read instructions, etc.,

A Robot Program Includes: 

A Robot Program Includes ( i ) Definition of a problem to be solved (ii) Flow chart needed for the detailed analysis of the solution (iii) Best technique of the solution (iv) Computer programming language coding for the solution of the problem (v) Validation of the solution (vi) Other techniques for the verification of the solution Industrial robots are usually programmed by: Manual teaching Lead through teaching Walk through teaching Offline programming

Offline Programming: 

Offline Programming It is necessary step toward increasing the use of industrial robots in industry Some of the advantages associated with this are: (i) Reduction of robot down time (ii) Removal of programmer from hazardous environments (iii) Programming variety of robots with single programming system (iv) Ability to integrate with existing CAD/CAM systems (v) Simplification of complex tasks by using high-level computer programming languages (vi) Verification of robot programs by using existing CAD/CAM systems Major requirements for successful off-line programming system are: (i) Knowledge of the process or task to be programmed (ii) Geometric descriptions of components and their relationships within the work place (iii) Knowledge regarding robot geometry, kinematics and dynamics (iv) A computer-based system for programming the robots utilizing the above data (v) Verifications of programs produced (vi) Appropriate interfacing to allow communication of control data (vii) Effective man – machine interface by incorporating user friendly programming interface Some of the systems which are in practical use and/or in the stages of research and development are VAL, SIGLA, GEOMAP, RAIL, FUNKY, EMILY, ROBEX, RAPT, RCL, RPL, MCL, PAL, T3, AML, GRASP, AUTOPASS, AL and so on.

A Robot Language: 

A Robot Language The basic components of a robot language are: (i) Instructions which determine the actions of the robot (ii) Tools which construct a sequence of procedures for a task (iii) Media to transfer a sequence of codes into other departments and which accumulate this data Motion instruction in programming language contain the following types of data: (i) Positional information – Start and end point of each trajectory (ii) Trajectory type – Linear or quickest path (iii) Velocity (iv) Functions to be performed at a point, such as time delay, tool manipulation, sending or receiving signals (v) Gripper status – Closed or Open (vi) Sequence will be dictated by the programmer

Robot Languages & Recent Five-levels Classification: 

Robot Languages & Recent Five-levels Classification Level 1 It requires the user to specify robot tasks in microcomputer language and to perform explicitly all data calculations and conversions necessary to the task Level 2 It requires the user to teach the robot a task by physically guiding it through a series of motions by pressing push buttons on a pendant. Today, it is the most common level of robot programming Level 3 It allows the user to specify point-to-point paths without having to teach each one Level 4 It provides greater flexibility in programming. Block structured control and complex data structures allow a higher degree of calculation and decision making Level 5 – It allows the user to specify tasks in English like terms. The system must determine how to accomplish the task, using a world model of the objects that are involved. It is still a research topic and is not easily available commercially, today

Some Of The Programming Languages: 

Some Of The Programming Languages (i) ARL (Assembly Robot Language): The progress of micro-computers has made it possible to execute complicated tasks, in assembly and inspection of high level controls and in order to control these tasks by language, ARL was developed (ii) HARL (Hitachi Assembly Robot Language): It is a commercial version of ARL especially suited for point-to-point assembly and handling tasks. There are 18 typical HARL instructions and programming is possible in the robot language by using these instructions. By this method, motion control data is programmed and after programming, location data used in the program is taught in order to make location information of motion statements (iii) AL (Arm Language): It is currently the language which has undergone the most important development. It first appeared in the course of original research at the Stanford University into programming robots and the use of WAVE language and has been the object of constant improvement since 1974 (iv) VAL (Vic Arm Language): An interactive version of AL, known as VAL and its associated hardware have been adapted to all Unimate robots which previously used an old from of point control. A new version of VAL called VAL II, is at present being tested (v) AML (A Manufacturing Language): It is a language represented by IBM with its robots and was introduced into the market in 1982. the Cartesian hydraulic robot RS-1 (or 7565) is produces by IBM and the 7535 electric robot from the Scara range is produced in Japan by Sankyo. IBM Automated Parts Assembly System (AUTO PASS) Language attempts to eliminate the need for issuing detailed instructions to the robot. The program automatically determines the grip points and motion paths from geometric database

Some Of The Programming Languages: 

Some Of The Programming Languages (vi) IRL (Intuitive Robot Language): This is a language developed by Swiss Company Microbo, affiliated to the large watch-making companies, for its range of high precision assembly robots (vii) LM (Language de Manipulation): This was developed in the IMAG robotics laboratory at the University of Gernable in 1979. It adopts most of the main concepts of AL, but it is used on a microcomputer (68000) (viii) LM (Language de Manipulation): This was developed in the IMAG robotics laboratory at the University of Gernable in 1979. It adopts most of the main concepts of AL, but it is used on a microcomputer (68000) (ix) MCL: MCL was developed within the framework of ICAM projects to resolve in a unified way all the problems associated with robot programming. MCL is an extension of APT and its aim is the programming of flexible units, that is, of a set of machines served by one or more robots. At present, MCL can control Cincinnati T3 and Westing House Allegro robots (ix) PLAW (Programming Language for Arc Welding): This is particularly well suited to “intelligent” welding, that is which involves the use of sensors (x) ROL (Robot Language): It is based on the new approach to the robotics market. ROL was also developed from research with the aim of designing a complete commercial system for computerized control (including hardware and software) adaptable to any robot

Some Of The Programming Languages: 

Some Of The Programming Languages (xi) SIGLA (Sigma Language): It was the first commercial language available for use with an industrial robot. It was developed by Olivetti for its Cartesian Sigma robots and was considerably influenced by numerical control languages, but nonetheless allows control of several arms, with loops and tests on the sensor In addition, some languages are intended to operate with artificial sensory input that enables the robot to act more independently For example, the Stanford Research Institute Robot Programming Language (RPL) includes capabilities for interpreting video signals, enabling the robot to visually identity parts Draper Industrial Assembly Language (DIAL) developed at Charless Stark Drapur Laboratory uses electronic force feedback to duplicate human sense of touch in assembling components

Robot Programming Languages and Robotic Functions: 

Robot Programming Languages and Robotic Functions A user can communicate with a robot by programming. It is possible to write commands in a robot language with the help of which the following robotic functions can be performed (i) Location of robot position in working space (ii) Point-to-point motion (iii) Straight-line interpolation (iv) Motion in a desired sequence (v) Operation of end effector or tooling (vi) Respond to its sensors signals (vii) Branching of robot’s control (viii) Writing and implementing of subroutines (ix) Communicate with peripherals (x) Perform complex trajectory arithmetic computations (xi) Respond to complex measurements made by sensors (xii) Communicate with other computer based devices (xiii) Behave intelligently by utilizing data received (xiv) Enter data into Robot Control Unit (RCU) by means of a teach pendant (xv) Display programs on the CRT or RCU, transfer programs from storage to control and back (xvi) Enter new programs or edit existing programs

CONTROL FUNCTIONS OF A TEACH BOX: 

CONTROL FUNCTIONS OF A TEACH BOX There are 18 different commands that can be given by means of teach box 1. MODE AND STOP: Stop the robot and set it to control mode 2. TRAIN: In train mode, the joint control keys etc. can be used to manipulate the robot and record positions 3. RUN: To run a program 4. PAUSE: To have a pause 5. SPEED: Allows the speed of arm to be changed 6. STEP: Useful to move the robot through the program one-step at a time. 7. JUMP: Allows sophisticated robot programs to be written. 8. POINT: Similar to unconditional JUMP. 9. CLEAR: To clear all recorded robot positions and operations from program memory. 10. GRIP: Cause the gripper to close. 11. MOVE: Activates the joint control. 12. OUT: Used to turn output signals on and off based on arm position. 13. HOME: To initialize the robot to a known position. 14. AUX: Get a robot to aux mode, to activate the free and zero functions. 15. FREE: Turns off all motor currents and allows the robot to be positioned manually. 16. ZERO: Allows setting the position register to zero. 17. REC – Recording Accelerated Moves: Records a controlled acceleration move step. 18. Recording Non-Accelerated Moves: To record a non-accelerated move step

PROGRAMMED DEMO. 1: 

PROGRAMMED DEMO. 1 1. ? APPRO PART, 50 ® 2. ? MOVES PART ® 3. ? CLOSE ® 4. ? DEPARTS 150 ® 5. ? APPRO BOX, 200 ® 6. ? MOVE BOX ® 7. ? OPEN I ® 8. ? DEPART 75 ® 1. Move to a location 50 mm above the part 2. Move along a straight line to the part 3. Close the gripper jaws 4. Withdraw the part 150 mm from the chute along a straight-line path 5. Move along a straight line to a location 200 mm above the box 6. Put the part into the box 7. Open the gripper jaws 8. Withdraw 75 mm from the box When program is executed, it causes the robot to perform the task as per steps given above

DEMO.2: 

DEMO.2 Move to P1 (a general safe position) Move to P2 (an approach to P3) Move to P3 (a position to pick the object) Close gripper Move to P4 (an approach to P5) Move to P5 (a position to place the object) Open gripper Move to P1 and finish

DEMO.3: 

DEMO.3 PROGRAM PICKPLACE 1. MOVE P1 2. MOVE P2 3. MOVE P3 4. CLOSEI 0.00 5. MOVE P4 6. MOVE P5 7. OPENI 0.00 8. MOVE P1 .END

DEMO. 4 Epson RC+ (example for a vacuum pickup): 

DEMO. 4 Epson RC+ (example for a vacuum pickup) Function PickPlace Jump P1 Jump P2 Jump P3 On vacuum Wait .1 Jump P4 Jump P5 Off vacuum Wait .1 Jump P1 Fend

Thank you: 

Thank you