1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. Industrial Robot Support and Discussion Center
  4. KUKA Robot Forum
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

If my external rotary axis rotates 1,000s of rotations, am I losing precision because of the limits of REAL values?

  • mjnewsum
  • February 28, 2023 at 7:24 PM
  • Thread is Unresolved
  • mjnewsum
    Reactions Received
    1
    Trophies
    3
    Posts
    60
    • February 28, 2023 at 7:24 PM
    • #1

    I want to know if I am losing some precision if I let my rotary axis rotate 10,000s of revolutions.

    I noticed, when I show the $AXIS_ACT value, I only get a couple of decimal places on my rotary axis and it has many more integer values than any other axis.

    I don't know if there is a way to see the full precision of the REAL value, or if what I am seeing is all that can be known because of the limitations of 32-bit REAL.

    If I am losing precision, is there anything I can do to keep my external axis value low so I have better decimal precision? I don't need to know that I have rotated millions of degrees... Is there any way to set the value back to 0.0 without re-mastering the axis?

  • Go to Best Answer
  • Fubini
    Reactions Received
    272
    Trophies
    9
    Posts
    1,872
    • February 28, 2023 at 7:41 PM
    • #2

    Yes you will get into this kind of trouble eventually. Real is not 32 bit. Its less. More like float in C/C++ so approx. 16 Bit but not exactly.

    Afaik only remastering helps. Other option is to actively turn back after the job or parts of it are done.

    Fubini

  • mjnewsum
    Reactions Received
    1
    Trophies
    3
    Posts
    60
    • February 28, 2023 at 8:09 PM
    • #3

    Crazy... so is this loss of precision only in the display of the external axis position as a variable, or does it actually lose precision in the motion of the external axis as well?

  • mjnewsum
    Reactions Received
    1
    Trophies
    3
    Posts
    60
    • February 28, 2023 at 8:13 PM
    • #4

    We have our external axis set so that we can go from +179 to -179 and it will only rotate the 2 degrees, so we don't have to specify really large numbers. I am wondering, if the external axis has rotated 10,000 revolutions for whatever reason, and we tell it to go to 120.456789123, will the the decimal values be truncated in some way to lose precision in the actual position of the axis?

  • mjnewsum
    Reactions Received
    1
    Trophies
    3
    Posts
    60
    • February 28, 2023 at 8:20 PM
    • #5

    Fubini do you know where I could look for more information about KUKA data types?

    I have looked around, but I can't seem to find what the max value would be for a REAL, so I can know how much precision is being lost each time we go another digit of revolutions.

  • panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,033
    • February 28, 2023 at 8:37 PM
    • Best Answer
    • #6

    REAL type is 32-bit.

    of the 32-bits, one is sign, 8 are exponent and remaining 23 bits are significand (mantissa). when looking at values in decimal format, rounding happens at about seventh digit...

    in other words

    120.456789123 is not differentiable from

    120.456787

    try it...

    DECL REAL a,b

    a=120.456787

    b=120.456789123

    if a==b then...

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,033
    • February 28, 2023 at 8:46 PM
    • #7
    Quote from mjnewsum

    Crazy... so is this loss of precision only in the display of the external axis position as a variable, or does it actually lose precision in the motion of the external axis as well?

    precision is determined by size of memory variable uses (number of bits). this does not change based on type of axis (robot axis or external axes).

    so... why would it be any different?

    if your external axis is used as a turntable, or carousel, and the precision is important to you, you probably do not want to keep running it one way endlessly. you may want to alternate direction as long as possible, in order to avoid or minimize accumulation error...

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • mjnewsum
    Reactions Received
    1
    Trophies
    3
    Posts
    60
    • March 1, 2023 at 1:49 AM
    • #8

    Thank you panic mode ! Those details help a lot, and thank you for the very very clear example for testing and understanding.

  • Online
    SkyeFire
    Reactions Received
    1,039
    Trophies
    12
    Posts
    9,380
    • March 1, 2023 at 6:31 PM
    • #9
    Quote from mjnewsum

    Crazy... so is this loss of precision only in the display of the external axis position as a variable, or does it actually lose precision in the motion of the external axis as well?

    Well, it's impossible to get a motor/axis motion ratio that's perfect, so some error is inevitable. An error that would be completely infinitesimal over a mere 360deg of rotation would accumulate to something much more substantial over 360000deg in a single direction. So "unwinding" your "endless" axis on a regular basis is generally considered to be "best practice".

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download