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

Adding external encoder to reduce backlash of linear track

  • bats
  • February 23, 2021 at 5:05 PM
  • Thread is Unresolved
  • bats
    Trophies
    3
    Posts
    4
    • February 23, 2021 at 5:05 PM
    • #1

    Hello,

    I have a KR16 cybertech with an external axis configured to a linear track.

    Controller: KRC4, KSS:8.6. Application: Welding

    The external axis is mathematically coupled axis.

    I have added additional encoder / resolver to linear track. The 7th axis has to follow this external encoder / resolver for better positioning. Helping me compensate mechanical backlash. The position correction should work in both jogging and program execution.

    Went through RSI and ConveyorTech but unable to find a proper modus of implementation.

    Can we control positioning of a synchronized external axis via additional encoders / resolvers?

    Many Thanks!!

  • SkyeFire
    Reactions Received
    1,060
    Trophies
    12
    Posts
    9,456
    • February 24, 2021 at 8:09 PM
    • #2

    Depends. The 7th axis being mathematically coupled is going to make this much harder. Are you trying to achieve realtime coordinated motion of all 7 axes? Or could you get away with just using E1 as a high-precision positioner separate from the rest of the robot?

    If E1 were asynchronous, you could control it from RSI, and simply feed the desired position from the Robot Interpreter to RSI when you need E1 to move. If that motion has to be synchronized with A1-A6... for each motion, you would need to pre-calculate a TCP distance, then live-track the TCP's progress over that distance while "dangling a carrot" in front of the RSI module controlling E1, varying the distance based on how fast the TCP is moving. And if the TCP path is circular or non-linear in some other way....

    Honestly, the simplest method to improve the accuracy of a linear axis is to eliminate backlash. Simply avoiding any reversals, or applying anti-backlash motions to keep the preload of the gearing constantly biased in a consistent direction, gives great improvements for minimal investment.

  • colinb83
    Reactions Received
    13
    Trophies
    2
    Posts
    102
    • February 24, 2021 at 10:11 PM
    • #3

    As posted above, a lot of your issues might be navigated by taking a different programming approach, your solution does sound like adding an extreme amount of complexity that might be avoided with simple solutions,

    That said there are other things you could consider such as laser tracking and correction, but without knowing the project or available budget its hard to advise.

  • bats
    Trophies
    3
    Posts
    4
    • March 2, 2021 at 10:25 AM
    • #4

    Skyfire, Colinb83 Sorry for the delay in reply. Was in "Quarantine" due to Covid.

    All system axes will be working in sync. Continuous calculations for the positioning can be prone to error. I will stick with better mechanicals.

    Skyfire can you elaborate on
    "Simply avoiding any reversals, or applying anti-backlash motions to keep the preload of the gearing constantly biased in a consistent direction, gives great improvements for minimal investment."

    Thanks and Regards.

  • SkyeFire
    Reactions Received
    1,060
    Trophies
    12
    Posts
    9,456
    • March 2, 2021 at 11:28 PM
    • #5
    Quote from bats

    Skyfire can you elaborate on
    "Simply avoiding any reversals, or applying anti-backlash motions to keep the preload of the gearing constantly biased in a consistent direction, gives great improvements for minimal investment."

    For an asynchronous 7th axis, the simplest anti-backlash procedure is to always end a motion in the same direction. That is, if moving from -100 to +100, nothing else is needed. But if moving from +100 to -100, the axis should be moved to, say, -110, then to -100. The idea is that, whenever moving the axis to a position where accuracy is required, the final motion should always be in the + direction. For a simple linear axis, this eliminates almost 100% of any backlash error. Basically, backlash only becomes a problem when the axis reverses direction.

    If you are performing calibration of the axis, this rule also applies. As long as you use the same anti-backlash motions during calibration as during production, your accuracy should improve greatly.

    This also applies to the full robot arm. By using such techniques in my programs (in either joint space or Cartesian), I was able to greatly improve accuracy for aerospace fuselage assembly.

    For a fully synchronous 7th axis, this becomes more difficult, but it can be programmed. Break your program into sections that only need the 7th axis to move in the + direction, and only move the axis in the negative in subroutines added in between the accuracy-critical sections. Or use a simple anti-backlash motion on the 7th axis at the beginning of each accuracy-critical program. The trick is to only allow reversal of the axis during parts of the program where accuracy is non-critical, and to re-establish backlash correction at the beginning of any accuracy-critical path. And during the accuracy-critical path, the axis must only move in one direction, or remain stationary, never reverse.

    A simplistic example:

    Code
    PTP StartPoint ; non-accurate move, all axes
    PTP_REL {E1 -10} ; first half of anti-backlash move
    PTP_REL {E1 10} ; second half of anti-backlash move
    PTP EndPoint ; as long as EndPoint is in a + direction on E1, no backlash errors of E1 should have any effect

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
  • krc5
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • 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
  • krc5
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • 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