Additional Parameter Tests
For details on each test, click one of the following links, or scroll down the page:
Calibration Sequence
After the calibration sequence for each motor is taught from the SPEC program, the overall calibration sequence can be tested as follows.
At the monitor, type
DISABLE POWER ;Can only uncalibrate with power off DISABLE DRY ;Only type this if DRY.RUN is enabled PAR NOT.CAL = -1 ;Mark all robots as "uncalibrated" ENABLE POWER ;Re-enable power for calibration CALIBRATE ;Calibrate all robots
If a V+ error message is displayed, see System Messages for details.
If the calibration is too slow or too fast on any motor, change the calibration speed in the "Motor calibration specs" menu.
If you want to correct the calibration by teaching the robot a known position, you can move it to that position, type "WHERE" at the monitor, and compare the joint positions with the desired joint positions. Typically, all you have to do to correct the calibration is change the "Motor position at zero-index (or home sensor or hard stop)" value for each motor in the "Motor calibration specs" menu according to this formula:
where Mnew and Mold are the new and old motor position values, SCALE is the encoder scale factor, and Jact and Jrep are the desired and reported joint angles, respectively.
Using the manual control pendant, move the robot to the limits of its motion on each joint. If the joint contacts a limit switch or hard stop, adjust the software joint limits from the "Joint motion parameters" menu.
Create and execute a program that moves each robot to its READY position. Each robot should move to a safe position in the workcell. If not, adjust the READY position in the "Joint motion parameters" menu.
Robot motion under all pendant control modes (WORLD, TOOL, and JOINT) should be consistent. If the manual control speeds are improperly set, it is possible for the robot to move quickly under one control mode and slowly under another.
To test the manual control speeds, simply move the robot under each control mode with a similar speed setting on the speed pot. If the robot moves at the wrong speed in JOINT control mode, change the pendant speed parameters in the "Joint motion parameters" menu. If the robot moves at the wrong speed in WORLD or TOOL control modes, change the pendant speed parameters in the "Cartesian motion parameters" menu.
If the robot does not move in a straight-line in WORLD or TOOL modes, either the calibrated positions for the joints are incorrect and should be fixed from the "Motor Calibration Parameters" menu, or the link lengths are incorrect and should be fixed from the "Edit link dimensions" menu.
This test evaluates whether the robot moves in a consistent manner in both joint-interpolated motion and straight-line motion.
Create and execute a program that moves the robot with joint interpolated motions such as MOVE. For example:
.PROGRAM test DETACH() SELECT ROBOT=1 ATTACH() TIMER 1 = 0 FOR i = 1 to 10 MOVE a[i] BREAK END TYPE "Total cycle time:", TIMER(1), " seconds." .END
Change the joint-interpolated MOVE to a straight-line MOVES in the above program. Execute the program again and compare cycle times. If the cycle times are not similar, adjust either the Cartesian or joint motion speeds from within the SPEC program.
Remember that the joint-interpolated speeds have precedence over Cartesian speeds. If, for example, the "Joint Speed at SPEED 100" is set to 1000 mm/sec but the "Cartesian Translation 100% Speed" is set to 100 mm/sec on a translational joint, the joint will move very fast in response to a MOVE (joint-interpolated) command, but only 1/10th the speed in response to a MOVES (straight-line) command. On the other hand, if the "Cartesian Translation 100% Speed" is set to 1000 mm/sec, but the "Joint Speed at SPEED 100" is set to 100 mm/sec on the same joint, then that joint will move at the same speed to either a MOVE or a MOVES, because the slow joint speed overrides the fast Cartesian motion speed. Make sure these values are set so that joint and Cartesian motion are reasonably consistent with one another.