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. Fanuc 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

How does CNT exactly work?

  • dofrey
  • April 23, 2019 at 5:40 PM
  • Thread is Resolved
  • dofrey
    Reactions Received
    4
    Trophies
    3
    Posts
    40
    • April 23, 2019 at 5:40 PM
    • #1

    Hi guys,
    I would like to know how the CNT function exactly works. What happens when I do CNT 100 or CNT 50 mathematically? Is there a mathematical definition for it?

    If I have two paths with different length (see attachment), one from A to B to C and the other from D to E to F and I put to both the same speed and the same CNT. Will the relation of the paths be significant for the curvature or does the "radius" stay the same?


    Thanks a lot for your help!

    Images

    • CNT_comparison.png
      • 16.25 kB
      • 2,000 × 1,890
      • 280

    Files

    CNT_comparison.png_thumb 3.62 kB – 1,349 Downloads

    Edited once, last by dofrey (April 23, 2019 at 5:43 PM).

  • Robo_Eng_13
    Reactions Received
    26
    Trophies
    4
    Posts
    432
    • April 23, 2019 at 6:16 PM
    • #2

    First and foremost, the math behind the motion is horrifying and without going neck deep into calculus, differential equations, linear algebra, and inverse kinematics, you will not likely get an exact mathematical representation of the path to predict or plan motion with.

    That being said, the general principles are relatively simple.

    CNT100 means that the robot will come as close as it can to the point while maintaining 100% of its speed. This means that at higher speeds, there will be a theoretically larger radius or curvature, and it will miss the point by a larger margin. CNT50 means the robot will come as close to the point as it can while maintaining at least 50% of the speed. CNT0 should theoretically be the same as a FINE point, but some tests have shown that it is not.

    A lot of things will effect the path of the robot. The CNT#, the speed of the move, the override speed of the robot, the robot's acceleration and deceleration profile and where along that profile it is at that point, the payload, the necessary joint angles needed for a particular move, and the physics programmed by the manufacturer on what constitutes the maximum load to place on the robot in given situations. Even the orientation of the path relative to gravity can have an impact.

    In general, a FINE point and a CNT0 point should go all the way to the programmed point, with some unreliability in my experience of whether or not there is a brief stop or slowdown at that point.

    Best practice with CNT moves is to slowly step up the speed and re-test the path until you reach full production speed. The higher your CNT value, the slower you should step up your speed. CNT moves are best reserved for open air moves between stations, and some weld points along a line or constant curve, to maintain proper speed. FINE moves are relatively reliable to follow the same path at different speeds, but ALWAYS verify before you trust it. FINE moves are usually used at pick and place points, or weld start and stop points.

  • TexDino
    Trophies
    3
    Posts
    38
    • April 24, 2019 at 7:14 AM
    • #3
    Quote from Robo_Eng_13


    A lot of things will effect the path of the robot. The CNT#, the speed of the move, the override speed of the robot, the robot's acceleration and deceleration profile and where along that profile it is at that point, the payload, the necessary joint angles needed for a particular move, and the physics programmed by the manufacturer on what constitutes the maximum load to place on the robot in given situations. Even the orientation of the path relative to gravity can have an impact.

    Shouldn't override speed leave the path as is? I've never accurately measured the CNT paths on the robot, but it looked like it's the same independent of override

    If my posts are dumb please tell me so I can post better ones :smiling_face:

  • dofrey
    Reactions Received
    4
    Trophies
    3
    Posts
    40
    • April 24, 2019 at 8:03 AM
    • #4

    Thanks a lot Robo_Eng_13. This is an important fact that CNT has to do with the reduction of the speed.
    As I am programming my own robot controller and path interpolator for a different robot I wanted to know how Fanuc solves the problem. So you can imagine I already am neck deep into maths :winking_face:

    I found a paper suggesting to solve the smoothing of direction changes depending on time. So the higher the smoothing value the less a single axis is on its linear path. Actually it is similar to maintaining a percentage of the speed but differently defined. (I hope you can see the paper without an account)

    Do you know that what you told happens in the controllers of Fanuc or is it more a guess from observations?

  • Robo_Eng_13
    Reactions Received
    26
    Trophies
    4
    Posts
    432
    • April 24, 2019 at 2:16 PM
    • #5
    Quote from dofrey

    Do you know that what you told happens in the controllers of Fanuc or is it more a guess from observations?

    Some i know, some i assume based on observed behavior. I have a Bachelor's degree in Mechanical Engineering with a minor in Robotics focused on programming, and Kinematics was a big part of that. I have now been a robotics engineer working with Fanuc robots in production for almost 4 years. So, a lot of what i have said is based on what i know that they MUST do to accomplish what they accomplish, and part is based on what i have seen and tested, and read that others have tested here and elsewhere. There is always room for error.

    Another point that may or may not be in the paper you found is that this is a physical arm in the real world, and the mass of the robot and the long term health of its components are taken into account. This will play a huge roll in where the controller draws the line on some of its boundaries, and will factor in to its calculations. The arms are aluminum, which means they WILL experience fatigue failure eventually, no matter how light the load, so the load placed on the castings will likely be taken into account to ensure that the lifespan is what it needs to be. The motors and breaks will also be taken into account.

    Quote from TexDino

    Shouldn't override speed leave the path as is? I've never accurately measured the CNT paths on the robot, but it looked like it's the same independent of override

    My experience is very much that override speed has an impact on the path. It is possible that other factors have obfuscated reality and override does not effect path, but it seems to me that it does, based on what i have observed.

  • dofrey
    Reactions Received
    4
    Trophies
    3
    Posts
    40
    • April 24, 2019 at 2:37 PM
    • #6

    Great thanks!
    I guess Fanuc also does not really provides everything to the public, so observations and smart people to interpret them is what we have :winking_face:

    Edited once, last by dofrey (April 24, 2019 at 2:40 PM).

  • HawkME
    Reactions Received
    567
    Trophies
    10
    Posts
    3,268
    • April 24, 2019 at 2:38 PM
    • #7

    If you have the Motion Package option or Constant Path option then override speed will not affect the path. This is a very useful option to have that makes testing new paths a breeze.

  • Robo_Eng_13
    Reactions Received
    26
    Trophies
    4
    Posts
    432
    • April 24, 2019 at 2:47 PM
    • #8
    Quote from HawkME


    If you have the Motion Package option or Constant Path option then override speed will not affect the path. This is a very useful option to have that makes testing new paths a breeze.

    That would probably be the difference! I do not believe we have or use that option.

  • TexDino
    Trophies
    3
    Posts
    38
    • April 24, 2019 at 2:51 PM
    • #9
    Quote from Robo_Eng_13

    That would probably be the difference! I do not believe we have or use that option.

    I have Constant Path on all my robots, it came as standard. Maybe it's difference between markets, I'm in EU

    If my posts are dumb please tell me so I can post better ones :smiling_face:

  • Lemster68
    Reactions Received
    295
    Trophies
    9
    Posts
    2,452
    Blog Articles
    7
    • April 24, 2019 at 2:55 PM
    • #10
    Quote from Robo_Eng_13

    That would probably be the difference! I do not believe we have or use that option.

    If, when you select the motion termination type, you see CD in addition to the normal FINE or CNT, then you have the option. CD is Corner Distance, specified in mm, the distance from the taught point at which it can round the path. I think it should be standard, but you know Fanuc, they want you to pay for everything.

  • Robo_Eng_13
    Reactions Received
    26
    Trophies
    4
    Posts
    432
    • April 24, 2019 at 3:13 PM
    • #11

    We have 90 arms, some from Europe, some from America. We may have this option and just not utilize it, and we may only have it on some robots. The management team who ordered the robots did not do a very good job of keeping them standardized.

  • scotty
    Reactions Received
    43
    Trophies
    5
    Posts
    497
    • April 24, 2019 at 6:36 PM
    • #12

    Just want to leave it here:
    Bézier curve. Most of maps path finder works with Bezier curve to have smoother path.
    https://en.wikipedia.org/wiki/B%C3%A9zier_curve

  • Shellmer
    Reactions Received
    52
    Trophies
    5
    Posts
    161
    • April 24, 2019 at 9:03 PM
    • #13

    CR is your friend if you want a true path behavior like abb. For cnt values on old robots I've found that for starts (next to fine points) its better to use cnt100 in order to let the robot accelerate, then when close to a fine point use cnt50-80. Also L movements are more reliable than J, with L movements the robot will make a more constant path...

    Also the override speed is noticeable if you are programming an old robot. With a 1000mm/s(50%) speed the path betwheen 15% override and 100% override its pretty the same. If you step up to 2000mm/s(100%), the path its different betwheen that 2 speed overrides.

  • lemon132
    Reactions Received
    2
    Trophies
    2
    Posts
    14
    • April 27, 2022 at 2:39 PM
    • #14

    Hello, i'm trying to reverse engineer the CNT of fanuc. I need to simulate the trajectories so my AI can learn on it. Does anyone have any idea if there's a description of fanuc's method for cnt ? i'm afraid if i use other methods i will get different results.

  • pdl
    Reactions Received
    266
    Trophies
    9
    Posts
    1,504
    • April 27, 2022 at 6:07 PM
    • #15
    Quote from lemon132

    Hello, i'm trying to reverse engineer the CNT of fanuc. I need to simulate the trajectories so my AI can learn on it. Does anyone have any idea if there's a description of fanuc's method for cnt ? i'm afraid if i use other methods i will get different results.

    Maybe train your AI to read this entire thread from the beginning.

  • lemon132
    Reactions Received
    2
    Trophies
    2
    Posts
    14
    • May 2, 2022 at 2:32 PM
    • #16
    Quote from pdl

    Maybe train your AI to read this entire thread from the beginning.

    If you are reffering to CR stuff, it only works with linear movements. My algorithm do the planning in the joint space for joint movements.

    Edited once, last by lemon132 (May 2, 2022 at 5:02 PM).

  • pdl
    Reactions Received
    266
    Trophies
    9
    Posts
    1,504
    • May 2, 2022 at 7:07 PM
    • #17

    Fanuc's specific math for CNT is their IP, and they don't share it with anyone.

    This post (#2 from this thread) has more information than what Fanuc will officially share.

    Just like your first post in this thread stated, you will have to reverse engineer their path planner. There is nothing more that you will get from Fanuc.

    The handling tool manual has one four sentence paragraph that goes over CNT, and one picture. In my manual, MAROUHT9307191E REV B, it starts on page 7-80.

  • DTS_USER
    Trophies
    1
    Posts
    1
    • January 4, 2023 at 12:01 AM
    • #18
    Quote from lemon132

    If you are reffering to CR stuff, it only works with linear movements. My algorithm do the planning in the joint space for joint movements.

    Is there any place I can follow your work? This is really fascinating!

  • hermann
    Reactions Received
    403
    Trophies
    9
    Posts
    2,593
    • January 4, 2023 at 7:41 AM
    • #19
    Quote from lemon132

    .. My algorithm do the planning in the joint space for joint movements.

    But the pictures in your very first post seem to show linear movements :winking_face:?

  • halanqueiroz
    Trophies
    1
    Posts
    1
    • May 4, 2023 at 1:37 PM
    • #20
    Quote from lemon132

    Hello, i'm trying to reverse engineer the CNT of fanuc. I need to simulate the trajectories so my AI can learn on it. Does anyone have any idea if there's a description of fanuc's method for cnt ? i'm afraid if i use other methods i will get different results.

    Hello friend.. Did you come to any conclusion?

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

Users Viewing This Thread

  • 1 Guest
  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