For ease of use, the PickPartAtCamera routine combines some operations like
grab image, wait for result, do retry if nothing found and evaluate which action
vision proposed for the robot. The image grabbing could also be handled outside
of the routine, either with autograb or with manual calls. Below is part of the code
used in this routine.
Note the handling of flags for CHANGE_BIN, PICK_INTERLAYER and
PICK_INTERLAYER_AND_CHANGE_BIN relevant for picking with 3D camera. Also
note that there is another routine for handling picking several parts from same
image. Read routine comments for PickMultiPartsAtCamera for information about
this.
VisionResult{CameraNumber}:=GetNewVisionResult(CameraNumber
\DesiredPosition?DesiredPosition,\MaxImageRetries?MaxImageRetries,
\TimeoutTimeVision?TimeoutTimeVision);
TEST VisionResult{CameraNumber}.Action
CASE ABORTED:
! No valid coordinate from vision
MT_SetAlarm "flv_ImageAborted",\WildCardTexts:=
[VisionResult{CameraNumber}.AbortMsg];
CASE NO_DETAILS:
! Allow manual mode again if there is a feeder of that type
IF nFeederType{CameraNumber}=FEEDER_NO_RETURN SetDOSignal
"DOF_AllowManualModeFeeder"+ValToStr(CameraNumber),1;
! Nothing found in image, even after potential retries
MT_SetAlarm "flv_NoPartFoundError";
Stop;
EXIT;
! TODO -------- ONLY FOR CELLS WITH NO BELT, EXAMPLE PALLET
PICKER. REMOVE DOWN TO NEXT DASHED LINE IF NOT NEEDED!
--------------
CASE CHANGE_BIN:
! No valid Pick position in pTarget
! TODO - Make sure pallet is switched
Stop;
! Call ConfirmPick or RefPosOut to move out of camera area and
confirm pick to vision.
! In cells with auto grab, this will also trigg a new image. Use
RefPosOut_ to move out of camera area at the same time as
confirming.
CallByVar "ConfirmPick",CameraNumber;
CASE PICK_INTERLAYER:
! pTarget holds coordinates for an interlayer
! TODO - Pick interlayer with robot or ask operator to remove it
Stop;
! Call ConfirmPick or RefPosOut to move out of camera area and
confirm pick to vision.
! In cells with auto grab, this will also trig a new image. Use
RefPosOut_ to move out of camera area at the same time as
confirming.
CallByVar "ConfirmPick",CameraNumber;
CASE PICK_INTERLAYER_AND_CHANGE_BIN:
! Action only in cells with no feeder
Continues on next page
94
Product manual - FlexLoader SC 6000
3HAC051768-001 Revision: D
© Copyright 2014-2020 ABB. All rights reserved.
7 RAPID program
7.2 FlexLoader application functionality
Continued
Summary of Contents for FlexLoader SC 6000
Page 1: ...ROBOTICS Product manual FlexLoader SC 6000 ...
Page 8: ...This page is intentionally left blank ...
Page 12: ...This page is intentionally left blank ...
Page 78: ...This page is intentionally left blank ...
Page 172: ...This page is intentionally left blank ...
Page 174: ...This page is intentionally left blank ...
Page 176: ...This page is intentionally left blank ...
Page 178: ...This page is intentionally left blank ...
Page 182: ...This page is intentionally left blank ...
Page 184: ...This page is intentionally left blank ...
Page 186: ...This page is intentionally left blank ...
Page 192: ...This page is intentionally left blank ...
Page 224: ...This page is intentionally left blank ...
Page 283: ......