02-13-2006 09:00 PM
02-15-2006 12:52 PM
Mark,
If you set Td to 50, this means that your dervative constant will only be calculated every 50 iterations of your PID loop. So... if you change Td while running your loop you will have to wait until the next multiple of your new Td value for the Kd value to be updated.
I don't know if this is what is causing the behavior you are seeing, but it might be. I am going to look into this a bit further and try to give you a more detailed explaination.
Lorne Hengst
Application Engineer
National Instruments
02-15-2006 08:43 PM
Lorne,
Thanks for your help. I have actually already discovered the problem with my test. It turns out I was giving a step command that was too large, so even though I set the maximum acceleration and velocity to be large, the trajectory generator in the motion control card was smoothing out my step command, causing the derivative pulse to be larger than expected, with additional smaller steps near the edges of the main pulse. When I decreased the amplitude of the square wave that I was using to generate a step command, the width of the derivative pulse reacted exactly as expected. So thank you for your willingness to check into this for me, and sorry for bothering you about this.
Mark Leusink