








































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Simulador Robo ABB,nao tenho certeza se funciona no win 7,8,qualquer coisa instale uma maquina virtual com xp.Caso nao consigam instalar entre em contato. [email protected]
Tipologia: Notas de estudo
1 / 80
Esta página não é visível na pré-visualização
Não perca as partes importantes!









































































ABB Robotics Products AB DPT / MT S-72168 VÄSTERÅS SWEDEN Telephone: (0) 21 344000 Telefax: (0) 21 132592
1 Programming PalletWare
The PalletWare package is a set of Rapid modules and user screens that perform all operations related to the palletizing process. The execution motor of PalletWare is ready to use, and the process will execute according to cell, pick and place, product and cycle parameters. These parameters are in Rapid modules and can be either defined by a Rapid programmer, or, more easily, through the PalletWizard off-line tool.
2 Palletizing process description
PalletWare depicts a palletizing process as static descriptions and dynamic descriptions. The static components describe the objects that will be involved in the process: the robot, the tool, the products and the stations. The dynamic components describe the way these static components will operate on each other: how products will be settled in the tool, where products will be picked or placed on one station.
Figure 1 Tool description
Figure 2 Products
grip zone 1 grip zone 2 grip zone 3
y
x
z
x y
z
Box empty pallet sheet
There can be several stations of any type. A pick and place process always involves one pallet station, on one hand, and one feeder or one stack station, on the other hand.
Figure 5 Typical work object definitions
x
In-feeder y
y
x
pallet station
y
x stack station
x
In-feeder y (products width to width)
(products length to length)
The palletizing cycles are described by PalletWare in terms of pallet cycles, layer cycles, pick and place cycles and pick or place actions:
Figure 6 Palletizing pallet cycle
Figure 7 Palletizing layer cycles
3 PalletWare features
PalletWare is mainly an engine executing the palletizing process according to static and dynamic descriptions.
Parallel processing
It is possible to run 5 different palletizing processes in parallel. To each of these processes a different pallet cycle can be associated. These palletizing processes are referenced as execution contexts. All execution data related to a palletizing process are indexed by a corresponding context number. To allow this context switching, the elementary action performed by the PalletWare engine is a complete pick and place cycle for one process, always leaving the tool empty.
Multi station processing
A list of possible pallet stations on which to operate is associated with each pallet cycle. By default, the first pallet station in this list is used.
In the same way, a list of possible feeder stations or stack stations on which to operate is associated with each layer cycle. The default feeder or stack station that is used is the first in this list.
It is possible to override these default values, for a complete pallet cycle or for a particular pick and place cycle, provided that the stations used to override the default values are included in the corresponding lists.
On line tuning
All pick and place movements are calculated in run time. The geometric and weight parameters of the products, the approach vectors, the speeds and accelerations can be modified while executing, without stopping the robot and reprogramming the cell.
Product geometry
The geometric parameters of the products contain 2 components: the nominal size for length, width and height, and offsets in these 3 dimensions.
The nominal size is fixed, but the offsets can be modified at execution time through the PalletWare screens, within a programmable domain. The limits of this domain should be defined according to the layer pattern definitions.
The actual size of the products is recalculated at the beginning of each layer cycle; all pick and places cycles in one layer cycle will work with the same product size.
Kinematic parameters
A default speed, a default acceleration and a default acceleration ramp are defined for the robot; they are used when the robot is carrying no product.
For each product a minimum speed, a medium speed and a maximum speed are defined, along with an acceleration and an acceleration ramp.
All of these speed and acceleration parameters can be modified at execution time through the PalletWare screens.
Dynamic parameters
The weight of the products can be modified at run time through the PalletWare screens. Each time a product is picked or placed, the actual load in the gripper is recalculated so that the robot movements can be controlled in the most optimal way.
Station approach height
An approach height is defined for each station; for the stack stations it is a value related to the workobject of the station; for other stations it is an offset to the actual height of the station, and is used to calculate an access position to the station.
This approach can be modified at execution time through the PalletWare screens.
Product picking and placing approach
Approach offsets when picking or placing products are defined for each product.These offsets, combined with approach directions defined in the pick or place actions, are used to define a pre-picking and a pre-placing position, relative to the actual picking or placing position. There is one vertical and one lateral approach offset for picking, and one vertical and one lateral offset for placing. These approach offsets can be modified at execution time through the PalletWare screens.
Multi-picking and multi-placing
Multi-picking and multi-placing are supported for grippers with different gripping zones. All combinations are supported: single picking/single placing, single picking/ multiple placing, multiple picking/single placing, multiple picking/multiple placing.
Persistency
All PalletWare significant data are implemented as persistent data. This implies that the execution contexts will not be lost in case of new program execution, started from the beginning (intentionally, by running a new program or setting PC to main, or forced by the system, when loading new modules). Especially when loading new pattern definitions, the current execution contexts will by default remain unchanged. But it is simple to abort from the main program any palletizing cycle, giving a lot of flexibility and the opportunity to only restart from the beginning the pallet cycles where pattern definitions have been changed.
safety height
As it is now, PalletWare has no knowledge of the actual layout of the cell, but, before moving between stations, PalletWare will call a user routine to determine the safety height on this path. This user routine will typically return the biggest of the current heights of all the stations that are on the way between (and including) the origin station and the destination station.
The safety height to be returned by this user routine is an absolute safety height, that is a height defined in the base work object (wobj0). A system procedure can be used to get the absolute safety height of any defined station.
Figure 11 Safety height principle
For example (Figure 11), when moving from Feeder station 1 to Pallet station 1, the current heights of Stack station and of Pallet station 2 must be taken into account to determine the safety height and avoid any collision during the motion.
safety radius
In the same way, PalletWare will call a user routine to define the retract radius to be used between 2 stations. If this radius is set as 0, the move between the 2 stations will be a simple ‘U’ type move (see Figure 12), that is from the approach position Pap1 upward to the safe position Psafe1, at the calculated safety height, then straight to a position Psafe2 above the destination station, at the calculated safety height, then to the approach position Pap for this station.
Stack station
Feeder station 1 Pallet station 1
Pallet station 1
Pallet station 2
Figure 12 Safety motion without retract radius
The actual z components of Psafe1 and Psafe2 are calculated in the following way: the returned safety height, increased by the product height and the product picking or placing offset, is translated into a height in the current work object and compared to the approach position of the station. The bigger of these 2 values is used. This means that the z components of Psafe1 and Psafe2 may differ, but translated into the base work object, they will always be greater than or equal to the returned safety height increased by a product height and a product picking or placing offset.
z1=safety height [current work object]+product height +product picking (or placing) approach height z2= station current height + station approach height
z_safe [current work object]=Max(z1, z2)
If a safety retract radius is set to a non-zero value (see Figure 13), the path between stations will include a retract movement so that Psafe1 and Psafe2 are at the specified radius from the robot. The z components for these positions is the same as above:
Pallet station 1 Stack station Feeder station 1
Pallet station 1
Pallet station 2
Pap2 Pap
linear move joint move
Psafe2 Psafe
Figure 14 Typical multi-picking or multi-placing
Pw1, Pw2, Pw3 are the picking positions; they are calculated according to the definitions in the pick action.
Pp1, Pp2, Pp3 are the pre-picking positions taking into consideration the approach distances associated with the product, and the approach vectors defined in the pick action; they are calculated from the picking positions, adding the product vertical approach, and subtracting the product lateral approach on the x and y directions. In other words, the approach vector indicates the direction of the final move to the picking/placing movement. In this example the picking vector is 0 for Pp1, and -x for Pp2 and Pp3. The lengths of these offsets are associated with the product and are described in 9.1: Data in PAL_CELL : Product definitions ; the vector is defined in the pick or place action and is described in 9.4: Data in PAL_DYN : pick and place action parameters.
Pa1, Pa2, Pa3 are the approach positions, taking into consideration the station approach height. The x and y components are the same as the pre_picking or pre_placing positions. The z component is determined as follows: the approach height of the station is compared to the product height, increased by the product picking ( placing ) approach offset, to avoid interference with other products, and the bigger value is added to the z component of the picking position.
The movements to the approach positions Pa1, Pa2,... Pa n are made by the system. The movements to Pp1, Pp2,...Pp n and to Pw1, Pw2, Pw n are opened to the user. (See PAL_USRT, routine MoveToWorldPos.)
Pa
Pp Pw
Pa
Pp Pw
Pa
Pp Pw
Work station
x
y
z
The complete sequence of this picking movement is:
The system module PAL_CYC contains the description of the palletizing process. The pallet composition, the pallet cycles, the layer cycles, the pick and place cycles and the pick or place actions are described in this module in a standard way as data and, mainly, routines.
N.B. The routines in this module only provide a description of the process; the process execution itself is performed by the PAL_EXE module.
The system module PAL_EXE is the execution module of PalletWare. It uses the cell definitions from PAL_CELL and the process definitions from PAL_CYC to achieve the actual palletizing cycles. The elementary action performed in this module is a pick and place cycle. At key points user routines from PAL_USRR or PAL_USRT will be invoked to customise the palletizing process (search on a stack, activate/deactivate/ check grip zone,...).
Some utility routines are also available to give process information to the user.
This module cannot be modified by the user.
The system module PAL_USRR contains routines to customise the palletizing process. The names of these routines can be freely defined and the execution module accesses them via an index in an array containing all routine names.
These user routines can be invoked at the beginning and at the end of a pallet cycle, at the beginning and at the end of a layer cycle, at the beginning of a pick and place cycle, between pick and place, and at the end of a pick and place cycle.
The user routines to perform actions when entering and leaving a station, and the user routines to pick products on a stack, are also defined here.
The system module PAL_USRT contains some standard user routines. The names of these public routines are predefined, but they can call some private routines that the user can define freely.
The public routines are called by the execution module to get the proper work object, tool, safety or robot configuration data, to customise the final picking or placing movements, or to activate/deactivate/check a grip zone. It also contains the wobjdata and tooldata corresponding to the stations and tools described in PAL_CELL.
The system module PAL_SCR contains data used as an interface with the PalletWare user screens and a routine to initialise this data after the first loading of the user screen package.
The system module PAL_DYN contains the data that will change dynamically. This module contains only data (no routine).
The program module contains the production cycles. It typically invokes the execution module with different contexts, according to the production rules.