FF1 adds a percentage of the commanded velocity to the output. Ideally in a steady state FF1 should be high enough that P doesn't have to do anything. FF2 adds a percentage of the commanded acceleration to the output. Ideally FF2 should be high enough that D doesn't do anything. Basically they are creating a rough mathematical model of the motor and machine so that emc can calculate the motor's needs in advance. If the model was perfect you would not need any P or D but in practice you still need them reasonably high.
Here is how I set them up. First set I to zero and set the following error limit quite high (say 1" or more). Set P and D as low as possible while not tripping the following error limit. Now do long moves at your average feed rate and keep turning up FF1 until the following error during steady state movement is as low as possible. If you go too high the following error will start going up again. Next do a series of short moves and keep turning FF2 up until the following error during acceleration is as low as possible. Once you have FF1 and FF2 set up, play with P and D to get rid of the remaining errors. Test P and D over a range of feed rates and at rapid rate. Finally tweak I to get the steady state error down. Afterwards you may need to adjust I and D up a bit more. Expect to spend around 1 day per axis to get it spot on. > and also- is deadband the window over and under 0 volts that yields no > movement? does this mean that you can kill steady-state oscillations by > increasing deadband? Only use deadband to stop I from continually tripping between two encoder counts at idle. Normally 1/2 of one encoder count is enough deadband. You cannot use deadband to stop oscillation. I would set this to 0 until the axis is properly tuned. > Also- if you guys dont mind- please gimme an Idea of what you have these > variables set to and what kinda results they gave you. How long is a piece of string? These values are VERY dependent on your setup. There are no fixed values that you can use. On my lathe I can get <0.001" following error at all times with rapid up to 4m/min or 160IPM. At feed rate or stationary it is much lower. Les Pat Lyons wrote: > Hello- > > I'm having some difficulty tuning my P, I, and D variables. I've used PID > before in school, and understand how they are calculated, but I wanted to > ask about the three terms I don't really understand... > > I found in the wiki these explanations: > > *FF1 = 2.000 a velocity feedforward, helps reduce following error > proportional to velocity > * > * FF2 = 0.25 an acceleration feedforward, helps reduce foll. error when > accelerating* > > However I dont quite understand them- would someone be willing to maybe > define the math behind these concepts? > > and also- is deadband the window over and under 0 volts that yields no > movement? does this mean that you can kill steady-state oscillations by > increasing deadband? > > Thanks again!!! > -pat > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Emc-users mailing list > Emc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-users > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users