scarince
Lifetime Supporting Member
I have a very simple application but I'm not very experienced with motion and looking for your advice.
I have a rotary axis. Kinetix 5700. I put a cylindrical part onto the axis and rotate it at about 900 rpm to do a metal forming process. The forming process only takes about 2 seconds. This part only weighs a few pounds but the axis tooling is built to take a heavy compression load, so there's a lot of inertia in the rotating mechanical system.
The axis has to stop in the "home" position for loading and unloading. While the part is cylindrical, the end is not, so the rotating nest has to be aligned for a robot to load the part. It's not super critical....a tolerance of a few degrees is plenty. There is a home-position prox that is used for homing, but once the axis is homed then the process can just use the position feedback. It's configured so that one revolution = 1.0. In other words, 0 and 1 are both home position.
The machine builder wrote the logic like this: The do a MAM and they flash it on and off 10X/second, and every time they tell it to go to position = 50. Once they are ready to stop the rotation, they send another MAM to go to position 0, absolute position, no merge. My problem is that while it works, the axis stops and runs backwards to get back to zero. It seems to decelerate far faster than necessary and then it wastes time moving backwards to get back to position 0.
If I change the accel/decl values for either of these MAM's, then the axis doesn't even stop, it just keeps turning. I don't understand why.
It seems like this should be done with a MAJ for the forming process and then a MAS and then a MAM to position 0, or maybe it should be a MAJ and then a MAM to slow it down, and then another MAM to stop it at position 0? I haven't seen enough examples of the correct way to do this to know how to best approach it.
All I need to do is turn this axis at a constant speed, and then stop it at a known position. It seems very fundamental.
I have two question:
1) What is the "correct" way to control this motion? It seems weird to me to spam an instruction with a flashing bit to get it to turn. I'm interested in your advice.
2) The machine builder used the same motion tags in every instruction of the same type. In other words, they used the same tag in all of the MAJ's, and the same tag in all the MAM's, etc. Shouldn't they be different since they're control tags?
Apologies if I omitted anything important...please just ask.
Thanks
I have a rotary axis. Kinetix 5700. I put a cylindrical part onto the axis and rotate it at about 900 rpm to do a metal forming process. The forming process only takes about 2 seconds. This part only weighs a few pounds but the axis tooling is built to take a heavy compression load, so there's a lot of inertia in the rotating mechanical system.
The axis has to stop in the "home" position for loading and unloading. While the part is cylindrical, the end is not, so the rotating nest has to be aligned for a robot to load the part. It's not super critical....a tolerance of a few degrees is plenty. There is a home-position prox that is used for homing, but once the axis is homed then the process can just use the position feedback. It's configured so that one revolution = 1.0. In other words, 0 and 1 are both home position.
The machine builder wrote the logic like this: The do a MAM and they flash it on and off 10X/second, and every time they tell it to go to position = 50. Once they are ready to stop the rotation, they send another MAM to go to position 0, absolute position, no merge. My problem is that while it works, the axis stops and runs backwards to get back to zero. It seems to decelerate far faster than necessary and then it wastes time moving backwards to get back to position 0.
If I change the accel/decl values for either of these MAM's, then the axis doesn't even stop, it just keeps turning. I don't understand why.
It seems like this should be done with a MAJ for the forming process and then a MAS and then a MAM to position 0, or maybe it should be a MAJ and then a MAM to slow it down, and then another MAM to stop it at position 0? I haven't seen enough examples of the correct way to do this to know how to best approach it.
All I need to do is turn this axis at a constant speed, and then stop it at a known position. It seems very fundamental.
I have two question:
1) What is the "correct" way to control this motion? It seems weird to me to spam an instruction with a flashing bit to get it to turn. I'm interested in your advice.
2) The machine builder used the same motion tags in every instruction of the same type. In other words, they used the same tag in all of the MAJ's, and the same tag in all the MAM's, etc. Shouldn't they be different since they're control tags?
Apologies if I omitted anything important...please just ask.
Thanks