Machsupport Forum

Third party software and hardware support forums. => Galil => Topic started by: mjanne65 on August 16, 2010, 09:41:47 AM

Title: Galil 2280 issue
Post by: mjanne65 on August 16, 2010, 09:41:47 AM
I am in the middle of converting an old Dynapath System 10 control to Mach 3 with a Galil 2280.  The machine is an early 80's vintage 3-axis machining center with Servo Dynamics 1525 analog servo drives and SEM DC brush servo motors. 

I started with the Z-axis.  It works fine through Mach and Galil interfaces, runs G-code, no issues.  The Y-axis encoder went bad, so I am waiting on a new one.  On to the X-axis and I have a drift that I can't figure out.  The motor always wants to run about 30 rpm in one direction.  It will respond to jog commands in either direction, but will resume the drift after the jog.  It does not increment the DRO or change the Galil position when it is 'drifting'.  If you look at the TP and TE data on SmartTerm, it has a position error that bounces around from maybe 10-50 counts.  The 'actual' position is always less than the commanded postion. 

It acts like it loses encoder feedback as it nears the commanded position.  I can command a 100000 count move and it will end up bouncing between 99950 and 99990, with the servo running about 30 rpm and no more encoder counts being recorded.  If I kill the servo power and turn the screw manually, the encoder appears to be working perfectly.   According to SmartTerm, all axes are are set up at KP=6, KD=64, KI=0.  I did try increasing KD and adding in some KI, but neither has an effect on the drift.  The servo drive itself is balanced.  If I remove the Galil signal the motor is stable.

Any thoughts?

Thanks,
Mike

Title: Re: Galil 2280 issue
Post by: smurph on August 16, 2010, 12:52:23 PM
I can't explain why the encoders are not reporting during the drift.  Maybe there is some noise on your encoder signals. 

You can get rid of the drift with the OF command for that axis.  Set OF to a value that cancels the drift and then BN (burn) the settings.  It sounds like there is maybe a resistance problem with your command signals from the Galil to the Amp.  Maybe re-wiring that portion would clean things up a bit.  Also, there may be a pot or something on those amps to correct it as well.

Steve
Title: Re: Galil 2280 issue
Post by: HillBilly on August 16, 2010, 03:13:48 PM
"It does not increment the DRO or change the Galil position when it is 'drifting'."

That being the case, mechanically the encoder coupling could be slipping or the disk is slipping on the encoder shaft. Usually when an encoder goes bad electrically it will lose pulses at fast speed, yours is doing the opposite.

Darek  
Title: Re: Galil 2280 issue
Post by: mjanne65 on August 16, 2010, 03:58:41 PM
Thanks for the replies. 

I'll put the scope on it tonight and see what the encoder pulses look like.  I did check the OF settings, thinking it might have had on offset on X, but they were all 0. I will try adding one in to stabilize it. Electrical noise is a possibility, but I am using the same cables and routing that seemed to work fine with the Dynapath.  Also, the problem seems way to consistent and repeatable to just be noise.

I should also be able to switch to the other connector and map to E-H instead of A-D to see if I just have a bad channel on the Galil.  It will be easier than switching the wiring from one channel to another.     

Title: Re: Galil 2280 issue
Post by: mjanne65 on August 17, 2010, 10:13:32 AM
I did some more troubleshooting last night, but I think I am even more confused now than before.

Tried the OF command.  It did not seem to have any effect.  I moved the cable to the E-H connector, so the X axis is wired to E and Z is wired to G.  Same results as before.  

If I disable the servo drives and turn the motor by hand, I get +2000 counts/rev in the CCW direction and -2000 in the CW direction, which is exactly what it should be.  I jumpered the encoder to channel H to see what it would read.  It is exactly the same when turning by hand, but is running about -250 counts/rev when the motor is drifting.  This is odd, since the motor is drifting CCW, the + direction.  

If I disable the servos and turn the motor several turns by hand, the Galil position error will accumulate as it should.  When I reenable the servos, the motor will turn the proper direction to return to position and will then resume the drift.

The encoder shaft is not slipping on the motor shaft, but I didn't check the encoder disk yet.  The encoder pulses are a square wave on the scope.  The pulse length does vary, but the drift is jerky so this is the way it should look.  It is difficult to see the A/B phasing with the uneven pulses, but it looks to be correct.

When the motor is drifting, if I remove one of the encoder leads it has no effect on the drift. The counting on channel H will stop, but the motor continues in the same speed and direction.  If I reverse the encoder leads (A&B) the motor runs away in the same direction as the drift.
 
Title: Re: Galil 2280 issue
Post by: kcrouch on August 17, 2010, 02:22:39 PM
Your damaged encoder is something of a giveaway. You probably have both encoders failing due to either mis-wiring or voltage surge. It is likely that you have A,invert A, B and invertB lines used. You my try and disconnect both of the invert lines and run single ended to troubleshoot. If the trouble continues, swap the std and invert encoder connections and see if that helps. You do not want Mach or the plugin running at this ime, only Smartterm. You should ensure that motor noise is not reaching the encoder leads and use shielded canble for the encoders grounded at the Galil end only.
Cheers,
Kenny
Title: Re: Galil 2280 issue
Post by: HillBilly on August 17, 2010, 03:11:11 PM
Its does sound like a bad encoder.

Darek
Title: Re: Galil 2280 issue
Post by: smurph on August 17, 2010, 08:02:28 PM
It smells like a bad encoder too.  :)
Title: Re: Galil 2280 issue
Post by: mjanne65 on August 17, 2010, 10:34:45 PM
Well, I finally got it figured out.  I locked down the motor so it couldn't drift and found I was still getting 'encoder' counts.  I decided the problem had to be noise on the encoder wiring, so I ran another wire for the encoder A/B signals and that solved the problem.  I'm not sure why the wiring wasn't an issue with the old Dynapath, but in any case the problem is solved.

Thanks for everyone's help.

Mike
Title: Re: Galil 2280 issue
Post by: HillBilly on August 18, 2010, 06:34:01 AM
Good deal!

I would still keep a eye on that axis for trouble, seeing how the noise had to be quadrature in nature to be counted (and in one direction.). I would recommend scoping the A and B signals, they should be perfect quadrature at a steady speed, no jitter, no uneven pulses.

Who knows though? That was definitely a strange symptom!

Darek

Title: Re: Galil 2280 issue
Post by: battwell on August 27, 2010, 05:03:14 PM
interesting fault!
Title: Re: Galil 2280 issue
Post by: mjanne65 on August 28, 2010, 09:40:02 AM
Just a follow-up on this in case someone else runs into the same problem.

1) The encoder pulses look very good on the scope, but if you go up to higher frequencies, there is some noise overlay.  The noise is from the servo drives and is a sine wave that dies and then repeats.  It looks like it might get one cycle that would be of sufficient amplitude to be read as a pulse.  I'm still not sure how this is seen as quadrature, but it is. This was not an issue on the Dynapath for some reason, perhaps the frequency is too high for it to read or the threshold voltage is higher.

2) I had the same error on the X & Y axes and with two different make/model encoders on the Y.  The cable on both is three twisted pairs with shield and drain wire on each pair. There is no outer shield.  Both originally had the shields tied to case ground on the encoder and floating at the control.  The A & B channels are on different pairs.  The cable was run in the same conduit as the tach and power cables, but removing it did not solve the problem.

3) To completely solve the problem, I had to tie the shield wires to case ground on the encoder AND ground them on the Galil. Grounding on one side or the other would not eliminate the noise.

Mike
Title: Re: Galil 2280 issue
Post by: HillBilly on August 29, 2010, 12:15:00 PM
There should be a ground wire ran with the armature wires. Check its integrity or install one, then disconnect the shield at the encoder because it is doing what the ground wire should. This could also be an indication of insulation breakdown in the motor.

Darek