Jim Fleig - CNC Services wrote:

>In conversation with a supplier of motion control products for EMC and Mach3 
>the discussion of PID loops arose.  The discussion was in the context of servo 
>driven systems.
>
>Here is some information that I would welcome others review and comment.  
>There are no flames in the following and there is not intent to start any 
>flaming.  An apples to apples comparison is being sought.
>  
>
In the same vein ...

>A system has to be chosen for to retrofit a mill that will be cutting 3D 
>surfaces.  Curve intersecting curve intersecting flat on an angle, etc.  I 
>have retrofit similar mills with Centroid systems and the users regularly 
>program at 100 ipm and observe that the mills average about 60 ipm (as low as 
>10 - 15 ipm in very curvy detail or tight corners and up to 95 ipm on almost 
>flat curves and wide open corners).  Does anyone have experience with EMC or 
>Mach3 achieving the same level of performance as the Centroid system?  If yes, 
>what configuration was used?
>  
>
It should be possible, depending on the acceleration of the motors.  If 
it's a block processing speed issue, then it may depend on the size of 
the individual moves - 10000 moves of 0.0001 inch each are a higher CPU 
load than one move of 1 inch.  EMC2 has a "Naive CAM detector" which 
will aggregate multiple short moves into a single longer move, keeping 
within a certain tolerance.  This is activated when you use G64Pxx, 
where xx is the tolerance you want.

You can load some example of the code in the EMC2 simulator (or using a 
sim config) and see what happens to effective feed rates.

>For emc, the PID loops are in the PC software, for Mach3, the PID loops are in 
>the motion control hardware.
>  
>
Yes.  You have to be careful here.  "Motion control hardware" could mean 
anything from a Galil DSP-based smart servo control card to a 
step-to-servo motor drive, such as a Gecko G320/G340.  With EMC2, the 
position control loop is in the PC, but the velocity and/or torque loops 
are usually in hardware, in the motor drive.  That's not strictly 
required, there has been some success directly driving H-bridges from 
EMC2, but it's not common to do this.

>EMC's PID loop has a cycle rate of 1000 times per second.  Is this a fact?  If 
>yes, are there any options to get the PID loop to run faster?  There is motion 
>control hardware available for Mach3 that is capable of a PID loop with a 
>cycle rate of 5000 times per second.
>  
>
The servo loop rate is set in the ini file.  The default is 1000 times 
per second, but depending on your hardware (both "motion control 
hardware" and the PC CPU), you should be able to go faster.  Some PCI 
controller cards, coupled with a fast-ish PC, should be able to get to 
the 10 kHz range.

>Although EMC receives feedback in realtime it does not adjust commands to the 
>axes if the axes are getting closer to exceeding the following error limits.  
>I do not know this to be true.  This is a statement from the supplier of 
>motion control hardware for EMC and Mach3.
>  
>
This is false.  PID by definition changes the command output as the 
error changes (unless you explicitly set all the coefficients to 0).  
The PID in EMC2 is actually PIDFF - there are "feedforward" terms, which 
can pass changes in control input directly through.  This improves 
response significantly, since no error is required to get an output.  
PID coefficients are applied to the position error, so normally there 
can be no output until some time after a command to change position has 
arrived.  FF coefficients are applied to the command input, so they 
generate some output immediately.

>Mach3 is an open loop system sending commands that are managed by the motion 
>control hardware which will shut down if the following error limits are 
>exceeded and then tell the Mach3 system that it has shut down.
>  
>
Yes.  If that's enough for you, then you can use EMC2 in the same way.  
There is nothing that Mach can do with hardware that EMC2 can't, except 
that EMC2 expects to use dumb hardware, and Mach must use smart 
hardware.  (note: step-to-servo drives are smart in this context, 
because they get position commands (in the form of up/down steps) from 
the controller, and they manage how to track those commands)

- Steve


------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to