Reset external axis reference system to known value
Fabri91
✭
in RobotStudio
Hi all,
I'm grappling with an issue regarding the need to reset the position of an external rotational axis.
This axis is installed on a tool, and during the process it gets wound by several revolutions. The "Independent axis" option is available and in normal use the IndReset function does the job quite nicely.
The constraint, however, is that rarely it may happen that the tool slips on its transmission belt by one tooth or so: in this case a sensor reference on the tool is provided, such that a known position can be found (e.g. 32 degrees, or whatever).
What I would need to is, with the tool in this known position, to reset this axis' coordinate system such that it reads this known position - essentially calibrating this axis, via RAPID, should such a slippage occur.
To my knowledge the IndReset function is not suitable in this specific case because it only rewinds the axis' reference system by an integer number of revolutions, but I may be missing something in its documentation.
Has anyone faced a similar issue? Thanks!
I'm grappling with an issue regarding the need to reset the position of an external rotational axis.
This axis is installed on a tool, and during the process it gets wound by several revolutions. The "Independent axis" option is available and in normal use the IndReset function does the job quite nicely.
The constraint, however, is that rarely it may happen that the tool slips on its transmission belt by one tooth or so: in this case a sensor reference on the tool is provided, such that a known position can be found (e.g. 32 degrees, or whatever).
What I would need to is, with the tool in this known position, to reset this axis' coordinate system such that it reads this known position - essentially calibrating this axis, via RAPID, should such a slippage occur.
To my knowledge the IndReset function is not suitable in this specific case because it only rewinds the axis' reference system by an integer number of revolutions, but I may be missing something in its documentation.
Has anyone faced a similar issue? Thanks!
0
Answers
-
A fine calibration would reset it to zero but I don't think that is available through rapid.Lee Justice1
-
That was my thought as well - ideally I would be able to command a fine calibration via rapid, but like you said I haven't found a way to perform it via RAPID, if there is one.Maybe I can interact with the system parameters via ReadCfgData and WriteCfgData to manipulate the calibration offset?For example maybe I could move the axis to the known zero position, read the motor's angular position via
ReadMotor
and then use this value inWriteCfgData "/MOC/MOTOR_CALIB/TN2","cal_offset",angularPositionReadWithReadMotor;
where TN2 is this external axis.Would this be a somewhat sane approach? If yes, I assume that since I manipulated configuration parameters I would have to restart the robot?
0 -
Why fix a clear hardware fault with software?
Build the tool so it doesn’t slip any tooths
You could also store the new “at sensor offset” and use it when positioning the axis.This can be done in rapid and doesn’t require a restartSystemintegrator - Web / C# / Rapid / Robotstudio
If I helped, please press Vote Up0
Categories
- All Categories
- 5.5K RobotStudio
- 395 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 249 ScreenMaker
- 2.7K Robot Controller
- 310 IRC5
- 59 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 785 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 4 Job listings