Zone not working vor TriggLIOs Movement
timosmd
✭
Hello,
i am trying to make 2 Linear movements consisting of 3 points in total using TriggLIOs.
The 1st movement is p10-p20 and the 2nd movement is p20 to p30.
Instead of stopping at p20 I would like to use a zone of 100 (z100).
This works fine using the MoveL instruction.
Unfortunately it doesn't work using the TriggLIOs instruction.
Does anyone have an Idea why?
Here is some part of the code:
________________________________
i am trying to make 2 Linear movements consisting of 3 points in total using TriggLIOs.
The 1st movement is p10-p20 and the 2nd movement is p20 to p30.
Instead of stopping at p20 I would like to use a zone of 100 (z100).
This works fine using the MoveL instruction.
Unfortunately it doesn't work using the TriggLIOs instruction.
Does anyone have an Idea why?
Here is some part of the code:
________________________________
PROC procSpray( robtarget pStart, robtarget pTarget{*}, speeddata vSpray, zonedata zSpray, num nPosOffs, num nDist, num nLag, INOUT tooldata tSpray \ INOUT wobjdata wobjSpray)
VAR triggios trigSpray{2};
!SPRAY ON
trigSpray{1}.used:=TRUE;
trigSpray{1}.distance:=nPosOffs - nDist;
trigSpray{1}.start:=TRUE;
trigSpray{1}.signalname:="do_Spray";
trigSpray{1}.equiplag:=0;
trigSpray{1}.setvalue:=1;
!SPRAY OFF
trigSpray{2}.used:=TRUE;
trigSpray{2}.distance:=0;
trigSpray{2}.start:=FALSE;
trigSpray{2}.signalname:="do_Spray";
trigSpray{2}.equiplag:=-nLag;
trigSpray{2}.setvalue:=0;
....
TriggLIOs pTarget{1}, vSpray, \TriggData1:=trigSpray, zSpray, tSpray \wobj:=wobjSpray;
ENDPROC
________________________________
MAIN (doesn't work using z100, still stops at p20; v_tcp=0):
....
TriggLIOs pTarget{1}, vSpray, \TriggData1:=trigSpray, zSpray, tSpray \wobj:=wobjSpray;
ENDPROC
________________________________
MAIN (doesn't work using z100, still stops at p20; v_tcp=0):
procSpray p10_90x300x90E_Flaeche, [p20_90x300x90E_Flaeche], vSpray, z100, nPosOffs, nDist, 0, tSprayActive \wobjSpray:=wobjForm;
procSpray p20_90x300x90E_Flaeche, [p30_90x300x90E_Flaeche], vSpray, zSpray, 0, 0, nLag, tSprayActive \wobjSpray:=wobjForm;
________________________________
________________________________
0
Answers
-
I am not certain why, but I am curious as to why your tooldata and workobject data are INOUT rather than optional or required.Lee Justice0
-
Otherwise I get the error:
4600-107627/RAPID/T_ROB1/BDR_Spray(50,47): Argumentfehler(123): Argument für 'PERS'-Parameter Tool ist kein Verweis auf eine Persistente oder ist schreibgeschützt. 01.07.2022 15:35:26 Allgemein
So that's a workaround I found - but I am not sure why it works this way unfortunately.0 -
Did you try writing like this?
And I don't mean separating the lines.PROC rEnter( string area, VAR signaldo request, VAR signaldi signal, VAR signaldo notclear, PERS tooldata tool, \PERS wobjdata WObj \switch swMoveAbs |switch swMoveLin |switch swMoveJoint \robtarget pPreviouspoint |jointtarget jposPrevious) Lee Justice0 -
Hi timosmd,
My only thought is the amount of execution time between each movement, how long between passing p20 and getting to p30? In the RAPID Overview manual under 'Interpolation of Corner Paths' there is a section called "Planning time for fly-by points" that says:
"Occasionally, if the next movement is not planned in time, programmed fly-by points can give rise to a stop point. This may happen when:-
A number of logical instructions with long program execution times are programmed between short movements.
-
The points are very close together at high speeds.
If stop points are a problem then use concurrent program execution."
To check this can you slow the speed down and try it?
Good Luck,
Harry
0 -
Categories
- All Categories
- 5.5K RobotStudio
- 396 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 250 ScreenMaker
- 2.8K Robot Controller
- 316 IRC5
- 61 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 799 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings