Velocity Profile with Kinetix Motion

benaiahhenry

Lifetime Supporting Member
Join Date
Sep 2011
Location
Corning, NY
Posts
265
Hey Guys,

I'm trying to figure out what the best way to do a velocity profile is with a Kinetix drive. In my case I'll be using a CompactLogix controller with Studio5000 and most likely a Kinetix 5500.

The move profile I want to make would look something like this for a move from 0-100mm:

0mm – 20mm @ 100mm/s
20mm – 40mm @ 80mm/s
40mm – 60mm @ 60mm/s
60mm – 80mm @ 40mm/s
80mm – 100mm @ 20mm/s

I know I could do this by just watching the actual position and issuing MCD commands to change the velocity, or do something with a virtual axis and a cam profile, but I'm wondering if there is a simpler way to do this?

Other controllers I've worked with have buffered moves where you can queue up a bunch of moves and it will execute them in order blending them together. Does AB have anything like that?

Thanks!

-Benaiah
 
The move profile I want to make would look something like this for a move from 0-100mm:

0mm – 20mm @ 100mm/s
20mm – 40mm @ 80mm/s
40mm – 60mm @ 60mm/s
60mm – 80mm @ 40mm/s
80mm – 100mm @ 20mm/s

I know I could do this by just watching the actual position and issuing MCD commands to change the velocity, or do something with a virtual axis and a cam profile, but I'm wondering if there is a simpler way to do this?

Since the move is over a fixed distance, and apparently not coordinated with any other axis, a MAM with MCD commands based on position monitored by the process seems reasonable. Gearing would offer more precision over the profile and transitions, but at a significant increase in complexity. Select MAM profile (e.g., trapezoid) and MCD parameters to satisfy your system requirements.
 
Thanks for the ideas guys. I've done this with a MAM and MCD's before, I was just hoping for a simpler method (something like buffering moves) that wasn't scan time dependent. I did some testing today with a virtual axis and a MAPC and have it working.
 
You were probably going to be dissatisfied with Motion Change Dynamics (MCD) commands, even if you used a motion event trigger to execute them.

MCDs only take effect at the coarse update rate and with the distances and speeds you were describing, that delay might have been significant.

My application is probably worse because I have to set the Coarse Update to 20 milliseconds for a Kinetix 350 to be able to feed position data to eight MAOC targets.

I wish there were buffered moves in the Logix motion engine that I could string together with an automatic merge to make a velocity profile, but there really aren't.
 
An MAM and an MCD both take effect only at the coarse update rate.

Your system might be a lot faster; mine had only the one Kinetix 350 axis, but it would fault (in profound and mysterious ways) if we didn't keep the CUP value high enough, because of the multiple MAOC targets. I ended up going to 20 ms.
 
An MAM and an MCD both take effect only at the coarse update rate.

Your system might be a lot faster; mine had only the one Kinetix 350 axis, but it would fault (in profound and mysterious ways) if we didn't keep the CUP value high enough, because of the multiple MAOC targets. I ended up going to 20 ms.

I'm also only using a single Kinetix 350, but I'm not doing any output caming so I should be able to have a much lower CUP. Hopefully ;)
 
🙃
You were probably going to be dissatisfied with Motion Change Dynamics (MCD) commands, even if you used a motion event trigger to execute them.

MCDs only take effect at the coarse update rate and with the distances and speeds you were describing, that delay might have been significant.

My application is probably worse because I have to set the Coarse Update to 20 milliseconds for a Kinetix 350 to be able to feed position data to eight MAOC targets.

I wish there were buffered moves in the Logix motion engine that I could string together with an automatic merge to make a velocity profile, but there really aren't.

Lightbulb!

So is that why I have to use multiple instances or retrigger MDS's with a PF527 and MCD doesn't work? The coarse update rate not compatible with CIPSafety?
 
Last edited:
I don't know what might be going on if you appear to need multiple MDS commands to get one to take effect. You may need to look more closely to see if you're getting a conflict between multiple motion commands to the same device.

I don't have much experience with CIP Safety in conjunction with CIP Motion. If I look out into the shop right now I see Kinetix 350 and Kinetix 5500 and PowerFlex 70EC jobs... all of which are using hardwired Safe Torque Off circuits.
 
I don't know what might be going on if you appear to need multiple MDS commands to get one to take effect. You may need to look more closely to see if you're getting a conflict between multiple motion commands to the same device.

I don't have much experience with CIP Safety in conjunction with CIP Motion. If I look out into the shop right now I see Kinetix 350 and Kinetix 5500 and PowerFlex 70EC jobs... all of which are using hardwired Safe Torque Off circuits.

Apologies, my original post was lacking in clarity. When I initiate motion with a PF527 and then want to change speed, MCD does not work. I instead need to either fire a distinct MDS, or MOV a different speed into the initial MDS and re-trigger. (I typically do the first, it's easier to grasp for maintenance personnel.)
This phenomena has always annoyed me, as when I commission a system with Kinetix and PF527 the logic is different and I generally try to make every axis as similar as possible for ease of future maintenance.
 
Last edited:
Apologies, my original post was lacking in clarity. When I initiate motion with a PF527 and then want to change speed, MCD does not work. I instead need to either fire a distinct MDS, or MOV a different speed into the initial MDS and re-trigger. (I typically do the first, it's easier to grasp for maintenance personnel.)
This phenomena has always annoyed me, as when I commission a system with Kinetix and PF527 the logic is different and I generally try to make every axis as similar as possible for ease of future maintenance.

I also know that its possible to start a PF527 with a MSO and a MAJ (not sure if its best practice or not, but it works), if you do that maybe the MCD would work?
 

Similar Topics

Hi all, I am having a problem with my servo motor and I'm absolutely stuck as to why it wont run. Without any gearbox or any load attached to...
Replies
9
Views
3,642
Hello, I have a reactor with a cascaded PID control for control of the batch and jacket inlet temperature. We throw in all the required...
Replies
6
Views
1,721
A query for the motion control experts: I have an app where I measure the position (encoder ∝ K * angle) of a rotating device, and use that along...
Replies
15
Views
3,731
Hi folks, I am upgrading a SLC to a ControlLogix platform. The goal of the project isn't simply to get the same program to run on different...
Replies
7
Views
2,815
Hello All, We are developing a machine that will pull in corrugated pipe into a system. The machine in general is like a worm, as in the pipe has...
Replies
9
Views
3,332
Back
Top Bottom