RobotStudio event

Laser Measurements

Hi! I'm a student (so I'm kind of new to RAPID) and I've been asked to write a module so the robot can measure the diameter of  different cylinders and spot their closest point to the laser.

Robot will have those cylinders attached to the tool but of course that tool is not perfect and thus there might be some variations between the orientation of the cylinders and the TCP's orientation.

So here comes my question, is there some kind of instruction to help me adjust those orientation variations?

Comments

  • B_Baan
    B_Baan
    edited October 2014
    Hello, I'm a student too.

    I have been working with RAPID the past two months, and I think i can give you an answer. I am not 100% sure it's the correct one though, so if i'm wrong don't bother to correct me. Here we go:

    Within the tooldata of the tool you're using you can find the orientation of the tool coordinate system. It's located within the tframe (which is the tool frame, or tool coordinate system centerpoint).
    The orientation is expressed in quaternions. If you wish to know what these quaternions are, i cannot answer that since I barely know.

    What I do know is that you can find the rotation along the X, Y and Z axis with these quaternions.

    With the built in function EulerZYX you can calculate the rotation along the X, Y and Z axis (For more info about EulerZYX, check out this document: " http://www05.abb.com/global/scot/scot241.nsf/veritydisplay/688894b98123f87bc1257cc50044e809/$file/Technical reference manual_RAPID_3HAC16581-1_revJ_en.pdf " at page 835.

    You can convert these Euler angles back to quaternions using the OrientZYX function.

    This is, for me, the easiest way to adjust the orientation since I know euler angles, and don't know quaternions.


    I hope this will give you a push in the right direction.


    Cheers, Bryan
  • Thank you very much, this will definitely help with my code.

    Regards, Manuel