I am using 2000 pulse encoder but UHU seems to not handel these pulses so i used a divided by 4 counter to reduce the pulses to 500 using CD4520 but servo run away to one side using the counter. any sujestion.
Ahmed
I am using 2000 pulse encoder but UHU seems to not handel these pulses so i used a divided by 4 counter to reduce the pulses to 500 using CD4520 but servo run away to one side using the counter. any sujestion.
Ahmed
Hi,
It's not as easy as it first seems to divide the quadrature signal from an encoder like that. The number of pulses on the encoder isn't really the limit per se, it's the frequency at which the chip can count the pulses. So the faster you want to go the lower resolution you'll have to use. Are you saying that it doesn't work at all without the divider either or are you loosing position and getting O-counts as the speed increases.
Start slow and work your way upwards and see where the problem starts. I've found that 130kHz is about max what I can achive with my HP-UHU. So if your setup is about equal to mine you should be able to reach 975rpm with 2000 lines encoders (8000ppr in quadraure).
USDigital sells a quadrature divider called EDIVIDE and there's also some open source project available that uses a small Atmel uC to do the quadrature dividing. Even so I say it's better to either live with the reduced speed or buy new encoders.
Any link for microcontroller based divider.
Will check for the o count. which line driver you are using?
Ahmed
This is the site I was thinking about, there's a couple of different versions available there.
The RENCO encoders that I'm using has the AM26C31 line driver in them - so that's what I'm using.
i have checked o count it is giving some time 10 sometime 100 random could it be powersupply problem? also on forward movement it gives more travel and reverse it give less travel. any sujestion.
Regards
Ahmed
Do you see any relationship between the amount of O-counts and the speed at which you run the motor. IDo you get less O-count if you run the motor at 100rpm for a minute compared to if you run it at 1000rpm?
It could be a problem with PCB layout so switching noice from the powerstage upsets the controller. I've only used the HP-UHU so I have no experience with the other versions available but I've read numerous times that some are very sensitive to noice.
If you have a scope, look at the signals and verify the phase shift and signal levels etc. Try feeding the encoder with a separate +5V supply (common ground with the drive of course) and then run the motor very slow. Still getting O-counts?
/Henrik.
PS. I had HUGE problems with invalid counts and lost postion on my system and I worked on it for several weeks trying to figure out what was wrong. I had brand new USDigital E7P encoders with linedrivers and I tried just about every trick in the book (and some not in the book) regarding grounding, shielding, powersupply filtering, separate powersupply for the encoder, cable length, cable type, filtering - you name it. It simply refused to work. In the end I was convinced it was the encoders that was the cause. I threw the brand new USDigital encoder in the spare parts bin and got some RENCO encoders and the problem went away for good.
Can you run at any speed without getting O-counts?
I initally started with 3600lines (14400ppr) encoders and it worked fine up to ~130kHz (540rpm). Based on that number and my ballscrew pitch and gearing I ordered the USDigital encoders with 625 lines (2500ppr) which will give me a theoretical resoultion of 0.001mm. However, with the USDigital encoders it was impossible to get it to run reliably at ANY speed no matter what. I then got the Renco encoders, also 625 lines and it works perfectly. I got both the USDigital and the Renco encoder directly from the US. Renco had 6 weeks leadtime.... :-(
I'm sorry I can't be of any more help... I know my setup works up to 130kHz so the UHU chip is good for at least that. If your FANUC encoders are 2000lines (8000ppr) then you should be able to reach 975rpm if all else is equal.
Again, can you get it to run at any speed without getting O-counts? What version of the UHU hardware (PCB etc) are you using?
/Henrik.
1. attach please find the version of pcb but the important thing is i am using external mosfet module not the on board mosfet. may be they are picking up some noise.
2. Any check points
3. can you send me the screen shot of analyzer software how it looks when the servo is properly tuned.
Ahmed
Henrik,
Do you think i should put inductor in series with motor? also i have seen in other post about load dump should i use that?
Ahmed
Hi Ahmed,
The powerdump circuit is only needed if there's a risk that the voltage of the powersupply goes beyond the maximum voltage for the drive while deccelerating. It's not a part of this particular problem so leave it for now ;-)
It's really hard to guess what the problem is here.... You still haven't told me if it works at any speed or if you always get O-counts, no matter what the speed is. Try running at 100rpm or something for a minute, then check the O-count.
Also, you should be aware that the max frequency the chip can keep up with drops when you use the analyse function in the software so don't have that turned on while trying to figure out this problem.
Are you using shielded cable for the encoder? Shield grounded at one end only?
Don't worry about tuning just yet - you have to figure out this problem first.... I'll grab a screenshot next time I fire mine up.
/Henrik.
When run at very slow speed it dose not give o count at higher speed it gives more ocount and in one direction it give more ocout than in other direction with same setting.
what is the max value for o count for drive or it should always be zero?
the encoder is with original wiring for fanuc 6t control, encoder are fitted with line driver and i have used 74sn115 for line reciver.
Thanks for your help.
Regards
Ahmed
Hi,
I would not settle for anything but zero O-counts. As soon as the chip reports O-counts it means it is not sure where the motor is so you have basically lost postion. You must find the cause and make sure you have zero O-counts or your system will be unreliable.
Never heard of 74sn115, do you mean the SN75115 by any chance? If that's the case what value do you have on the filter capacitors connected to pins 4 and 12?
Even with 8000 pulses/rev (if that is what you have) you should be able to run a couple of hundred rpm without problem.
/Henrik.
Hi,
i am sorry it is SN75115. will check the capacitors and will put shield cable to mosfet module will let you know the result.
Regards
Ahmed
Today i checked with another motor fitted with 250 pulse encoder it works good upto 60ipm with analyzer function on Ocounts=0 in both directions so i think the problem is with 2000pulse encoder
I want to ask
how much micro Frad Capacitor you are using in your servo supply ? my transformer is 3phase fitted with 3 phase bridge.
Also which renco encoder you are using.
Thanks
Ahmed
Hi Ahmed,
Good to know that it is indeed working - to bad it won't work with the motor/encoder you prefer to use....
Regarding my powersupply, I'm using a 4kVA 3phase transformer with 90V secondary, three-phase bridge and two 15000uF capacitors in parallell (30000uF total). Using a three-phase supply drastically lowers the need of capacitance since the p-p voltage and frequency of the ripple is much lower than on a single phase supply. Pulling 40A from this supply during 0.5s acceleration only makes it drop a few volts.
I'm using the R35i encoder. I ordered them with 625 lines (2500 pulses/rev)becuase it matches my mechanics nicely, giving me 1000 counts/mm. The 625 line version isn't listed in there online shop but it is available. If you order, make sure you specify line-driver. My motors are rated to 2000rpm so with this encoder I'm staying well below the 130kHz I found was max for my setup.
/Henrik.
Hi Henrik,
Thanks for your quick reply . My transformer is also same as yours 90v 3phase about 4kva. I will put 30,000uf capacitors as i was not using them before and i found this jitter due to rippel also when i used 36volt battery supply motor run much smoother. again i want to ask.
1. my original encoder were 2000pulse/rev should i order 500pulse or 250pluse is ok?
2. My break out board has an optocoupler and UHU has one built in should i remove the optocoupler from breakout board it is 4N25.
3. If you can send me the screenshot for properly tuned servo.
Ahmed
Hi Ahmed,
Hard to answer really, usually encoders are specified to have a certain number of lines or quadrature cylces per revolution. These cycles are then decoded so the actual resolution becomes 4 times the amount of lines or cycles the encoder has.1. my original encoder were 2000pulse/rev should i order 500pulse or 250pluse is ok?
So, if you order an encoder with 500 lines you'll get 2000 counts per revoultion. Regarding your FANUC encoder it's still unclear to me if it is 2000 lines or 2000 pulses per rev. You can test that if you want by connecting it to the UHU and then set the Error parameter to 1000, turn the encoder and watch when the drive errors out. If you've turned the encoder 180 degrees then you HAVE a 500 line encoder, if you only need to turn in 45 degrees then it has 2000 lines. Same thing goes for the encoder that worked, you said it was 250 pulse but is really? If it really WAS 250 counts/rev then it would need to have 62.5 lines which is a bit of a problem. So, it is probably is 250 lines encoder which makes it have 1000 counts/rev.
If that gives you enough resolution then by all means order 250lines encoders since you know it works for you.
Depends.....try without removing the opto-coupler first. I have a C11 card from CNC4PC, it has optp-isolation and it works fine with the HP-UHU. But it depends a bit on the speed and desing of the break-out-board. Again, try with the opto there first - if it ain't broken don't try to fix it ;-)2. My break out board has an optocoupler and UHU has one built in should i remove the optocoupler from breakout board it is 4N25.
Will do, I'll fire up the system tonight and see what I can get. Mind you though that mine may not be perfectly tuned either.....3. If you can send me the screenshot for properly tuned servo.
/Henrik.
Hi Ahmed,
Here's a screenshot of the UHU terminal software. I added some text to it.... The motor is an Indramat PMDC servo rated at 19A continous, 150A peak. Drive is HP-UHU with current limit set to ~20A. Encoder is 625lines (2500 counts/rev). I wish there was some kind of scale in the software so you could see just how big the error actually is.....oh well....
The motor is still on the bench so it's not driving anything. I suspect that actually driving a load will dampen the small ringings a bit but will most certanly require retuning.
I had Mach3 loop thru a simple test like this:
G0 X25
G4 P1.5
G0 X0
And here's a screenshot of the motor tuning dialog in Mach3:
You can see that I have the steps/unit set to 2500 which is the number of steps in one revolution and the speed is set to 1800rpm. It accelerates to 1800 in roughly 0.25 seconds.
When running with the UHU-terminal active (ie the Analyzer is turned on) I get some O-counts at this speed but not if I turn off the analyzer.
Hope this helps.
/Henrik.
Hi Henrik,
Thanks for the screen shots. Today i was able to run the machine wih 2000pulse original encoder, ocounts were also zero. the problem i found was breakout board opto coupler 4n25 was driving the hcpl opto on uhu i removed the 4n25 from breakout board and problem was solved.
however these were the motor tuning which i used
Velocity 60inch/min
Acc 2inch/sec/sec
it dose not give ocount with analyzer function on upto 200% feed.
any sujestions.
Ahmed