Referencing robolink

From Wiki
Revision as of 15:00, 2 July 2017 by Chmeyer (talk | contribs)

The robolink arms provide reference switches which allow a precise and reproducible referencing. This page shows how the referencing is done and how it can be adapted.

Why is this necessary? The joint electronics store the last position of the robot also during power off. But it might be that the joints are moved by e.g. gravity or manual force when the robot is switched of. Then collisions might occur when a program is started. Therefore the Cartesian motion and starting programs is only allowed when the robot has performed a referencing after start up.


1. Performing a referencing

"Reference Robot" menu entry in CPRog

The robot should be jogged manually close to the reference switches, then the referencing is initiated. In the standard configuration the single joints will then perform a sweep motion with increasing amplitude until it finds the reference switch. Then it performs a slower approach motion from both sides of the reference point to precisely find the center of the reference point.

A video containing the referencing process is here: Referencing and slow motion video (66MB)

  • Switch on the robot and start CPRog
  • Connect / Reset / Enable the robot. Now the status light on the left corner of CPRog is green.
  • Jog the robot arm on the or close to the reference switches. Indication:
    • The orange light on the stepper modules of the the control an on when the reference point is reached
    • In the version with motor encoder the reference switch on the robot lights up in yellow color
  • Open the referencing dialog by pressing on the button "Configuration \ Reference Robot" in the menu on the upper left circle
  • The robot has to be enabled to start referencing
  • Reference the first joint:
    • Pay attention that the joint can move without collision
    • Press the "Start Referencing Joint 1" button on the dialog
    • Wait until the reference motion ended
    • Now the status in front of the button should be "Referenced"
  • Proceed with the other joints as with joint 1. You can reference several joint at the same time
  • When all joints are referenced you can close the dialog and proceed to operate the robot


Possible Problems:

  • The joint cannot be jogged to the reference switch due to the joint limit: Set the joint positions to zero position with the menu button "Configuration / Set Joints to Zero". Then press "Reset" and "Enable" and proceed.



2. Adapting the reference motion

Stepper tab in ModuleCtrl

The type of reference motion and the parameter can be adapted using the ModuleCtrl tool.

The following parameter can be changed:

  • Type of reference search motion:
    • Straight: Motion in one direction until the reference switch is reached
    • Sinus: Sweep motion with increasing amplitude until the reference switch is reached
    • None: No reference motion, the module is tagged as "Referenced" directly after start up
  • Referencing from both sides: When checked the module performs a slow search motion to find the edges on both sides of the reference point. It calculates the center out of these values. This procedure provides higher precision.
  • Referencing velocities:
    • Referencing speed: used for the search motion
    • Ref speed slow: used for the slow search motion from both sides, when checked
  • Sinus parameter:
    • Sinus ref tics: increase of the amplitude in each cycle
    • Sinus ref max cycles: how many search cycles are performed
  • Offset at end switch: This position is set when the end switch is reached, see Define the zero position offsets.


The parameter can be changed with the software tool ModuleCtrl, to download see this page: Config Software ModuleCtrl.

  • Start ModuleCtrl and the robot control
  • Press the "Connect" button
  • Choose the module you want to adapt: Joint1 = CAN-ID 0x10, Joint2 = CAN-ID 0x20, ...
  • There should be a status message with some error messages now
  • Switch to the "Stepper" tab
  • Press "Read from Board" to upload the current parameter
  • Change the parameter - !! be careful not to do big changes !!
  • Press "Write to Board" to save the parameter




For questions or comments please get in contact with us: info(at)cpr-robots.com