Robot movement Joint Linear CNT

  • Hello, :respect:

    First off, i`m going to excuse myself for the long question and tell you that i`m a beginner in robotics, 6 months :hi-bye: so i may be sounding ridiculous.

    I`m trying to understand how and when i should adjust the speed and the CNT of the robot. Is kinda confusing with so many opinions floating around.

    I personally stick with joint movements CNT 100 in 95 percent of the cases. except pick/place and welding points.

    I hate linear movements because when you need a linear movement to avoid an obstacle you will almost never reach the desired speed, you will overdrive an axis and the robot will start making funny noises, and low CNT because from what i have seen when the robot slows down in that point (the welding gun, for example) is heavily affected by inertia.
    For example, i had some linear movements with low CNT, and even if running the trajectory in manual without step the distance was more than 40 mm it was still colliding sometimes with the jig in auto. Modified with cnt100 and joint movements , and voila.. problem solved.

    So, two questions.
    1.How can i adjust the speed of a linear point to know that will not cause an axis collision? Or how can i know the speed at which i`m overdiving an axis
    2.In my trajectories i use only joint movements with high CNT so often even i think is wrong.
    Can someone tell me what is the best recipe and why?

  • 1. Linear moves and their finicky speed behaviors. The way Fanuc robots calculate their speeds and apply their speed limits do not line up very well, and this is what causes your axis issues on linear moves. Your robot has a TCP linear speed limit, as well as individual axis speed limits. In a joint move, the robot compares every joint to its speed limit, and sets each to the fastest speed they can be set to and still reach their target at the same time. This means that axes traveling a short distance will move very slowly, while axes traveling a large distance will travel as fast as their speed limit allows them. With a linear move, the robot checks if the command speed is legal to its linear speed limit, then calculates the joint speeds necessary to maintain that speed across the linear move. Unfortunately, it does not check any of those joint speeds against any of the joint speed limits.

    Practically, this means you have to be very careful of a lot of odd details of linear moves. The biggest thing we run into is having a short absolute distance with a large posture change. The short distance and the speed it is given tell it that it needs to arrive at its destination in a very short time. It then tries to rev all the axes to max and beyond to get to the new posture in that time limit. Then, ESTOP, fault, bad day. In so far as avoiding this goes, here are my suggestions.

    A. Break up posture changes between multiple points.

    B. Only use linear moves for approach, retreat, and action points. Air cuts should usually be joint.

    C. Test your program at low speed and work your way up. You will get a feel for what moves will cause problems.

    D. When welding, it is important to have a very constant travel speed. We solved this by using an external axis turn table and moving the part under the weld tip.

    2. CNT 100 means the robot will round the corner as close to the point as possible while still maintaining 100% of its speed. CNT 50 will cut the corner a bit less, coming closer to the command position, maintaining 50% of its speed. CNT 0 and FINE in theory behave the same, but some testing a results reported here suggest they do not. FINE will go to the exact command position.

    In general, similar to linear moves, you will have high CNT moves on air cuts, and FINE moves on approach, retreat, and action points.

    A. Be mindful of CNT at different speeds. By their very nature, they take a different path at different speeds. We have punched a servo off of a robot because our techs were trying to cut the path as close as they could and then turned the speed up.

    B. Make all reference positions that trigger a needed output FINE, or tweak their windows until it encompasses a wide drive by.

    C. Again, with welding the path and speed are critical. We use the external axis to complete the entire weld in one move, rather than risk acceleration and declaration from multiple FINE moves.

    Conclusions, it sounds like you are already doing pretty good. I understand feeling like you have marked C as the answer for too many questions in a row, but in this case, the answer really is C a whole lot of the time.

  • I really like robo_eng_13's detailed response. Would like to add one thing. I always get the motion package on the robots I work on and don't seem to have any issues. If you are buying a new robot I would highly recommend buying that option.

    Sent from my SM-G930V using Tapatalk

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now