Is Motion Active?
It has been a While for Me on the S4C Platform and i was looking to ask a few Questions. i will start out with the First:
How to Know that motion is Active programactically?
In another Robot Brand i would perform the below Code, but.... Im looking to Know a way to Set "bIsSettled"
Thanks,
****************** CODE BELOW EXAMPLE***************
;System variable mapping
CONTINUE
bEStopActive=iStationEStop
CONTINUE
bIsCalibrated=$ROB_CAL
CONTINUE
bIsPowered=$PERI_RDY
CONTINUE
bEStopActive=iStationEStop
CONTINUE
bIsCalibrated=$ROB_CAL
CONTINUE
bIsPowered=$PERI_RDY
;Turn bRobotParked on and off appropriately
CONTINUE
bIsEmpty=($PRO_IP.P_ARRIVED==0)
CONTINUE
bIsEmpty=($PRO_IP.P_ARRIVED==0)
CONTINUE
IF (bIsEmpty and (not bIsEmptyLast)) or (not bIsEmpty) THEN
CONTINUE
nTmrSettled=$ROB_TIMER
nTmrSettledQ=0
ENDIF
CONTINUE
nTmrSettledQ=($ROB_TIMER-nTmrSettled)
bIsEmptyLast=bIsEmpty
CONTINUE
bIsSettled=$ROB_STOPPED AND NOT $PRO_MOVE AND (nTmrSettledQ>50)
CONTINUE
bRobotParked=bIsSettled AND (distance(pLocPoint[nPntPark],$POS_ACT)<25)
IF (bIsEmpty and (not bIsEmptyLast)) or (not bIsEmpty) THEN
CONTINUE
nTmrSettled=$ROB_TIMER
nTmrSettledQ=0
ENDIF
CONTINUE
nTmrSettledQ=($ROB_TIMER-nTmrSettled)
bIsEmptyLast=bIsEmpty
CONTINUE
bIsSettled=$ROB_STOPPED AND NOT $PRO_MOVE AND (nTmrSettledQ>50)
CONTINUE
bRobotParked=bIsSettled AND (distance(pLocPoint[nPntPark],$POS_ACT)<25)
0
Comments
-
You will probably have to re-write a bit, the most natural instruction should be "WaitRob" which stops program execution until the robot has stopped moving.Motion stops with the "fine" argument on the MoveL instruction.Steve0
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)
- 800 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings