[ieee 2014 11th international conference on remote engineering and virtual instrumentation (rev) -...

2
Virtual experiment for teaching robot programming Paulo Abreu, Manuel Romano Barbosa, António Mendes Lopes IDMEC – Pólo Feup Faculdade de Engenharia, Universidade do Porto Porto, Portugal [email protected] , [email protected] , [email protected] Abstract—- This work describes an experiment included in a virtual lab developed for teaching industrial robotics programming. The virtual lab is implemented with an industrial simulation software package – RobotStudio. The use of this software provides multiple functionalities blending theoretical contents with the implementation aspects of industrial robots. The experiment allows testing basic concepts in robot programming such as using different coordinate systems, targets, paths, and motion parameters. Index Terms—Virtual Labs, Engineering Education, Industrial Robotics. I. INTRODUCTION The use of laboratory classes for learning robot programming involves a learning-by-doing approach where the students must obs erve, confirm and interpret the effects caused by their actions [1]. However, on-line robot programming faces the restrictions imposed by unavailable or limited resources, namely robotic cells, as well as security issues. On the other hand, the off-line programming tools are focused either on didactic or industrial software, which are normally associated with long learning curves, incompatible with the time restrictions of the academic robotic courses. Virtual labs are based on software applications developed for representing real equipment. Specially developed simulation tools for teaching robotics have been reported [2 - 6]. However, in spite of their proven teaching value, they still lack applicability to industrial robots. Bearing these ideas in mind, we have been implementing the use of a virtual robotics lab [7] based on the off-line robot programming software, RobotStudio™ from ABB Robotics. The use of this simulation tool enables working with a model which is an image of a real implementation, and therefore been more effective on catching the student´s attention. The robotics virtual lab is made of a collection of different robotic cells fully defined and operational. These cells can easily be installed on the students’ computers and are the base for the implementation of the robotic teaching module. Students use them to develop skills in operating and programing an industrial robot. Furthermore, they are requested to modify the programs and conduct experiments. In this demo it is presented one of those robotic cells and experiments to illustrate different aspects of robot programming. II. VIRTUAL EXPERIMENT This virtual experiment uses one cell of the virtual lab, replicating the one existing in the real laboratory. It uses a six axes, anthropomorphic robot (ABB IRB2400) equipped with an automatic tool change mechanism and three pneumatic grippers (Fig. 1). The robot controller was configured to have the necessary digital outputs to operate the gripping mechanism. The program to let the user choose which gripper the robot must pick from the tool stand is already installed in the controller. The developed application uses the robot teachpendant as an interface to select which task to run. This virtual setup is made available to the user in a specific file format which allows it to be installed locally in any computer running RobotStudio. The user can explore this cell by identifying different coordinate systems, specific points (targets) used to define the robot paths and motion parameters, such as the interpolation type, speed, and maximum deviation allowed from target (“zone” control). The behavior of the robot under the chosen settings can be observed in detail through simulation and the associated programming code can be generated in a ready to run format for the robot. The different coordinate systems used are identified as: world (WCS), robot (RCS), tool (TCP), part (WOBJ). The user should understand the concept of a target point as a vector defining a tool position and orientation relative to one of the defined coordinate systems. Figure 1. Virtual robotic cell with tool changing system 978-1-4799-2024-2/14/$31.00 ©2014 IEEE Polytechnic of Porto (ISEP) in Porto, Portugal from 26-28 February 2014 2014 11th International Conference on Remote Engineering and Virtual Instrumentation (REV) Page 395

Upload: antonio-mendes

Post on 28-Feb-2017

219 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: [IEEE 2014 11th International Conference on Remote Engineering and Virtual Instrumentation (REV) - Porto, Portugal (2014.02.26-2014.02.28)] 2014 11th International Conference on Remote

Virtual experiment for teaching robot programming

Paulo Abreu, Manuel Romano Barbosa, António Mendes Lopes

IDMEC – Pólo Feup Faculdade de Engenharia, Universidade do Porto

Porto, Portugal [email protected], [email protected], [email protected]

Abstract—- This work describes an experiment included in a virtual lab developed for teaching industrial robotics programming. The virtual lab is implemented with an industrial simulation software package – RobotStudio. The use of this software provides multiple functionalities blending theoretical contents with the implementation aspects of industrial robots. The experiment allows testing basic concepts in robot programming such as using different coordinate systems, targets, paths, and motion parameters.

Index Terms—Virtual Labs, Engineering Education, Industrial Robotics.

I. INTRODUCTION The use of laboratory classes for learning robot

programming involves a learning-by-doing approach where the students must obs erve, confirm and interpret the effects caused by their actions [1]. However, on-line robot programming faces the restrictions imposed by unavailable or limited resources, namely robotic cells, as well as security issues. On the other hand, the off-line programming tools are focused either on didactic or industrial software, which are normally associated with long learning curves, incompatible with the time restrictions of the academic robotic courses.

Virtual labs are based on software applications developed for representing real equipment. Specially developed simulation tools for teaching robotics have been reported [2 - 6]. However, in spite of their proven teaching value, they still lack applicability to industrial robots.

Bearing these ideas in mind, we have been implementing the use of a virtual robotics lab [7] based on the off-line robot programming software, RobotStudio™ from ABB Robotics. The use of this simulation tool enables working with a model which is an image of a real implementation, and therefore been more effective on catching the student´s attention.

The robotics virtual lab is made of a collection of different robotic cells fully defined and operational. These cells can easily be installed on the students’ computers and are the base for the implementation of the robotic teaching module. Students use them to develop skills in operating and programing an industrial robot. Furthermore, they are requested to modify the programs and conduct experiments. In this demo it is presented one of those robotic cells and experiments to illustrate different aspects of robot programming.

II. VIRTUAL EXPERIMENT This virtual experiment uses one cell of the virtual lab,

replicating the one existing in the real laboratory. It uses a six axes, anthropomorphic robot (ABB IRB2400) equipped with an automatic tool change mechanism and three pneumatic grippers (Fig. 1). The robot controller was configured to have the necessary digital outputs to operate the gripping mechanism. The program to let the user choose which gripper the robot must pick from the tool stand is already installed in the controller. The developed application uses the robot teachpendant as an interface to select which task to run. This virtual setup is made available to the user in a specific file format which allows it to be installed locally in any computer running RobotStudio.

The user can explore this cell by identifying different coordinate systems, specific points (targets) used to define the robot paths and motion parameters, such as the interpolation type, speed, and maximum deviation allowed from target (“zone” control). The behavior of the robot under the chosen settings can be observed in detail through simulation and the associated programming code can be generated in a ready to run format for the robot.

The different coordinate systems used are identified as: world (WCS), robot (RCS), tool (TCP), part (WOBJ). The user should understand the concept of a target point as a vector defining a tool position and orientation relative to one of the defined coordinate systems.

Figure 1. Virtual robotic cell with tool changing system

978-1-4799-2024-2/14/$31.00 ©2014 IEEE Polytechnic of Porto (ISEP) in Porto, Portugal from 26-28 February 20142014 11th International Conference on Remote Engineering and Virtual Instrumentation (REV)

Page 395

Page 2: [IEEE 2014 11th International Conference on Remote Engineering and Virtual Instrumentation (REV) - Porto, Portugal (2014.02.26-2014.02.28)] 2014 11th International Conference on Remote

There are normally two main alternatives to define these targets: (i) through direct specification of the coordinates of the targets’ position and orientation; (ii) by moving the robot, through jogging, towards the desired target points. In either case this is made relative to a given coordinate system. The advantages of having different coordinate systems to teach targets for path definition can be tested in different situations.

The user should observe that a given target can be reached by the robot with different types of configurations, as a consequence of the multiple solutions of the inverse kinematics model. The type of configuration at each target used to define a path should be the same and the user should be aware of the implications on the executed path, when this procedure is not implemented. In addition, the executed path is also affected by specification of alternative interpolation algorithms, such as linear and circular (i.e. MoveL, MoveC, instructions) in the cartesian space, and joint space interpolation (MoveJ). The path to be executed requires also the specification of speed and tolerance allowed in the vicinity of targets. The user can evaluate different combinations of these settings and explore the facilities for simulation of the robot paths such as: using different viewpoints and zooming, as well as overlapping of different runs (“TCP trace”).

Another important aspect that can be explored by the user is the link between the virtual cell behavior and the programming code that a real robot uses to replicate the same behavior. In this experiment the user can easily generate the code associated with a specific cell behavior, as well as edit and test modifications in the virtual cell. The structure of the ABB robot’s programming language is similar to general purpose programming languages (i.e. C or Pascal) but including motion specific instructions. For example Fig. 2, illustrates the routine to execute the path observed in Fig. 3 (“PickTool_1”). In this code it is possible to identify different types of moving instructions to move the robot between the programmed targets (e.g. “JointTarget_1” and “tgt1pgn_upin”). Examples of interpolation instructions previously referred (MoveL and MoveJ) are also present, among others.

PROC PickTool_1() MoveAbsJ JointTarget_1,v1000,fine,tool0\WObj:=wobj0; MoveJ tgt1pgn_upin,v1000,fine,TCPPGN\WObj:=wobjsup; MoveL tgt1pgn_uprest,v1000,z100,TCPPGN\WObj:=wobjsup; MoveL tgt1pgn_rest,v100,fine,TCPPGN\WObj:=wobjsup; Reset MGTrocaFerramentaDesbloqueia; Set MGTrocaFerramentaBloqueia; Set MGferramenta1; WaitTime 0.5; MoveL tgt1pgn_uprest,v100,fine,TCPPGN\WObj:=wobjsup; MoveL tgt1pgn_uprestout,v1000,fine,TCPPGN\WObj:=wobjsup; MoveL tgt1pgn_upout,v1000,fine,TCPPGN\WObj:=wobjsup; MoveAbsJ JointTarget_1,v1000,fine,tool0\WObj:=wobj0; ENDPROC

Figure 2. Robot program routine “PickTool_1”

Figure 3. Tool path during routine “PickTool_1”.

III. CONCLUSIONS This experiment is an example of the use of

RobotStudio to build virtual environments capable of illustrating basic concepts in programming commercially available industrial robots. It allowed the identification of the main elements needed to program a robot and the implications of different settings (e.g. speed, configurations, and maximum allowed deviation from target) on the executed path.

This is experiment uses only one cell of the virtual lab and it explores a limited set of features of this programming environment. With this cell more advanced programming functionalities can be explored. In addition the existing virtual lab can be further extended with cells that use different robots and specific equipment used in manufacturing processes.

REFERENCES [1] M. T. Restivo, J. Mendes, A. M. Lopes, C. M. Silva, M. F.

Chousal, “A Remote Lab in Engineering Measurement,” IEEE Transactions on Industrial Electronics, vol.56 nº 12, pp.4836-4843, 2009.

[2] O. Goldstain, I. Ben-Gal and Y. Bukchin, “Remote learning for the manipulation and control of robotic cells,” European Journal of Engineering Education, vol. 32, n. 4, pp. 481-494, August 2007.

[3] C. A. Jara, F. A. Candelas, S. T. Puente and F. Torres, “Hands-on experience of undergraduate students in automatics and robotics using a virtual and remote laboratory,” Computers & Education 57, pp. 2451-2461, 2011.

[4] G. López-Nicolás, A. Romeo and J. J. Guerrero, “Active learning in robotics based on simulation tools,” Comput. Appl. Eng. Educ., 2011.

[5] M. Cakir and E. Butun, “An educational tool for 6-DOF industrial robots with quaternion algebra,” Comput. Appl. Eng. Educ., 15, pp. 143–154, 2007.

[6] S. Makris, G. Michalos and G. Chryssolouris, “Virtual Commissioning of an Assembly Cell with Cooperating Robots,” Advances in Decision Sciences, vol. 2012, Article ID 428060, 11 pages, 2012.

[7] P. Abreu, M. R. Barbosa and A. M. Lopes, “Robotic virtual lab based on off-line robot programming software,” in 2nd Experiment@ International Conference, 18-20 Sept., Coimbra, Portugal, 2013.

978-1-4799-2024-2/14/$31.00 ©2014 IEEE Polytechnic of Porto (ISEP) in Porto, Portugal from 26-28 February 20142014 11th International Conference on Remote Engineering and Virtual Instrumentation (REV)

Page 396