Interaction of motion arguments: Time and Zone
suzanna
✭
How does having large zones affect the time in motion?<br><br>For example, should the following code take a total of 3 seconds or will the times to j1 and j2 be abbreviated because the robot enters the zone and starts the next move?<div><br></div><div>MoveAbsJ j1, v1000 \T:=1, z200, tool0;</div><div>MoveAbsJ j2, v1000 \T:=1, z200, tool0;</div><div>MoveAbsJ j3, v1000 \T:=1, z200, tool0;</div><div><br></div><div><br></div><div><br></div><div>In the bigger picture, I am trying to achieve real-time control from an outside source by sending it the new joint positions over RRI (at ~200 Hz) and then in RAPID adjusting the target to overshoot in an attempt to get the desired velocity at each joint. To get accurate velocity (degrees per second), I need to use the Time argument, but I do not want the robot to take 3x as long to complete the move if I am sending it commands to overshoot by 3x the motion. Some of my real code is below:</div><div><br></div><div><div>VAR num LookAhead:=3;</div><div><br></div><div>IF (ABS(J.robax.rax_1-J_Last.robax.rax_1)>0.001) OR (ABS(J.robax.rax_2-J_Last.robax.rax_2)>0.001) OR (ABS(J.robax.rax_3-J_Last.robax.rax_3)>0.001) OR (ABS(J.robax.rax_4-J_Last.robax.rax_4)>0.001) OR (ABS(J.robax.rax_5-J_Last.robax.rax_5)>0.001) OR (ABS(J.robax.rax_6-J_Last.robax.rax_6)>0.001) THEN</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Time:=ClkRead(TimeSinceLastMove\HighRes);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>J.robax.rax_1:=J_last.robax.rax_1+LookAhead*(J.robax.rax_1-J_last.robax.rax_1);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>J.robax.rax_2:=J_last.robax.rax_2+LookAhead*(J.robax.rax_2-J_last.robax.rax_2);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>J.robax.rax_3:=J_last.robax.rax_3+LookAhead*(J.robax.rax_3-J_last.robax.rax_3);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>J.robax.rax_4:=J_last.robax.rax_4+LookAhead*(J.robax.rax_4-J_last.robax.rax_4);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>J.robax.rax_5:=J_last.robax.rax_5+LookAhead*(J.robax.rax_5-J_last.robax.rax_5);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>J.robax.rax_6:=J_last.robax.rax_6+LookAhead*(J.robax.rax_6-J_last.robax.rax_6);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div> MoveAbsJ J,v1000\T:=Time*LookAhead,z200,tool0; </div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>J_last:=J;</div><div> </div><div> ClkReset TimeSinceLastMove;</div><div> ClkStart TimeSinceLastMove;</div><div> </div><div><span style="font-family: 'lucida grande', 'Lucida Sans Unicode', tahoma, sans-serif; line-height: 1.7em;">ENDIF</span></div></div><div><br></div><div><br></div>
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)
- 801 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings