Skip to main content
Submitted by paolo on Fri, 11/12/2004 - 03:48

My system consists of 3 Elmo Servo Amplifiers (Cello model) controlled by a Galil 2200.
All the Servo has the same problem:
the encoder counts I read from Galil are different from those read from the servos; the right value is that given by the servo thus, even if Galil shows that the final correct position has been reached the motor is in a wrong position. The beaviour is always the same: when the motor rotates in the positive direction the servo counts more steps than Galil, while when it rotates in the negative direction it counts less steps than Galil. If I move the motor many times between 2 positions (0 and 40000 steps for example) there is a continuous shift in the positive direction. I don't think it is a noise problem because the encoder count is very stable.
The problem could be:
1) the servo sends a wrong encoder signal to Galil
2) Galil reads the encoder signal coming from the servo in a wrong way

Paolo

Comments 10

EricK on 11/12/2004 - 11:11

What specific Elmo amplifier does the system use? Does the amplifier use interpolation to emulate incremental encoder data from a motor resolver feedback? If so what is the interpolation multiplier?

What speeds are you running?

Does the position drift seem random? Or is it systematic? What is the position discrepancy in counts that you observe?

Also have you verified the encoder feedback waveforms (Ch. A and B) using an O�scope?

-EricK

paolo on 11/15/2004 - 00:35

I'm using 3 Cello Amplifiers (2 15/200 and 1 2/200). The motors have incremental encoders. The connection between Galil and amplifier is made through port B1 of the amplifier (buffered main encoder signal); should I connect it to port B2 (emulated encoder signal)

The count difference between the servos and Galil has always the same sign (positive in the motor positive direction and negative in the other direction) but the value is not always the same even if it doesn't change very much. It seems to be dependant both on speed and rotation, but I have not still investigated their influence.

Regards
Paolo

EricK on 11/16/2004 - 08:37

I suggest that you consult the Elmo amplifier documentation for determining the correct setup and connections.

With the Galil controller I suggest that you configure the amplifier for analog torque mode with incremental encoder feedback to provide position control to the Galil.

I would also strongly suggest that you consider shielded, twisted pairs for the differential encoder signals.

I would also verify all signal levels and waveforms with an oscilloscope.

-EricK

paolo on 11/17/2004 - 00:30

I already contacted Elmo and checked that everything is OK. I already set the drive in current mode. The encoder cables I'm using have been given by the motor and drive supplier. However the encoder signal is OK from motor to drive because the motor position is exactly that I read from the drive encoder count. The problem is probably in the connection between drive and Galil. The connection between Galil and drive includes: CHA,CHA/,CHB,CHB/,CHIndex,CHIndex/, and ground. I have only one doubt about the ground: Galil ground is probably different from the drive ground supplied to the encoder. Another information: I'm using a IOG 4AX interface board between Galil and driver. LAst thing: have you ever tested your controller with Cello Elmo drives ?

EricK on 11/18/2004 - 10:03

We do not have documented experience using the ELMO Cello drives. However it should follow the same connections as most digital servo drives on the market. Check our web site application notes for similar drives.

One item to note is that our signal ground for the controller logic (which includes the encoder inputs) is isolated from chassis and/or earth GND. Hence you should have only one good connection from our GND to the drive logic GND. More than one GND connection or a path for our GND to earth could cause potential ground loops.

-EricK

paolo on 11/22/2004 - 00:42

We made some tests on the system. We had the following results: 1) when motor are disabled (MO) and I move the motor by hand the drive and Galil counts are the same. 2) with motor enabled (SH) some noise appears on the encoder signal. However I don't think it is a noise problem because: 1) when the motor don't rotate but are enabled, the count is stable; 2) the complementary signals show the same noise thus it is suppressed in differential mode; 3) we placed lowpass filters on the signals supplied to Galil, the noise was completely suppressed but the results are the same.
Galil ground is correctly connected to the encoder ground however we found that results are a little bit better if they are not connected together: can it be due to ground problems or loops?

paolo on 01/09/2006 - 05:31

We solved the problem simply substituting the controller revision 1.0m with a controller revision 1.0o. As I thought the 1.0m version was not fully compatible with ELMO drivers

japco43 on 10/08/2012 - 10:33

I have the same pulse issue, between Yaskawa SGDH-04AE amp, and Galil DMC-2152. I still have been trying to resolve the issue for about 4 years. Any help would be appreciated.

japco43 on 05/21/2014 - 08:45

I had 2 techs here at the same time. The yaskawa tech hooked up to the amp, and the local Galil tech hooked up to the motion card (dmc-2152) When moving the gantry on out cnc router, they both did not get the same pulse count. Is there a chance that there is a software issue with this unit as was in the case of the person using ELMO amps.

Galil_CoryB on 06/06/2014 - 12:03

The DMC-21x3 will output the correct pulses based on the command position. Some devices have a max speed they can read pulses which may be less then the max output from the Gali controller (3mhz on the DMC-21x3).

If you have having issues with the counts not being correct please feel free to send me an email at cory b at galilmc dot com and I'd be happy to help.