You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For job status (`GRI_GET_JOB_STATUS`): `R[150] = 1|2|3|4` → INACTIVE|RUNNING|DONE|FAILED.
215
+
R[150] carries signed status: `<0` error, `0` ok, `>0` warning. For pose-returning calls, success (`0`) means a pose is available in `PR[53]`. For job status (`GRI_GET_JOB_STATUS`), `R[150]=0` on success and the job state is in `R[152]` (1..4).
221
216
222
217
## Hand-Eye Calibration
223
218
@@ -232,7 +227,7 @@ Quick start using the example program:
232
227
! Initialize calibration
233
228
CALL GRI_OPEN_COMMUNICATION ;
234
229
CALL GRI_HEC_INIT(0) ;
235
-
IF R[150:gri obj status]<>1,JMP LBL[error] ;
230
+
IF R[150:gri error code]<>0,JMP LBL[error] ;
236
231
237
232
! Capture calibration poses
238
233
J P[10:cal_pos_1] 100% FINE ;
@@ -248,7 +243,7 @@ CALL GRI_HEC_SET_POSE(0,8) ;
248
243
249
244
! Execute calibration
250
245
CALL GRI_HEC_CALIBRATE(0) ;
251
-
IF R[150:gri obj status]=1,MESSAGE[Calibration complete] ;
246
+
IF R[150:gri error code]=0,MESSAGE[Calibration complete] ;
252
247
253
248
CALL GRI_QUIT ;
254
249
```
@@ -315,6 +310,12 @@ The FANUC GRI client uses a layered architecture:
315
310
-**Background Module**: Compiled KAREL `.pc` (`gri_comm_background.pc`) handling socket/protocol and register bridging
316
311
-**TCP Socket**: Binary protocol communication with vision system
317
312
313
+
### Pose Frame Behavior
314
+
315
+
- The background module reads the current robot pose for protocol exchange as base (UF[0]) to flange (UT[0]).
316
+
- Implementation detail: it temporarily saves and sets `$MNUFRAMENUM[1]`/`$MNUTOOLNUM[1]` to `0` only for the `CURPOS(0,0)` call, then restores the previous values immediately. This guarantees a deterministic world→flange pose independent of the active user/tool frames.
317
+
- Future versions may replace this with a math-based conversion that avoids any temporary frame changes.
318
+
318
319
## Deployment Checklist
319
320
320
321
-[ ]`gri_comm_background.pc` loaded
@@ -339,7 +340,7 @@ CALL SETUP_GRIPPER ;
339
340
! Add vision capability
340
341
CALL GRI_OPEN_COMMUNICATION ;
341
342
CALL GRI_TRIGGER_JOB_SYNC(1) ;
342
-
IF R[150:gri obj status]=20,CALL PROCESS_VISION_RESULT ;
343
+
IF R[150:gri error code]=0,CALL PROCESS_VISION_RESULT ;
343
344
CALL GRI_QUIT ;
344
345
345
346
! Continue with existing logic
@@ -352,7 +353,7 @@ Integrate GRI error handling with your existing error management:
0 commit comments