modify position with flexpendant [PickMaster 3]

Dear All,

A? A? A?In our near application we want using pickmaster with 6 axis robot. With our old system without pickmaster we can modify position easily from flexpendant, but after using pickmaster we get some difficulties. We have tried to modify position using flexpendant with pickmaster system but position couldn’t be changed. Is there any solution so we can modify position without have to work from original position? (I mean adding offset from original position ex : moveL RelTool(SafePos,..,..,..,..)…;).A?:frowning:

Thanx…

You probably need to change the use of the itemtarget.

There are some cases where the itemtarget used as the reference for a workobject, and the robtargets have been stored in system modules and therefore possible to teach.

The Pickmaster rapid program is stored on the pickmaster PC, and transferred to the robot each time the project is started, so to make an adjustment you need to modify the rapid program on the PC.

Hi Mats and Knuds,

Do you mean the robtarget are ‘picktarget with wobjpick’ and ‘placetarget with wobjplace’? And there are at least two position without wobjpick/place : Safepos and homepos(wobj0). I’ve tried to adding some position (with wobj0) in Pickmaster PC,but after i run program there are error that controller don’t recognize robtarget position. What should I do?

Thanx..

A?

picktarget is of type itmtgt.
Type itmtgt is a structure witch inherits robtarget

7.3.1. itmtgt - Item target data

Usage

itmtgt is used to describe one pick or place item.

Description

Itmtgt identifies an item to pick or place and contains the position.

Components

tag

Data type: num

Sequential number identifying the item.

type

Data type: num

Type of item.

scene

Data type: num

Sequential number identifying the scene, corresponding for example to a picture taken by the

vision system.

robtgt

Data type: robtgt

The pick or place position.

This is an example where the vision model detected a corner of a box. The item target position was then transformed to the object frame of the tracked workobject and a custom path could be programmed to place the the piece properly into the box. The robtargets were stored in the ppaUser.sys module.

PROC PickPlaceSeq()
Pick PickIndex{1};
PlaceTgtToWobj PlaceIndex{1};
ENDPROC

PROC PlaceTgtToWobj(num Index)
VAR robtarget TempRobT;

Coordinated;
WObjPlace:=ItmSrcData{Index}.Wobj;

GetItmTgt ItmSrcData{Index}.ItemSource,PlaceTarget;

!Invert the Place target around Y axis and use as workobject
TempRobT:=RelTool(PlaceTarget.RobTgt,0,0,0Ry:=180);
WObjPlace.oframe.trans:=TempRobT.trans;
WObjPlace.oframe.rot:=TempRobT.rot;

MoveL pPlaceAppr1,MaxSpeed,z50,GripperWObj:=WObjPlace;
SetDO Signal1_till_plc,1;
MoveL pPlaceAppr2,MediumSpeed,z20,GripperWObj:=WObjPlace;
MoveL pPlaceAppr3,MediumSpeed,z10,GripperWObj:=WObjPlace;
TriggL pPlaceDrop,LowSpeed,ItmSrcData{Index}.VacuumRev1T2:=ItmSrcData{Index}.VacuumOff1,z5Inpos:=ItmSrcData{Index}.TrackPoint,GripperWObj:=WObjPlace;
GripLoad load0;
TriggL pPlaceDepart1,MaxSpeed,ItmSrcData{Index}.Ack,z20,GripperWObj:=WObjPlace;
UnCoordinated;