By continuing to use this site, you agree to our use of cookies. Find out more
Forum sponsored by:
Forum sponsored by Forum House Ad Zone

Spindle Encoder / Leadscrew stepper threading leadscrew idea

All Topics | Latest Posts

Search for:  in Thread Title in  
Rainbows12/07/2016 01:35:25
658 forum posts
236 photos

So something like this has probably been done by the guys who convert lathes to CNC but in this scenario I am just considering a way to get rid of pesky gears without using MACH 3 or any CNC business.

So using timing pulleys geared down this incremental encoder would be set to pulse 1200 times per rotation of the lathe spindle (the encoder goes 600 pulses/rev but I'm thinking of a 1:2 belt ratio).

Meanwhile the lathe leadscrew (4mm pitch) is attached to a stepper motor with a 1.8 degree resolution (0.02mm per step).

E.g.: For a pitch of 2mm a computer of some sort counts 12 pulses from the encoder then tells the stepper motor to step once.

Just checking around to see if anyone had done something similar here.

JasonB12/07/2016 07:11:57
avatar
25215 forum posts
3105 photos
1 articles

There was a long thread a few months ago on just the subject.

 

Edit, this is the thread, should keep you quiet for a whilewink 2

Edited By JasonB on 12/07/2016 08:08:10

Marcus Bowman12/07/2016 07:43:34
196 forum posts
2 photos

Sounds like the well-established electtronic leadscrew project (ELS):

**LINK**

for which there is a large Yahoo group.

There is also a version based around an Arduino; and there are youTube videos of that.

Neil Wyatt12/07/2016 11:30:45
avatar
19226 forum posts
749 photos
86 articles

You need a subscription to Model Engineers' Workshop - a recent issue described one. There was also a dividing attachment using the rotary encoder which keeps appearing in the top banner ad that could probably be adapted to work as part of an ELS system.

Neil

Rainbows12/07/2016 14:05:44
658 forum posts
236 photos

Only update on my design would be that I found an inexpensive encoder that would allow 6000 pulses/revolution.

Of 23 standard metric pitches it would be theoretically perfect for 17.

0.45, 0.7, 1.75, 3.5,4.5,5.5 lead to a fractional number of pulses per step

Anyone know what an acceptable tolerance is to thread pitch? The closest I could get to a 0.7 pitch is 0.70175 pitch. As the thread gets coarser the innacuracy increases. 1.75 becomes 1.739, 5.5 becomes 5.454545.

 

 

I would say about 50% of that thread went over my head. If LinuxCNC gets that confusing when people are debating about how confusing it is then I hate to see how confusing it is to use it. That said there was a video of a guy using the same set up as I planned with a 1040 pulse encoder.

There was a link in a link about how to double or quadruple the pulses from a encoder but sadly it lead to a dead website. Anyone know what that might be referencing?

 

Side projects that would would come off the spindle encoder were going to be a speed control and maybe a dividing attachment though 6000 doesn't fit nicely into 360. Though I think the dividing head DRO systems is selling can't be used with a spindle thats being turned by a motor/ any high speed.

 

And now I have to make a yahoo account to check out that yahoo group. 

 

Edited By Rainbows on 12/07/2016 14:18:18

Another JohnS12/07/2016 14:22:51
842 forum posts
56 photos
Posted by Rainbows on 12/07/2016 14:05:44:

Only update on my design would be that I found an inexpensive encoder that would allow 6000 pulses/revolution.

I understand (no personal experience) that Mach 3 can ONLY use one pulse/rev for a lathe for threading. Which either works incredibly well or incredibly poorly, depending on who is writing the blog post.

LinuxCNC expects an index pulse, and then a series of other pulses to determine spindle angularity. I'm going to try an encoder on the gear that is on the spindle of my lathe, 40 teeth. My understanding is that, properly set up with quadrature encoding, I'll get 160 direct divisions and rotational direction of the spindle. LinuxCNC will interpret between direct divisions when threading.

I do have my CNC mills "dual" configured; one config as a mill, the other as a lathe. when running in lathe mode, I can either use CAM-generated lathe GCODE, or I also have conversational programming via code written by a Brit named Andy Pugh.

Brilliant stuff.

(One of these days I'll resume my stalled lathe conversion - stalled as I have decided to focus on one project at a time to get things finished in a timely manner. Shay locomotive almost done! Approach works!! (of course))

Martin Connelly12/07/2016 14:32:39
avatar
2549 forum posts
235 photos

Rainbows,

You need to mount the encoder off the spindle otherwise you loose the ability to pass material through it. Since you are mounting off the spindle it is an easy matter to use different size pulleys to change the counts per rev. If you have a pulley ratio of 4:1 then you increase the counts per rev by a factor of 4. When you do this it is usually necessary to add index detection to the spindle as the encoder index pulse will now happen a number of times per rev of the spindle. You can try to keep track of the spindle by counting the pulses in software but any loss of power or noise in the system messes that up.

Martin

Martin Connelly12/07/2016 14:49:46
avatar
2549 forum posts
235 photos

John, regarding Mach3 and the single index pulse. If you have a machine with backgear and a large motor that does not stall or slip when under thread cutting loads then Mach3 works fine. Try using it with a weak motor without backgear (I'm thinking DC motor with electronic speed control here) and you are asking for trouble. I have the former, large 3 phase motor with VFD and backgear. I can thread with Mach3 without issues as long as I don't want to work at high speeds on big threads. I think there is an issue, though I have not encountered it yet, with thread length over 40mm.

If I run the motor at 100Hz with backgear the spindle speed is 120rpm. This is not a problem for the motor as it is a 1000rpm at 50hz motor so it does not reach the heady heights of a 3000 rpm motor even at 100Hz. With a coarse thread 120rpm is plenty fast enough.

Martin

Rainbows12/07/2016 15:30:35
658 forum posts
236 photos

The current plan is a Omron E6B2 encoder which has 2000 pulses per revolution and a max machanical speed of 6000RPM. With a max lathe speed of 2000RPM I can use a 3:1 ratio to get the 6000 ppr but can't get it any higher mechanically.

It might be a chinese copy considering it costs £20 off ebay and £161 from RS components but oh well.

Has A and B phases and I think Z phase refers to a index pulse. So I got an index pulse if I need it (though at 3 times per revolution isntead of 1).

I think there was a picture on the other thread about what happens when your index pulse creates innacuracys. Wasn't a thread I would want.

Ajohnw12/07/2016 18:15:06
3631 forum posts
160 photos

The problem with the PC driven ones is servicing the pulse rate. Linux offers a special extension that helps a lot in that respect so can handle higher pulse counts. The bits needed to use it are pretty cheap and I have wondered how well it would work out on a Ras Pi or something similar.

I assume both are set up to handle more than one axis so high pulse counts on a single axis should be more feasible. There is a Russian that has come up with a working system using a micro and I think I linked to it in the other thread. I'm not sure that full details are given though.

The Linux CNC forum can be pretty helpful for people who have problems using it. There are also all sorts of bits and pieces about on the web. Some of the bleats I have read on here about it miss the point that it does what the people who use it want to do with it. There is always a tendency for this with OS - if some one wants something different well the code is available so change it. That's how OS evolves.

John

-

Neil Wyatt12/07/2016 18:42:53
avatar
19226 forum posts
749 photos
86 articles

The pulses don't need to go exactly into the screw pitch as the software should allow for that. a 1:12,000 maximum angular positional error is 0.0002 mm in a 2mm pitch thread and the error wouldn't be cumulative. Such errors would be swamped by other factors.

Neil

Ajohnw12/07/2016 23:24:16
3631 forum posts
160 photos

From posting and reading on the yahoo electronic leadscrew group some people were looking at going to closed loop motor speed control. That sort of put me off the kit that's available. There was mention of more pulses per rev but as far as I am aware it has never happened.

This set up stemmed from the original idea of using a phase locked loop and dividers replacing it with a PIC. Hope I remember that correctly. I lost interest years ago. One other aspect is that I just wanted to replace a gear box. I feel I can look after the other aspects myself and including bells an whistles is just more clutter.

I believe some inverters have a closed loop speed control capability now but I have no idea how good it is. I've seen no signs of it appearing where that sort of thing is used and the gear for that tends to be rather expensive.

John

-

Rainbows12/07/2016 23:35:55
658 forum posts
236 photos

Ok so a bit of extra maths worked out a way to use the pulses to find out how long it would take for the spindle to make one revolution then use that time to calculate how rapidly to fire the stepper. Actually get ~infinite pitches~ this way.

Is 3Nm enough force to turn a leadscrew? I can never conceptualize these things.

Ajohnw12/07/2016 23:49:36
3631 forum posts
160 photos

Wrap some thick string round a sizeable gear and measure the pull with a balance of some sort - fishing scales etc. Then work out ft lbs or what ever and use a web converter to get nm.

The problem with software for this sort of thing is that it finds out that it has happened after it has and not before. That's why higher end cnc machines use closed loop speed control. if you follow the earlier lead about having a back gear in that should help a lot. Making use of any speed feedback on an inverter may too.

crying I've written a lot of software that has to respond after it's happened.

John

-

Michael Gilligan13/07/2016 00:00:09
avatar
23121 forum posts
1360 photos
Posted by Ajohnw on 12/07/2016 23:49:36:

crying I've written a lot of software that has to respond after it's happened.

.

But have you written any that responds before it's happened question

devil

MichaelG.

Roger Head13/07/2016 01:55:13
209 forum posts
7 photos
Posted by Michael Gilligan on 13/07/2016 00:00:09:

But have you written any that responds before it's happened question

 

That's old-hat stuff Michael! Back in the '70s, in one of the IEEE journals (I think), there was a full article replete with oscilloscope photos, highly technical waffle that didn't really explain anything (because of the enormous commercial value etc) of a new solid-state negative time-constant device i.e. the output was generated before the input stimulus was applied. It was extremely well done, and drew comment in the following issue. Later it was announced as a joke - something written just as a bit of a laugh. It wasn't expected to draw 'learned discussion' blush .

I don't know how many times I've kicked myself for not keeping a copy.

Roger

Edited By Roger Head on 13/07/2016 01:55:59

Marcus Bowman13/07/2016 07:41:15
196 forum posts
2 photos

I assume the 'learned discussions' were printed in the journal the month before the article was published...

More seriously;

One difference between a one-pulse-per-rev system and a system which uses one index pulse plus a train of intermediate pulses is that while the 1ppr system calculates the stepper pulse rate needed for the next whole revolution, the multiple ppr system is capable of reducing ongoing and cumulative errors caused by variations between the theoretical pulse train and the actual motion of the work, in each revolution. So it produces a better match between prediction and actuality over the course of a single revolution, in an open loop system. Not quite responding before it happens, but certainly closer to continuous correction.

I agree with the earlier comment about power and electronic motor speed. As far as I can see, the typical variable speed control boards for low powered lathes and mills also use a single pulse per rev and have a visible variation in speed under varying load, especially at low rpm. That is bound to lead to variations in pitch and in cutting performance.

If there is a small range of optimum cutting speeds for a given material and diameter of work, why do we slow down for thread cutting? That seems illogical. I get better results when cutting at closer to theoretical optimum speeds. I suspect the low speed is to allow for operator thinking time, to allow for disengagement of the leadscrew half-nuts. I've had better results using higher speeds but arranging the direction of feed so that rapid disengagement is not required; or by using mechanical auto-disengagement or trip-switch electrical shut-off to cater for the fact that my own internal processing speed is very slow. An automated system, whether CNC or not, copes with this quite nicely. But I would not expect to have to make big compromises on the integrity of the pitch.

Marcus

Ajohnw13/07/2016 10:41:52
3631 forum posts
160 photos
Posted by Michael Gilligan on 13/07/2016 00:00:09:
Posted by Ajohnw on 12/07/2016 23:49:36:

crying I've written a lot of software that has to respond after it's happened.

.

But have you written any that responds before it's happened question

devil

MichaelG.

Roger summed up the problems with that rather well Michael. In many respects when software control is dealing with the outside world it's often fundamentally impossible to predict what is going to happen but fortunately there are usually limitations on what can happen. Then comes faults.

devilMaybe adding eyes and ears might help with some aspects but it all mostly comes down to sample rates in a digital world even when PID is used and even that needs certain response limitations on the thing it's controlling. It can only cope with things that change at certain rates and is designed for that - and the numbers are then in some cases played about with ad hoc to get it to work properly or it self tunes. There is a lot of hype about in other areas such as fuzzy logic aka previously ish logic and things like neural network.

John

-

Michael Gilligan13/07/2016 22:03:15
avatar
23121 forum posts
1360 photos

Posted by Ajohnw on 13/07/2016 10:41:52:

... Roger summed up the problems with that rather well Michael. < etc. >

.

I think the point was that Roger got the joke

MichaelG.

Ajohnw13/07/2016 23:31:37
3631 forum posts
160 photos
Posted by Michael Gilligan on 13/07/2016 22:03:15:

Posted by Ajohnw on 13/07/2016 10:41:52:

... Roger summed up the problems with that rather well Michael. < etc. >

.

I think the point was that Roger got the joke

MichaelG.

I don't think you got mine in reply Michael. devil you might need to think about that.

John

-

All Topics | Latest Posts

Please login to post a reply.

Magazine Locator

Want the latest issue of Model Engineer or Model Engineers' Workshop? Use our magazine locator links to find your nearest stockist!

Find Model Engineer & Model Engineers' Workshop

Sign up to our Newsletter

Sign up to our newsletter and get a free digital issue.

You can unsubscribe at anytime. View our privacy policy at www.mortons.co.uk/privacy

Latest Forum Posts
Support Our Partners
cowells
Sarik
MERIDIENNE EXHIBITIONS LTD
Subscription Offer

Latest "For Sale" Ads
Latest "Wanted" Ads
Get In Touch!

Do you want to contact the Model Engineer and Model Engineers' Workshop team?

You can contact us by phone, mail or email about the magazines including becoming a contributor, submitting reader's letters or making queries about articles. You can also get in touch about this website, advertising or other general issues.

Click THIS LINK for full contact details.

For subscription issues please see THIS LINK.

Digital Back Issues

Social Media online

'Like' us on Facebook
Follow us on Facebook

Follow us on Twitter
 Twitter Logo

Pin us on Pinterest

 

Donate

donate