Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
Search
Feb 25
Darrell Gehlsen
Got EMC to load to the point that I can get it out of ESTOP and turn the machine on using xemc or the tk interface.
Now when I try to move an axis I get a following error message. I think it is because it is looking for an encoder input (which I do not have). I am using the frequency mode and minimill io Darrell |
You are using the right parts. I think your problem is your P value is set
too low. If it is too low the axis actual position will fall behind the commanded position and you will get a follow error. It has nothing to do with looking for an encoder input as in emcfreqmot the encoder input is virtual. I find that on my system 150 is about the minimum value I can use for P and that at 1000 the motors are getting driven faster than they can respond and my max speed suffers. Ray Henry posted a great description of the PID parameters written in laymans terms on the EMC mailing list. It follows for the benefit of this group: Tim and other new freqmod/smdromod users. This is a rather long post about P but this axis tuning stuff becomes critical for stepper users with these new tools. This is an IMHO view of P, I, D. (with flame suit in place) BTW I've seen some excellent stuff on the web regarding PID tuning but don't have specific links handy. There are also a bunch of auto tuning and computational tuning procedures but I know nothing about any of them. All three variables (6+ really) look at what is happening between commanded and actual position in the emc. My comments below may be a bit unsatisfying for those who are accustomed to very precise things but they come from a number of years of twiddling with servo controls. P - process variable. --------------------- This is the gain control. It is a bit like the volume on a music system. If it is set too low you can't follow the lyrics. If it's set too high the windows rattle and the neighbors fuss. Some authors refer to P as proportional band. Think of it as a pair of lines, one ahead of the commanded position and one behind it. Actual position should be somewhere between the lines. If the actual position is farther behind then that below line the controller will run the axis flat out to reach the slower line. Conversely, if the actual position is ahead of the above line the controller will do all it can to bring actual position down to that upper bound. As long as the actual position is between the lines, the controller will ramp gain up and down so that actual approaches commanded. The larger the P number the narrower the space between these lines. Set P too low and your axis works like a dedicated couch potato during super bowl or world soccer finals -- even a fire may not rouse it. This condition is rather easy to spot because the axis is sluggish. Set P too high and your axis will develop palsy. On most machines you can hear this condition by putting your ear to the motor. You may want to do this when others aren't watching -- or use a stethoscope or a long socket extension -- or perhaps the graph function. Palsy will sound like a hum or grind when the motor is sitting still or moving very slowly. You can also feel palsy if you wrap your hand around the ball screw or grip the drive belt or pulley. (disclaimer -- This demonstration is done by a professional with only three remaining fingers, don't try this at home) Deadband may mask too much P when a motor is sitting still so you may want to move the axis very slowly and listen to the sounds around each step. If the axis keeps up with commanded position at high speed and during acceleration and there is not a lot of ringing, grinding, jumping at very low speed, then you are real close. I - Integral variable. ---------------------- Integral works a bit like a shock absorber. Any change in either actual or commanded position gets rounded off or averaged in so that acceleration/deceleration brought about by P is absorbed and released more slowly over time. No integral and you get the full P effect of change in commanded position. Too much integral and the axis seems to wander off on it's own without much regard for P. A little integral may smooth out some of the frequency jumps when a stepper is running right near one of those troublesome rates. D - Derivative variable ----------------------- Derivative works like passing gear for acceleration or a jake-brake for stopping. Whenever commanded position changes rapidly, d will really kick the amp/motor in the *** to follow the rate-of-change of the axis command rather than the difference between commanded and actual position. Derivative works against inertia so if you've got lots of iron to start or stop dial some in. But derivative will increase palsy so you have to balance it against gain. T - Test -------- The final proof of tuning is in the cutting. So after your best guess with all the watching, hearing, feeling done to each axis, get out a chunk of soft aluminum, a small end or ball mill, and begin to mill circles or arcs that pass 90 degrees between each pair of axis. I like outside circles because you can hold them up to the light and see how the finish looks near the quadrants. Digital systems will give you some steps as one axis approaches zero and the other approaches the set feedrate so don't expect a perfect mirror arc finish. Backlash and backlash compensation also affect the appearance here. Servo drives will work better than steppers. (digital vs analog) But the smoother the saw teeth the better. Be prepared to spend some metal on this! And make a list of your settings, changes, and a better/worse judgement about the result of each change. On occasion I've spent pages of paper and made piles of swarf to get a stubborn machine to where I wanted it. Good luck and may the force be with you. Ray --- END OF REPOST---- I hope that helps. I have found that emcfreqmot does require you to fiddle witht he settings a lot more, but once you get them right it is just impressive in the speed it offers. There is also a setting in emcfreqmot.c (located in /usr/local/nist/emc/src/emcmot if I remember correctly) that controls the base period of the frequency. Setting this value to a smaller value will improve the top speed you can achieve. I find it by searching for: period = (yes, there is a single space between period and =) The default is 20 and on an AMD K6 2D 500 mHz I am able to use a value of 10 and Matt Shaver is using a value of 12 on a PII 350 if memory serves me right. After you edit this value you must recompile by entering: make PLAT=rtlinux_09J all from in the directory the file is in. Tim [Denver, CO] |
Darrell
Ok, I got it working. The problem was in the OUTPUT_SCALE it came set at
toggle quoted message
Show quoted text
1.000 0.0 and it needed to be 1000.0 0.0. I thought I read that you can set the acceleration separately for each axis but I only find one setting. Darrell ----- Original Message -----
From: Tim Goldstein <timg@...> To: <CAD_CAM_EDM_DRO@...> Sent: Friday, March 03, 2000 4:34 PM Subject: Re: [CAD_CAM_EDM_DRO] Feb 25 From: "Tim Goldstein" <timg@...>commanded and actual position in the emc. My comments below may be a bitthe windows rattle and the neighbors fuss.bowl or world soccer finals -- even a fire may not rouse it. This condition isIf the axis keeps up with commanded position at high speed and duringor commanded position gets rounded off or averaged in so thatmuch regard for P. A little integral may smooth out some of the frequencyjumps when a stepper is running right near one of those troublesome rates.with all the watching, hearing, feeling done to each axis, get out a chunk ofnear the quadrants.settings, changes, and a better/worse judgement about the result of each change. On10 and Matt Shaver is using a value of 12 on a PII 350 if memory serves mediscussion of shop built systems in the above catagories. To Unsubscribe, read archives, change to or from digest. |
Jon Elson
Darrell Gehlsen wrote:
From: "Darrell Gehlsen" <dgehlsen@...>You can turn the following error parameter up to a larger value to prevent following errors. Or, maybe, it is due to the P gain being too low. If the errors only occur at higher speeds, turn up P for each axis to a higher value. If it ocurrs at low jog speeds, then turn up the error limit to several inches. Jon |
Darrell
Does the P gain affect stepper motion?
toggle quoted message
Show quoted text
Darrell ----- Original Message -----
From: Matt Shaver <mshaver@...> To: <CAD_CAM_EDM_DRO@...> Sent: Friday, March 03, 2000 10:37 PM Subject: Re: [CAD_CAM_EDM_DRO] Feb 25 From: "Matt Shaver" <mshaver@...>axisFrom: "Darrell" <dgehlsen@...> discussion of shop built systems in the above catagories.but I only find one setting.It's not exactly the same thing, but you can vary the P gain with similar To Unsubscribe, read archives, change to or from digest. |
EMC now is handling steppers as if they were servos from what I understand
toggle quoted message
Show quoted text
(this may only be with the freqmot setup & the DRO setup?) and using freqmot I can confirm that P,I, and D definitely have an effect on steppers. If I set P too low I get constant follow errors at any speed, If I set D to anything but 0 I start having a problem with the motors stalling on acceleration (probably because this setting is trying to make the motor get up to speed faster than the stepper can accelerate). I have played with various I settings between 1 and 1000 and it does seem to help me get even higher feed rates, but I have not really figured a way to see what works best on this one. You can easily play with these settings by going to the settings menu and selecting calibration. The values will be for the axis that is currently selected and will take effect as soon as the calibration window is closed. Make sure you remember or write down the setting you settle on as the values you put in the calibration window are not saved back to your .ini file, you have to edit them in manually. Tim [Denver, CO] timg@... <mailto:timg@...> -----Original Message----- |
Matt Shaver
From: "Tim Goldstein" <timg@...>freqmot I can confirm that P,I, and D definitely have an effect on steppers.P, I, and D have an effect when you use freqmod or smdromod, but not when using steppermod (which will eventually be phased out [no pun intended ;) ] unless someone really needs it). Matt |
to navigate to use esc to dismiss