• Nenhum resultado encontrado

Initial configuration of industrial robot controller: Using offline programming tool

N/A
N/A
Protected

Academic year: 2023

Share "Initial configuration of industrial robot controller: Using offline programming tool"

Copied!
29
0
0

Texto

(1)

Tommi Laitila

INITIAL CONFIGURATION OF INDUSTRIAL ROBOT CONTROLLER

Using offline programming tool

Faculty of Engineering and Natural Sciences Bachelor thesis September 2020

(2)

ABSTRACT

Tommi Laitila: Initial configuration of industrial robot controller Bachelor thesis

Tampere University

Bachelor of Science (Tech) Mechanical engineering and industrial systems September 2020

Integrating a robot system as part of larger scale system requires vast knowledge on different device interfaces and network technologies. Robot system commissioning procedure is a small task compared to scale of the whole project, thus it is advised to minimize time spent to the task by standardizing the procedure. This study deals with robot use scenario in industrial manufacturing and offline programming functionality aiding the commissioning and configuration procedure. Aim of this study is to produce a documented guide on configuration of a virtual ABB IRC5 series industrial robot controller.

this study is in form of a literary review based on manuals of ABB robot products and user experience on ABB software as well as other literature on the field. Thesis will answer to ques- tions regarding use of robot solutions in automation hierarchy and both how to use RobotStudio software in configuration of virtual robot system and how to configure I/O communication interface for ABB robot controller using Profisafe protocol.

the study focuses on the interfaces of industrial robot controller enabling communication with external devices. Additionally, communication technologies and safety functionality are a key part of this study. Offline programming tools are also covered in this thesis, since offline programming has potential time saving features. The product of this thesis is included in appendix A. The initiali- sation instruction in itself is written from application specific point of view to simplify the process of robot configuration to its reader by filtering unnecessary information compared to original manuals reviewed during the writing process.

Keywords: robotics, offline programming, automated work cell, factory automation

The originality of this thesis has been checked using the Turnitin OriginalityCheck service.

(3)

TIIVISTELMÄ

Tommi Laitila: teollisuusrobottiohjaimen ensimääritys Kandidaatintyö

Tampereen yliopisto

Tekniikan kandidaatti Kone- ja tuotantotekniikka Syyskuu 2020

Robottijärjestelmien integrointi osaksi laajempia kokonaisuuksia vaatii laajaa tuntemusta eri järjestelmien rajapinnoista ja tietoliikenneteknologioista. Yksittäisen teollisuus robotin käyttöönot- to osaksi järjestelmää on kokonaiseen projektiin suhteutettuna hyvin pieni osakokonaisuus. Näin Siihen käytettävä aika tulisi minimoida ja mahdollisuuksien mukaan standardisoida. Tämä työ käsittelee robottien käyttöä osana valmistavan teollisuuden automaatiohierarkiaa sekä etäohjel- moinnin käytännöllisyyttä osana robottijärjestelmien käyttöönotto prosessia. Työn tavoitteena on luoda ohje virtuaalisen ABB IRC5 -sarjan teollisuusrobottiohjaimenesimääritykseen samalla tarjo- ten lukijalle perustiedot yksinkertaisista työstökoneenkäsittelysolun toiminnoista, terminologiasta ja robotille asetetuista vaatimuksista.

Työ on muodoltaan kirjallisuusselvitys, jonka lähdemateriaalina on robotiikkaa yleisesti käsitte- levän kirjallisuuden lisäksi erään robottivalmistajan, ABB:n tuotedokumentaatio. Kirjallisuus viitteet tarjoavat työn kannalta olennaisimmat robotiikan ja tehdasautomaation aihealueellisen leikkauk- sen terminologiaan ja menetelmiin liittyvät faktapohjaiset tiedot, siinä missä ABB:n dokumentaatio mahdollistaa ensimäärityksen ohjeiden laatimisen kannalta välttämättömät tiedot. Robotin toimin- nan testaus oli virtuaalisesti mahdollista RoboStudio-ohjelmistolla, jolla on myös Työn kannalta keskeinen osa.

Selvityksen painotuksen keskittyessä teollisuusrobotin ja ohjelmoitavan logiikan rajapintaan, tietoliikenne- ja turvallisuusvaatimukset ovat työn tärkeintä sisältöä. Automaattisessa kappalekä- sittelytehtävässä tiedonsiirto ja -keräys teknologiat ovat olennainen osa Modernia teollisuutta ih- misen tehdessä yhä enemmän yhteistyötä robottien kanssa. Lisäksi yhä lisääntyvä etäohjelmoin- nin hyödyntäminen voi erityisesti robotikan kohdalla lisätä alan yritysten tuottavuutta ja vähentää työseisokkien sekä Integroitavien järjestelmien testaukseen kuluvaa aikaa. Myös osaavan työvoi- man puutteen korvaaminen automaatiolla edistää taloudellista kasvua valtakunnallisella tasolla.

Työn varsinainen tuotos, eli ohje ABB IRC ohjaimen virtuaaliseen esimääritykseen on esitetty liit- teessä A. Ohjeessa käytetään Profinet-tietoliikenneprotokollaa robotin ja ohjelmoitavan logiikan väliseen tietoliikenteeseen.

Avainsanat: robotiikka, offline -ohjelmointi, automatisoitu valmistussolu, tehdasautomaatio Tämän julkaisun alkuperäisyys on tarkastettu Turnitin OriginalityCheck -ohjelmalla.

(4)

CONTENTS

1 Introduction . . . 1

2 Factory automation infrastructure . . . 2

2.1 Automated production cell . . . 2

2.2 Device . . . 2

2.3 Industrial internet . . . 3

2.4 Interface . . . 4

2.5 Industrial robot . . . 4

2.5.1 Coordinate systems . . . 5

2.5.2 Motion supervision and safety . . . 6

3 Offline programming . . . 7

3.1 Offline programming tool . . . 7

3.2 User interface . . . 7

3.3 Motion supervision and safety . . . 8

3.4 Robot programming language . . . 8

4 Interface requirements . . . 10

4.1 Functional requirements . . . 10

4.2 Documentation requirements . . . 11

4.3 I/O communication requirements . . . 11

4.3.1 General communication . . . 11

4.3.2 Safety communication and functionality . . . 11

4.4 Interface logic . . . 12

5 Conclusion . . . 13

References . . . 14

Appendix A Configuration of virtual robot system . . . 16

A.1 Cell layout . . . 17

A.2 Robot controller configuration . . . 17

A.2.1 Motion configuration for external axis . . . 17

A.2.2 I/O configuration . . . 18

A.3 Tool and work object configuration . . . 19

A.4 Safety configuration . . . 20

A.4.1 Safety I/O functions . . . 21

A.4.2 Safe zones and ranges . . . 21

A.4.3 Safe zone . . . 21

A.4.4 Safe ranges . . . 22

A.5 Implementation of robot program . . . 23

(5)
(6)

LIST OF SYMBOLS AND ABBREVIATIONS

ABB Swiss Swedish electronics and industrial systems manufacturer AGV Autonomously guided vehicle

FAN Field area network

FMS Flexible manufacturing system I/O Digital signal based communication IPC Industrial pc

IRC Industrial robot controller PLC Programmable logic controller

Profinet Industrial internet protocol by Siemens

Siemens German electronics and industrial systems manufacturer TCP Tool center point

(7)

1 INTRODUCTION

Manufacturing industry is in a state of rapid modernisation. Many industries have re- lied on industrial automation in machining applications as part of factory processes for decades. Now that automated part handling applications make safe and efficient tend- ing of machining stations possible, the factories are operating almost without downtime.

To achieve seamless information flow within industrial multi device processes, everything needs to be connected in order to keep track of every task the work parts go through. De- velopment in automated solutions requires adaptability and knowledge as well as stan- dardisation on automated device interfaces in order to provide seamless integration to variety of other devices and even large scale systems.

This thesis is written in request of Fastems oy to lay background for further development of ABB industrial robot product integration to Fastems product families. Fastems oy is a Finnish Tampere based family owned company providing integrated factory automation solutions for aerospace, automotive and general manufacturing industry. Fastems deliv- ers a wide array of automated part handling logistics solutions, including robot solutions, designed to be used with 3rd party machining centers and other separate stations or logistics solutions. In addition to hardware based solutions, software offering includes Manufacturing management software, or MMS, and other various options for factory au- tomation. Aim of this study is to produce a basic instruction on initial configuration of a virtual ABB IRC5 series industrial robot controller.

In chapter 2 this work provides the reader with basic information about simple machine tending cell operations and terminology. Communication and safety requirements as well as functional requirements for a modern part handling cell are explained in chapter 4.

Offline simulation and offline programming as well as the software that is used in this study are presented in chapter 3. Appendix A is the requested product of this study as it describes the process of configuring virtual IRC5 industrial robot controller using RobotStudio software in form of step by step guide.

(8)

2 FACTORY AUTOMATION INFRASTRUCTURE

To lay background to the field this study is written on, this chapter will explain key points on factory automation, which is defined as the use of control systems for operation of machinery and processes (Baliga 2015). It covers means of producing goods, monitoring quality, managing factory production and in factory logistics with automated processes.

The aim of factory automation is either to increase throughput of the factory, minimize human error and inaccuracy in manufacturing process or extend production run time be- yond working hours. There are key factory automation terms to support the context of this study, which are automated production cell, device, Industrial robot, industrial inter- net and interface. these key terms will be further defined in following sections.

2.1 Automated production cell

Production cell is a collection of resources, such as workers and tools, that are designated for specific work phases of produced products. Cells are focused to a specific area in the factory floor and usually form a network that supports the requirements of factory logistics.

Cells may have a buffer storage and integrated logistics, for example in form of production line. Production cell can be partly automated or fully automated, later requiring no human interaction inside the cell. In modern factories, automated factory logistics are integrated to production cell network (Garcia-Diaz and Lee 1995).

In this study, the cell is a production cell with integrated part handling process, in which a robot is tending multiple machining stations and a buffer storage shelf, thus providing the cell with automated logistics. Material flows in and out of the cell requires human interaction. This type of an automated cell can be referred as Flexible manufacturing system, or FMS, which is a system capable of producing wide array of products with multiple machining stations (Atkins and Escudier 2013).

2.2 Device

In the context of industrial automation, a device is a single, usually a programmable part of production, cell, that performs a given function in the network of devices, for example, as a manipulator, a machine tool, a sensor or a safety device. Modern sensing devices, such as laser scanners or safety light screens, usually have their own computation ca- pability and an array of sensors. Such devices, depending on the level of computation

(9)

performance, may have an Ethernet based communication interface, improving the com- patibility and setup convenience of the device. If production cell process requires human Interaction, human safety functionality may be implemented with safety devices, such as scanners and light screens or other optical safety device defined by international standard (ISO 12100 2010).

Device configuration is the process of setting up a device parameters to enable it to perform given tasks to meet the requirements. Configuration includes changing of com- munication parameters, so that other devices can communicate with the device. The installation of required software and the possible software options for industrial PC de- vices is also part of configuration process. Configurations are usually downloaded or set to to-be-commissioned devices with documented routine.

2.3 Industrial internet

Before industrial internet technologies were recognized as a standard mean for creat- ing factory wide network for devices, it was common to implement hard wired physical communication interfaces between devices for each input and output signal. Input and output signals, or I/O signals, are electrically transferred bits or analog signal, that are in key position when it comes to communication between processing units. Input signals are received process commands from other processing units output signal and output signals are used to send process commands to other processing units input side (Butter- field and Szymanski 2018). This procedure of I/O signal exchange may be referred as a handshake between the processing units.

Since a single electrical bit is binary, meaning that it has two states, 0 and 1, the infor- mation that may be transmitted through single signal is very limited. Grouping I/O signals enables more complex communication, such as sending and receiving bytes, or arrays of bits that can be translated in other data types. For example, integers that contain more complex information than binary value, are transferred as defined groups of multi- ple binary signals or so called group inputs or outputs. Grouped signals deliver positive integers with maximum valueIdefined by binary transformation equation:

I= 2n (2.1)

Where nrepresents amount of grouped binary I/O signals or bits. Most automation de- vices have an in-software logic to handle grouped signals as integers or bytes. Analog signals may be used to transmit more than two values, but signal noise, or secondary frequency, must be taken to account, since it complicates the readability of the signal.

Analog signals are also vulnerable to magnetic disturbance and setup of analog signal as mean of passing data requires calibration. This is why analog signals are replaced by PWM or pulse width modulated digital signals. PWM signals are not in the scope of this thesis.

(10)

The focus regarding this work is on communication interface between two devices in a part handling process. In modern solutions, the communication between devices is han- dled over industrial internet, which is the communication network between connected devices used in industrial applications including servers and management systems, such as process control. Communication between production management and automated shop floor operations is done over a field-area network, or FAN, which can be described as a communication system interconnecting factory floor automated cells and devices, as well as process control hubs. Main requirements for FAN are fast real-time commu- nication and data transfer, high reliability and robustness of wiring and High bandwidth (Blecker 2006).

FANs are divided into two groups. First group being the fieldbus, used as a replacement for hardwired I/O systems offering a real time communication link between controller and devices, usually over a trunk line to which all devices are connected. The second group, FANs, are considered more modern and are based on Ethernet technologies, and unlike fieldbus, the second group can be used to form branched networks with the standardized Ethernet wiring. Both FAN groups are further divided into different protocols, such as with Siemens, Profibus being a fieldbus based and Profinet being an Ethernet based protocol (Blecker 2006). In a simple case, FAN may be used to connect two devices enabling I/O handshake between devices, but it is common to have a single master device handshaking with multiple slave devices.

2.4 Interface

Interface represents both the border between two devices and how information is passed on between devices. Automated devices are controlled with digital I/O signals that are either hard wired, or sent through a FAN with set protocol. In order for information to be exchanged through FAN as it should, the signal addresses on both devices must be set according to each other. One device may have several Interfaces to every other device in common network. In this case PLC/IPC unit sends and receives information to and from robot and other cell devices with I/O signals and due to company practicality, all devices, including robots regardless of manufacturer send and receive to and from same addresses at PLC. If there is a new device manufacturer in integration, the robot control signals are set in addresses in accordance to the interface documentation.

2.5 Industrial robot

As defined by the international standard for robot systems (ISO 8373 2012), an indus- trial robot is an automatically controlled programmable manipulator with several jointed or sliding segments in motion with 3 or more axis of freedom, capable of performing intended tasks based on sensing without human intervention and is designed to meet general safety and operation standards for industrial use. Industrial robots have various applications in various industries. For example, machine tools and centers were previ-

(11)

ously tended by workers, but in modern factories, tending of machines is conducted with automated manipulators, such as industrial robots or automated storage and retrieval systems. Other common applications for robots in addition to machine tending are weld- ing, painting, lifting and machining tasks along with many other uses extending to mobile robot solutions such as storage handling or factory wide logistics using autonomously guided vehicles, or AGVs (Branch 1996). There are several well known brands known from industrial robot products including Fanuc, KUKA, ABB and Yaskawa.

2.5.1 Coordinate systems

Robot’s tool endpoint positions are defined in both angular values and through means of forward kinematics as Cartesian coordinate system values with Euler angles or Quater- nion rotation values. Forward kinematics is used to compute robot endpoint in Cartesian coordinate system by known joint values, whereas backwards kinematics are used to compute robot position or geometric movement as join angle values (Sun et al. 2007).

Some robot systems use Quaternion rotation to calculate rotation. Quaternion rotation differs from Euler angles by having 1 real value and 3 imaginary values ranging from -1 to 1 instead of 3 angle values ranging from -180 to 180 degrees to determine rota- tional relation to fixed coordinate system (Wittenburg 2016). Since it is easier for human to understand relation in 3d-space as Cartesian position values compared to axis spe- cific angle values, robot position related variables are commonly expressed as Cartesian coordinates in ready made robot solutions.

Figure 2.1. Visual representation of tool center point, or TCP (Operating manual - IRC5 Integrator’s guide2018)

As with many other devices capable of 3d motion, robots are coordinated by multiple co- ordinate systems within a single base coordinate system. Two most common uses for user defined coordinate systems in context with industrial robots are tool coordinate sys- tem, used to define tool end position related tool base frame, and work object coordinate

(12)

system used to translate motions and to save programmable robot positions to a different 3d space. tool center point, or TCP in short is presented in figure 2.1.

2.5.2 Motion supervision and safety

In order to make robot cell safe from device and human perspective, robot not only needs to be connected to standardized safety network, but also have self monitoring functions.

Most industrial robot manufacturers provide safety integration to robot products by pro- viding tools for joint position and speed supervision, Cartesian position and speed super- vision, torque monitoring and support for safety integrated field area network.

Though robots are ideally programmed to avoid known obstacles, risk for human error, software bug or electrical fault in controller must always be taken to account for possible errors. Safe zones and safe ranges are used for robot movement and position monitoring ensuring safety of the robot system. Safe zone is a defined 3 dimensional space that is used to supervise robot movement in Cartesian coordinate system through forward and backward kinematics, where as joint ranges are a set of joint specific angle sectors that define acceptable robot positions. Single or group of safe zones or joint ranges can be paired with safety output signals in order to pass information up to cell control level and they can be controlled with input signal giving necessary flexibility to monitoring of robot work space on cell control level.

(13)

3 OFFLINE PROGRAMMING

In context to this study, online programming is process of programming a live robot unit, where as offline programming is a process of programming an accurate virtual simula- tion of a robot unit. In addition to finding logical bugs and debugging the program, in robot applications, offline programming functionality is used to simulate robot movements making it possible to notice motion errors, such as possible collisions, further prevent- ing mentioned errors after commissioning phase of physical robot (Holubek et al. 2014).

With offline programming tools, work on robot system may begin before the physical robot arrives to factory, thus decreasing time spent setting robot up for testing phase. Accord- ing to ABB, offline programming is effective way of maximizing return on for companies investment when implementing new system by promising shorter ramp up on robot cell (ABB 2019). Companies specializing in integration and commissioning of robot systems benefit from offline programming by minimizing testing phase time or the actual time robot systems spend on factory floor. Shorter testing times enable higher throughput of projects thus increasing productivity and cash flow.

3.1 Offline programming tool

RobotStudio is Microsoft Windows native engineering tool for online and offline program- ming and simulation of ABB IRC series industrial robot controller and IRB series industrial robots. RobotStudio is based on actual software from IRC controller, which enables accu- rate simulation of virtual robot (ABB 2019). With RobotStudio it is possible to build virtual robot cells in their entirety enabling accurate simulation of robot motions in 3d environ- ment with so called virtual twin. It is important to note that offline programming software licence costs may shorten the margin with simple projects.

3.2 User interface

Standard human-machine interface for IRC5 controller is a Flexpendant (3.2), which is a handheld corded human machine interface for manual manipulation of robot manipulator and controller. Though enabling all actions regarding configuration, programming and manipulation of IRC5 system, flex pendant is initially meant to be used as a human ma- chine interface for shop floor operation and service, where as RobotStudio is intended to be used in precommissioning and recommissioning phases as a simulation tool. Its possi- ble to do the same configuration and programming related functions as with flex pendant,

(14)

but with RobotStudio one has more screen area and enhanced ergonomics of preferred pc workstation, when using the offline or online functionality. The virtual flex pendant may be simulated in RobotStudio, allowing realistic testing of virtual twin system.

Figure 3.1.RobotStudio user interface

Figure 3.2.ABB Flexpendant for robot manipulation

3.3 Motion supervision and safety

Visual Safe Move, a software included in RobotStudio, is used to configure robot safety functions both motion and communication wise. It enables definition of motion supervi- sion using the virtual 3d environment and definition of safety function connected signals with easy to use signal editor. By using offline programming capability, robot test safety may be increased by configuring safety functionality before operation with real robot (Ap- plication manual - Functional safety and SafeMove2 2018). Use of RobotStudio and Visual Safe Move are presented with detail in appendix A. ABB robot controller Safety functions may be integrated to ProfiSAFE, CIP safety and hard wired safety I/O networks (Application manual - Functional safety and SafeMove22018).

3.4 Robot programming language

ABB IRC5 controller is programmed with functional Rapid language, which based in C programming language. Motion programming may take place in RobotStudio 3d environ- ment or with actual physical robot. Structure of Rapid program is presented in figure 3.3.

(15)

Programs have some program specific parameters, such as options for program to allow motion sequences. Programs contain modules, which contain the logic and data of the program. Modules, as the name suggests, may be added to program to perform a specific motion task or procedure. Modules contain functions and data that may be called from any other module within the program. System modules may be used as data storage for program variables (Operating manual - IRC5 Integrator’s guide2018).

Figure 3.3. Rapid program structure (Operating manual - IRC5 Integrator’s guide2018)

Typical workflow for time effective commissioning of robot system is to first do initial mo- tion and logic programming before robot arrives to integrator company. Upon arrival, it may be fitted with required tools and peripherals, configured and loaded with programs created and tested using virtual environment. In optimal cases, all that is left, is to teach tool frames, work object frames and robot positions to physical robot system.

(16)

4 INTERFACE REQUIREMENTS

When company specializes in device integration, it is usual to have a standardized doc- umentation for Interface configuration procedures. In most cases, it is more convenient to have changes to device I/O mapping minimized with devices, that are higher in device network hierarchy. For example if a master devices I/O mapping is changed, all the lower hierarchy device mappings may need to be adapted to new changes. This is why newly added slave devices are configured to meet the requirements of higher hierarchy device and network, since in larger networks, local master devices pass information to higher hierarchy.

Interface documentation includes all details and requirements for communication be- tween two devices as well as the functions of devices. It is essential that all control signals are passed correctly from PLC to the robot controller enabling the external con- trol of robot system. Digital control signals or input signals pass a binary value to robot controller. Controller directs the signal to a certain function in robot controller. For exam- ple, a function that enables the manipulator motors could be activated with a single digital signal.

4.1 Functional requirements

Regarding this study, ABB robot system is integrated to an automated manufacturing cell to act as a manipulator for integrated part handling process, in which a robot is tending multiple machining stations and a buffer storage shelf thus providing cell with automated logistics. Material flows in and out of the cell requiring human interaction. This type of automated cell can be referred as Flexible manufacturing system, or FMS, which is a system capable of producing wide array of products with multiple machining stations (Atkins and Escudier 2013).

Hierarchically, in a modern factory, FMS cell is part of factory material flow network con- trolled by higher level production management system. Fastems manufacturing man- agement system MMS handshakes with factory level production management system by providing real time data to management. MMS is used to control cell sized, multi cell sized, or even small factory sized operations and schedule part production process. Each FMS cell has a PLC as master control device, which is used to connect all devices in the cell through FAN. In this study, IRC5 Industrial robot controller is a slave device, which is logically controlled by IPC/PLC unit. IRC5 is industrial robot controller for robot motion

(17)

and logic tasks. It may be used to control most ABB IRB series robots, robot peripherals, such as track units, and custom designed mechanisms fitted with ABB motors. It is im- portant to make sure that the robot system is capable of providing required functionality compatible to robot systems already used by Fastems.

4.2 Documentation requirements

Interface documentation is usually written from the perspective of electrical design to act as an instruction for those responsible for configuring PLC and Robot systems communi- cation parameters. Interface documentation may be viewed as an alternative to electrical documentation of the system. Configuring the robot controller’s I/O mapping and FAN settings are the first tasks during setup right after controller configuration. Both I/O map- ping and Configuration of system specific parameters may also be configured by using a virtual twin. After the configuration of interface, program template and other required files are loaded to robot controller and testing phase may begin.

4.3 I/O communication requirements

Configuring I/O communication is of greatest importance, since it contains means of con- trolling the robot controller externally. Considering this study, the request demands that PLC/IPC sends and receives information to and from robot with I/O signals over ProfiNet.

Due to company practicality, in which robots regardless of manufacturer send and re- ceive to and from same device addresses at PLC. If there is a new robot manufacturer in integration, Robots control signals are set in addresses in accordance of PLC like any other cell device. I/O communication can be divided in two sections. General and safety communication.

4.3.1 General communication

General I/O communication includes signals that transfer information about current robot state out to PLC and information about task objects and status updates into robot con- troller status signals. These signals are listed in a table that includes function and device mapping on both PLC and robot controller for each signal. General communication is set over ProfiNet industrial internet protocol.

4.3.2 Safety communication and functionality

Unlike general I/O signals, safety I/O signals main purpose is to ensure safe operation in robot cell. In case of unexpected situations safety signals transfer data that may stop robot task or trigger cell wide emergency stop. Additionally safety signals are required to transmit data regarding safe area violations, which is part of robot motion supervision functionality.

(18)

If one device in safety communication network enters fail state or safety function is trig- gered on any networked device, all designated cell devices halt and alarms are passed to process control level user interface. In case of using safety protocol such as ProfiSAFE, faulty communication triggers safety stop for all devices due to cyclic integrity analysis of network itself. (Rofar and Franekova 2006).

4.4 Interface logic

Interface logic is the immediate reaction or processing of a certain signal. Responses for PLC request signals are a good example on interface logic. When IRC receives an input signal dedicated as a request, requested function must be executed and output signal indicating the execution of function must be triggered in order to pass the information to PLC unit. This is a simple procedure of slave device replying to master device.

Since all Fastems solutions are native to MMS process control system, it is vital to dis- play all alert and status messages from lower hierarchy devices, including IRC5 controller, to MMS. The passing of robot user interface messages to process control level system is considered part of interface logic. Communication to MMS layer may be done using Ethernet connection over network socket to the closest user interface station. During this study, there were not enough resources to study socket communication to the level required for proper functionality. Therefore, passing of alert message over Ethernet con- nection is not treated as part of interface in this thesis.

(19)

5 CONCLUSION

This study provides background to documentation on initial configuration of ABB industrial robot systems for integration to large scale systems. When the instruction documentation for commissioning is created, it will safe time on performing the configuration and will ensure standardized routine for robot configuration. Direct gains in sales margin may also be gained by implementing the instruction documentation as part of project check- list.

Virtual commissioning of robot system saves time in the whole testing and commission- ing process. Virtual testing of robot unit may prevent certain logic and motion errors with actual robot and in theory, it is possible to configure and program a robot unit, or even a robot cell in virtual environment to a point of proper function saving all the time reserved for testing of the robot system thus minimizing expenses in testing phase, further allow- ing faster commissioning of final system. ABB’s RobotStudio software allows the creation of virtual twin making virtual commissioning possible by means of offline programming.

Though virtual commissioning enables many time saving possibilities, may offline pro- gramming software licence costs overrun the gained value with simple robot systems.

Lastly, the process of configuring an ABB IRC5 robot controller, including communication and control interface, external axis as well as safety functionality is explained in appendix A referring to ABB manuals. Information seen as unnecessary has been left out of the study as to simplify the configuration process. Further studies on the matter could focus on documentation of physical robot commissioning or delivery process of robot systems compared to not using Offline programming or instruction documentation.

(20)

REFERENCES

ABB (Nov. 2019). RobotStudio. URL: https : / / new . abb . com / products / robotics / robotstudio.

Application manual - Functional safety and SafeMove2(2018). ABB AB,Robotics Robotics and Motion.

Atkins, T. and Escudier, M. (2013).flexible manufacturing system. English.DOI:10.1093/

acref/9780199587438.013.2268.URL:https://www.oxfordreference.com/view/10.

1093/acref/9780199587438.001.0001/acref-9780199587438-e-2268.

Baliga, B. J. (2015). Chapter 10 - IGBT Applications: Industrial. The IGBT Device. Ed.

by B. J. Baliga. Amsterdam: William Andrew Publishing, 277–324. ISBN: 978-1-4557- 3143-5. DOI: https : / / doi . org / 10 . 1016 / B978 - 1 - 4557 - 3143 - 5 . 00010 - 9. URL: http://www.sciencedirect.com/science/article/pii/B9781455731435000109.

Blecker, T. (2006). Internet Technologies in Factory Automation. English. Vol. 1. Encyclo- pedia of E-Commerce, E-Government and Mobile Commerce, 683.

Branch, A. (Fall 1996). Mobile Robotics technology breathes new life into automated ma- terials handling. English. Robotics World 14.3. Copyright - Copyright Douglas Pub- lications, Inc. Fall 1996; Last updated - 2017-10-27; CODEN - ROWOEZ; Subject- sTermNotLitGenreText - US, 32.URL:https://libproxy.tuni.fi/login?url=https:

//search-proquest-com.libproxy.tuni.fi/docview/218413479?accountid=14242.

Butterfield, A. and Szymanski, J. (2018).input/output.URL:https://www.oxfordreference.

com/view/10.1093/acref/9780198725725.001.0001/acref-9780198725725-e-2350.

Garcia-Diaz, A. and Lee, H. (1995). An industrial application of network-flow models in cellular manufacturing planning. ID: 275948.DOI:https://doi-org.libproxy.tuni.

fi / 10 . 1016 / S1572 - 4417(06 ) 80035 - 5. URL: http : / / www . sciencedirect . com . libproxy.tuni.fi/science/article/pii/S1572441706800355.

Holubek, R., Sobrino, D. R. D., Kostal, P. and Ruzarovský, R. (Dec. 2014). Offline Pro- gramming of an ABB Robot Using Imported CAD Models in the RobotStudio Software Environment. English. Applied Mechanics and Materials 693. Copyright - Copyright Trans Tech Publications Ltd. Dec 2014; Last updated - 2018-10-09, 62–67.URL:https:

//libproxy.tuni.fi/login?url=https://search- proquest- com.libproxy.tuni.

fi/docview/1631224101?accountid=14242.

ISO 12100 (Dec. 2010).Safety of Machinery. General Principles for Design. Risk Assess- ment and Risk Reduction. standard. International Organization for Standardization.

ISO 8373 (Mar. 2012).Robots and robotic devices — Vocabulary. standard. International Organization for Standardization.URL:https://www.iso.org/standard/55890.html.

Operating manual - IRC5 Integrator’s guide(2018). ABB, AB Robotics Robotics and Mo- tion.

(21)

Rofar, J. and Franekova, M. (Mar. 2006). Functional Safety Specification of Communi- cation Profile PROFIsafe. English. Advances in Electrical and Electronic Engineering 5.1-2. Copyright - Copyright Faculty of Electrical Engineering and Computer Science VSB - Technical University of Ostrava Mar/Jun 2006; Last updated - 2014-09-29, 158.

URL: https : / / libproxy . tuni . fi / login ? url = https : / / search - proquest - com . libproxy.tuni.fi/docview/1365791614?accountid=14242.

Sun, H., Zhang, C., Hong, L. and Jia, Q. (Aug. 2007). Research on a Conceptual 6-DOF Camera Manipulator Mounted on the Space Capsule.2007 IEEE International Confer- ence on Automation and Logistics, 1304–1309.DOI:10.1109/ICAL.2007.4338771.

Wittenburg, J. (2016). Rotation about a Fixed Point. Reflection in a Plane. Kinematics:

Theory and Applications. Berlin, Heidelberg: Springer Berlin Heidelberg, 1–62. ISBN: 978-3-662-48487-6.DOI:10.1007/978-3-662-48487-6_1.URL:https://doi.org/10.

1007/978-3-662-48487-6_1.

(22)

A CONFIGURATION OF VIRTUAL ROBOT SYSTEM

To begin the procedure of creating virtual robot cell, project must be created. In Robot- Studio, project is called solution, which is a collection of folders containing data related to robot configuration, along with "rssln" simulation file which is necessary for use of 3d sim- ulation space. There are three options for creation of a new solution. "Empty station" op- tion generates a blank solution, "solution with station and virtual controller" option opens initial configuration wizard for both robot and controller and "solution with empty station"

option generates a solution without robot manipulator and controller, but with some initial files. Most ideal selection for this cause is "solution with station and virtual controller"

option, since it gives necessary controller and robot manipulator for initialization of robot system.

Figure A.1.RobotStudio start menu

The first operation in configuration process is selection of options. Options are both software and hardware additions for robot controller product sold by ABB. By toggling customize options at solution creation phase, Option wizard opens at solution creation process. The reason options are selected at the beginning is because changing them later results in reset of controller configuration. In case of physical robot order, options are selected when order is being made. Robot manipulator is also selected when creating the solution. Refer to figure A.1 for solution creation.

(23)

A.1 Cell layout

RobotStudio supports IGES, VDA, STEP and the native SAT formats for 3d geometry enabling the creation of full model of the cell to the simulation space. geometries may be used to build mechanisms, or for example tracks, that enables robots linear transition.

Adding a ready track from ABB catalog to the solution is possible from "Home" tab under

"ABB Library". Addition of non ABB geometries requires full license of RobotStudio. To add geometries, follow the next routine. Begin procedure in the "Home" tab.

1. Open "ABB Library", "Import Library" or "Import Geometry" to browse for geome- tries to add in the cell.

2. Select desired geometry to add from selections.

3. Position geometry by right clicking and using methods under "Position" selection.

4. To attach a geometry, that is meant to be used as a tool to tool flange of robot, select geometry in "Layout" tab and drag that geometry to robot geometry, select

"yes" when prompted for attachment.

5. Rotate the tool by right clicking the mouse on the geometry and set orientation in the top left wizard.

A.2 Robot controller configuration

Configuring robot controller includes setting the communication and external axis related parameters. In IRC5 robot controller, configuration data is in form readable form on ".cfg"

files. For example, I/O parameters and signals are listed in EIO.cfg file. Robot studio has tools for writing cfg files either with text editor by opening cfg file in RobotStudio, or using the configuration editors found in "Controller" tab in "Configuration" drop selection.

A.2.1 Motion configuration for external axis

external axes are separate stepper motors controlled and measured by robot controller.

External servos may be used for manipulating practically any mechanism that either moves, or does not move the robot manipulator itself. Most common uses for external axes motors are turntables and binzel control in welding applications and robot track con- trol in general applications.

Configuration data for additional axes are written in separate cfg files. RobotStudio has pre configured external axis configuration files for tracks and turn tables as well as other mechanisms in ABB library. Robot track is configured as follows. Begin process by selecting "Controller" tab.

1. Select "Motion Configuration", this opens motion configuration window.

2. In newly opened window, select top most item in the tree.

3. Click "Add..." button and select configuration file from file explorer.

(24)

4. Confirm by clicking "OK" button and restart virtual controller.

5. Open motion configuration by selecting "motion" in "Controller" drop selection.

6. In "mechanical unit" section, change parameters in external axis so that deactivation of axis is forbidden.

Restart virtual controller in order to write latest changes in controller configuration. When motion configuration is in order, external axis mechanisms are moved in synchronization with robot manipulator.

A.2.2 I/O configuration

Before assigning signals to I/O devices, I/O communication protocol specific settings need to be set up accordingly. Note that controller options define communication pro- tocols that are available. Procedure of defining Profinet specific parameters is as follows.

begin procedure in "Controller" tab.

1. Open I/O Engineering Tool in "Configuration" drop selection.

2. Open "IP Setting" in "Communication" selection and select PROFINET Network.

3. In properties window set ip address and subnet mask as well as used LAN port.

Once Profinet specific parameters are configured, I/O signals are set by filling a list with signal name, signal type, device mapping address and read rights for other devices along with other parameters. This so called I/O mapping is is done with RoboStudio I/O engi- neering tool found in "controller" tab in "configuration" drop selection. Grouped signals are set in the same list as single signals with the only differences being device map- ping addresses stretching more than 1 address and that signal needs to be configured as a grouped signal. Process of defining I/O systems is as follows. Begin procedure in

"Controller" tab of RobotStudio interface.

1. Open I/O Engineering Tool in "Configuration" drop selection.

2. In left selection tree, click open "PROFINET", "Device" and "PN Internal Device".

3. In case the I/O device configration needs to be corrected, delete "PN Internal de- vice" and select new device structure form "Device catalogue".

With I/O device structure being set up, I/O signals may be added in the configuration. To add signals, follow next procedure. begin procedure in I/O configurator.

1. Select DO or DI device to assign signals under profinet device so that "signal editor"

labelled window opens.

2. Write name for the signal.

3. Select signal type from either digital, group or analog signal.

4. Set device mapping address to digital signal with integer and as linear group for group signals.

5. Set identification label to signal, for example what information signals transfers.

(25)

6. Set access level in order to restrict reading of signal.

7. Select if the physical value is inverted.

To enable functional safety on robot system, safety I/O must be configured to form pro- duction cell wide safety network. follow the same procedure on all signals in general I/O communication. Configure safety signals by following the next procedure

1. select "SDO" or "SDI" device to assign signals under profinet device so that "signal editor" labelled window opens,

2. Write name for the signal.

3. Select signal type from either digital, group or analog signal.

4. Set device mapping address to digital signal with integer and as linear group for group signals.

5. Set Source or destination device specific offset on signal mapping.

After I/O signals are configured correctly, robot controller is ready to communicate with external devices in slave configuration in a safe manner. configuration of additional safety functions is explained in safety configuration section.

A.3 Tool and work object configuration

There are two ways of configuring both tool data and work object data. The first way is to write tool or work object data to system file as numeric data, either by writing straight to file as embedded structure in program code or using tool or work object definition wizard. Second way is to use RobotStudio 3d environment to define said coordinate systems to system file. Second way is to teach tools and work objects by using robot kinematic calculation, though this requires physical robot. Usually tools and work objects are defined using both methods, by first defining them using the first method in virtual offline system and later, when robot arrives to factory, teaching the tool and work object using the latter method and usually binding the real physical objects to robot coordinate system. The focus of this work is in virtual environment and because of this, use of robot kinematics to define of tool and work object coordinate systems is not covered in this study. procedure of defining Tool centerpoint or TCP in a tool base coordinate system is as follows. Begin process in RobotStudio "Home" tab.

1. Select "Create Tooldata" from "Other" selection. This will open "Create Tooldata"

wizard.

2. Set name for tool, position and rotation in reference to initial tool coordinate system.

3. Set estimated weight, center of gravity and inertial values.

4. Set storage destination for created tooldata.

5. Finish tool creation by clicking "Create".

(26)

After this procedure tool data is created and selectable in Tool drop selection. Much like configuring tool data, work object is defined as follows.

1. select "Create WorkObject" from "Other" selection. This will open "Create Workob- ject" wizard.

2. set name for workobject.

3. select if robot is holding the work object, which binds workobject to tool coordinate system when enabled.

4. set if workobject is moved by external axis in "moved by mechanical unit" selection.

5. set Cartesian position and Euler or quaternion rotation for workobject in "User Frame" selection.

6. optionally set object frame within user frame coordinate system.

When coordinate frames for tools and work objects are set, the frames appear in the 3d environment. Visual representation in figure A.2.

Figure A.2.Tool frame and WorkObject frames visualised

Finalizing tool and workobject frames with actual robot is much less time consuming when frames are taught close to real position in virtual environment.

A.4 Safety configuration

Configuration of safety features on ABB robot products is done using Visual SafeMove tool in RobotStudio that enables definition of safe zone monitoring, robot axis range moni- toring, as well as safety I/O communication interface for virtual and actual robot solutions.

(27)

A.4.1 Safety I/O functions

Safety I/O communication links two or more devices safety controllers together over a common safety communication protocol. In case of Profisafe and Profinet, both safe and general I/O signals share the same wiring, but safety signals are read by safety device in order to provide safety functionality to automated production cell. In IRC5 products safety I/O signals are read and written by safety functions, such as local emergency stop state and robot movement mode. safety module mapping may be tailored as long as certain listed functions have designated handshaking. In Fastems case, added motion supervision signals are used to ensure mainly device safety hazards controller. The process of adding safety I/O signals to IRC5 safety device using Visual SafeMove tool is as follows. begin process in RobotStudio "Controller" tab.

1. Open VisualSafeMove in "Safety" drop selection.

2. Open I/O configuration by clicking "safe IO Configurator".

3. Click "+" icon next to "PROFIsafe" label and again next to "PN Internal Device".

4. Set address and timeout parameters for input and output signals.

5. Safety I/O signals may now be connected to functions in "Function mappings".

Note that space functions and other user created safety functions may also be connected to signals.

A.4.2 Safe zones and ranges

Creation of motion supervision functions is described in following subsections. In in- structions below "Category0Stop" refers to stopping the robot movement by mechani- cally braking the manipulator to stop. "Category1Stop" refers to stopping the manipulator without mechanical brakes thus being a softer stop enabling motion path to be contin- ued. "NoStop" refers to manipulator not stopping in case of motion supervision violation (Application manual - Functional safety and SafeMove22018).

A.4.3 Safe zone

In ABB industrial robot products, world zones are used to monitor robots position by monitoring user defined supervisory geometries that may be set to encapsulate upper arm of robot or around tool of the robot. These capsule geometries are user defined, so that robot solutions may be opted specifically by application. the process of setting up motion supervision encapsulation geometry by using robot 3d model as reference works in the following way. All steps take place in SafeMove application "Current Station"

selection tree, "Visual SafeMove properties" window and upper toolbar.

1. Open SafeMove application in RobotStudio software from "Controller" tab "Safety"

selection.

(28)

2. Open robot upper arm encapsulation by selecting "Geometries".

3. Set capsule model in toolbar and set dimensions in "Visual SafeMove" window.

4. Create tool by right clicking "Tools" in "Current Station" tree.

5. Set tool geometry and rotation or load tool data from solution in "Visual Safe Move Properties" window.

6. Set activation signal and active status signal from created safe I/O signals.

7. While in "tool" selection, set capsule model in toolbar and set dimensions in "Visual SafeMove" window.

The process of creating safe zones for motion supervision is executed in following way.

All steps take place in SafeMove application "Current Station" selection tree and "Visual SafeMove properties" window.

1. Open SafeMove application in RobotStudio software from "Controller" tab "Safety"

selection.

2. Create safe zone by right clicking "Safe Zone" in "Current Station" tree.

3. Set tool speed supervision priority to either "BASE", "NORMAL" or "OVERRIDE".

4. Set reference of zone to either "Task Frame", "World", "UCS".

5. Set safe zone corner points position and height of zone in "Visual SafeMove" win- dow or in the 3d environment by dragging zone and corner points.

6. To add motion supervision to created safe zone, add tool position supervision by right clicking created zone in "Current Station" tree to open drop selection and se- lecting "Add" to open additional drop selection, then select "Tool Position Supervi- sion".

7. Set activation signal and active status signal from created safe I/O signals in "Visual SafeMove Properties" window.

8. Set stop category to "Category0Stop", "Category1Stop" or "NoStop" for the zone.

9. Set if upper arm geometry is included in position supervision and are the supervi- sory geometries allowed inside the safe zone by checking selection boxes below.

Safe zones may reserve same space, so that motion supervision may have different functionality even in same space. Dynamic safe space is also possible with different parent coordinate system.

A.4.4 Safe ranges

Safe ranges are set with Visual SafeMove tool. Unlike safe zone supervision, safe ranges do not require additional supervisory geometries. In addition to 6 manipulator axis, exter- nal axis, such as robot track motion may be supervised with Safe ranges. The process of configuring axis specific safe ranges is as follows. Begin process in Visual SafeMove window.

(29)

1. Create safe zone by right clicking "Safe Ranges" in "Current Station" tree.

2. Select supervision enabled joints.

3. Rename axis ranges by right clicking created safe range and select "Rename"

4. Set lower and upper bound for each individual axis individual in the newly opened window.

5. Set lower and upper bound for each individual external axis listed below.

6. Implement axis position monitoring, by right clicking created safe range and select- ing "Axis Position Supervision" in "Add" selection.

7. set supervision function parameters in "Visual SafeMove Properties" window.

With supervised safe ranges, it is possible to stop robot movement when axis ranges are violated on purpose or by accident.

A.5 Implementation of robot program

When the robot system is fully configured to point where only program logic is lacking, program containing motion functions and logic is loaded to the IRC5 controller. Procedure for implementation of template rapid program is as follows. Begin process in the "RAPID"

tab of RobotStudio.

1. Open "RAPID" selection in Controller window.

2. Select "Load Program..." by right clicking the TROB1 program.

3. Select "Yes" when prompted if you wish to overwrite current program.

4. Select the ".pgf" file containing the new program with file explorer.

As with any software and especially with programs that are likely to have project spe- cific variations, modularity of program structure is important in order to save time in early phases of robot programming. To add separate function groups or Rapid modules. Re- peat process of loading a program, but instead of selecting "Load Program...", select

"Load Module..." and select the ".mod" or ".sys" files to load on the controller.

Referências

Documentos relacionados

Rok za vložitev tožbe zoper odločbo o prenehanju banke ali odločbo o izrednem ukrepu teče od dneva, ko je odločba vročena vsem članom uprave banke.« ZBan-1L torej določa, da Banka