Hi Andrew, great to see the progress you're making with this! There are lots of interesting suggestions below as to the synchronisation problem, but I don't see any problems with your setup and I think the real cause is taking multiple passes to cut the gear. It's always best to cut to full depth in one pass with a hob. If you take a shallow cut then you are increasing the radius of the teeth being cut on the gear. The hob wants to naturally turn the gear blank like a worm and worm wheel, so if you cut at a larger diameter it wants to cut a greater number of teeth around the circumference of the blank and the hob will try and drive the blank at a different speed to that that the stepper motor is trying to turn it, the force generated can overcome the motor and cause it to gain (or loose) steps, even when it is being correctly driven at the right speed. This can also happen if you don't have the hob tilted to the correct angle, but you look to have this spot on! On your microscope picture at 26:20 you can clearly see each pass has tried to push the gear at a different speed resulting in the sheared over tooth profile. Your hobbing attachment looks easily rigid enough to be able to handle cutting 48DP and bigger teeth in a single pass, you just have to remember to feed very slowly, it's not like normal milling, as you feed you are also cutting all the way around the gear blank so you need to take it slow and steady otherwise you can easily get too far ahead and perhaps get the impression you are taking too heavy a cut, when in fact you are just feeding too fast. The aluminium gear you cut in a single pass looks much better, but as somebody else pointed out the teeth do look a little narrow, this might be due to resonance, so increasing the speed of the mill might help tune it out. With this size hob (~ 1 inch dia.) I would cut that gear at around 600-800rpm and for steel 300-350rpm. Narrow teeth can also be caused by an undersized gear blank, perhaps the small runout could have contributed to this? Another good suggestion somebody made is to make your chuck a loose fit on the face plate so you can tap it in and lock it down to dial out any runout in the part, that's exactly how I do it with a 3-jaw chuck on my machine.
Hi Andy - many thanks for the advice. I will make a list of all suggestions, by you and others, and try to work through them methodically. Hopefully I will get to the root cause. Thanks again for your help. Cheers Andrew
The issue is with lost steps. You want the lowest microstepping you can get away with, this brings better torque. In the 3d printing wold this type of issue is very common and is associated with higher stepper speeds and heavy weights. Also see if you can increase the amperage of the stepper, keep an eye on it as long as it's under 65ish centigrade it should be fine.
Hi Randall - yeah that is a good approach. What started me on the journey of gear hobbing was the inability to get hold of some of the 48DP cutters. I've now got all the cutters I need, but gear hobbing is still an interesting challenge. All the best. Andrew
with the encoder connected with loose unshield wires and no filtering on the board it is very likely that any electrical noise from the spindle/stepper etc. can make it count false pulses now and then
There appears to be an incremental error which manifest more with an increase in the number of passes. Not noticeable with one pass but with say seven passes very noticeable from the cumulative effects.
Hello Andrew, Great to see the first cuts with the hobber... I hope you find the solution to your problem soon. The microscope looks really interesting... Cheers Paul,,
Hi Andrew, the problem with the method you are using is that if the sychronization is just a tiny bit out or a step is missed then the two spindles will get out of step and you will get exactly the result you are recording. The worrying thing that I saw in one of your tests was the variability of the spindle speed of he mill. One thing I could suggest is that you try with a lower spindle speed as you may be losing sync due to either missing pulses or even the encoder not producing clean pulses. Also you are using a belt from the stepper motor which may be stretching under load. Finally, check you current settings of the stepper motor, the hob will put a lot of load on the stepper and may be forcing it to either over or understep. I had a similar problem with a cnc mill where the the load on the moter would cause so much resistance to the stepper moving that occasionally a step would be not happen. To overcome this I turned up the current on the stepper and all was fine. Sorry if you have already checked this. It would be interesting to know whiich side of the teeth were malformed as this will give you an indication as to if it is overstepping or understepping. Hope this helps.
Looks like you put that microscope to work immediately! You will also find it handy for keeping track of insert wear and other general shop inspection. As far as the run-out on your ER chuck, you could relieve the chuck mounting boss a few thousands, bump it true referencing a quality round held in the collet and rely on the mounting screws to hold the chuck in place. I did that for the ER32 chuck on my lathe and it's been running true for several years now. The good news is you got one good gear out of you hobber, so you know your setup can work. It just needs some debugging.
Hi Douglas - I would have really struggled without that microscope. It's amazing VFM. Thanks for suggesting it in the first place. I will see if I can address the runout as you suggest. All the best. Andrew
Also a (south) Yorkshireman, have i got this right.. you're basically running Andy's setup but with 2 17bit rotary encoders and the numbers updated for the extra encoder positions?
Hi The setup is very similar to Andy's with just one rotary encoder. I did write my own Arduino script. The download link is in Part 7 video description. It was an interesting project but, in reality, you need an extremely rigid setup to hog gears - just look at the size of some commercial machines. The other issue is that hobs are extremely expensive and secondhand ones are a big gamble. For home workshops I think individual gear cutters are the best option. Cheers Andrew
@@learningturningmetal thank you, I've found your link, will re-watch 6 and 7 a few times to figure out what I'll need to do with a closed feedback stepper vs a servo motor. I'm not too worried about rigidity here but would like to able to job really small stuff without gears.
This is a great video series. Re your problem, it certainly looks like drift, and it also looks like a predictable amount of drift over time. You could test that by cutting a gear with 2 passes, immediately. Then try a second test, where you cut the first pass, wait a predetermined time like 5 minutes etc (you should know by now roughly how much it drifts over time) then cut the second pass. If both gears have the same error it is not time dependent and might be some mechanical issue. If the first gear is pretty good but the second gear is bad, you know you have drift over time, which is probably the most likely thing anyway. Based on what you showed in this vid I would bet it is drift over time, possibly caused by software rounding in Andy's ratio conversion software. Another possibility is lost/gained encoder pulses over time. I noticed your scope shows a lot of noise on the encoder signal. Try adding two 330 pF caps at the arduino, from each encoder pulse pin to ground. The difference between a software or noise fault could be tested as the software fault would likely cause a predictable drift over time, where the pulse noise fault might cause weird drifts that dont seem directly related to time.
When I cut threads on my lathe, I engage the drive on the same number on the counter with each pass. Is there a reference signal to sync with the movement of the cutter into the workpiece similar to thread cutting? With no reference, any backlash in drive system is carried forward, inducing a cut more and more away from being in sync.
Good idea, this is the way some petrol engines work. The ecu looks for a missing tooth to sync. With gear hobbing you probably won't need absolute measuring so could reset every revolution. Or if absolute is required add each count to the last.
Hi William - Thanks for your thoughts on this but I don't think there is a reference signal as such. More tests needed to try to works out what is going on. Cheers Andrew
Very interesting and honest as ever Andrew. The setup is fascinating and I am sure the timing issue is resolvable with a bit of expert advice...which won't be coming from me because I have no clue at all about these black arts. It is clearly a mismatch between the speed of the spindle and the speed of the mill, but how you synchronize the two??🤔🧐 No doubt the answer lies that little black box somewhere. I hope you can find it.
I'm pretty sure you have some form of drift in the work and cutting spindle sync. you can hear it doesn't stop cutting even when you've completed a cut as it sounds like the indexer is either gaining or lagging behind the pitch of the hob. That small radial runout error could easily be compensated for if you allow a bit of clearance on your backplate register and just lightly tap the collet chuck periphery until the gear blank runs dead true and then nip the chuck screws up tight . Unless those ER collets are the ultra precision versions then a little runout is often seen. Just make the collet chuck adjustable to compensate. Edit to add: I am highly impressed by your progress with this project so far 👍
Hi Howard - many thanks for the advice. Fingers crossed I will be able to work out what is causing the drift. My list of things to check out is steadily increasing! All the best. Andrew
Hi Steve - an interesting observation. I will re-examine that gear, by placing the good gear underneath it. My guess is that you are correct and that the sync issue is present on a single pass too. Cheers Andrew
Hi Mark. Thanks for the suggestion. I don't know much about belt driven systems, but the belt and pulleys I used have teeth. I think 12 on one pulley and 36 on the other. So I'm not sure if they could gradually run out of sync over time. I guess any slop would be taken up once the hob engages with the blank. Interesting thought though. Cheers Andrew
Probably not a glaring issue Andrew, but the soldering on pins 2,3 need to be given a once over. Pin 3 for sure is looking a little dodgy. Have a good look at all of the soldering connections to your shield with the new digital microscope :) Cheers. EDIT: upon review, go over all the soldering just for good measure. Maybe a little more flux, or higher temp. Hope you have discovered that lead free solder is crap. I hate to make these critiques, but somebody has to do the deed.
Because of the change in angle of the head, wouldn’t you need to compensate for that in the x travel? Or the backlash in the mill would show itself because of angle of the cutter?
Hi Andrew, btw.... I love your channel, and before I make this comment I've not expert and am definately a learner but.... I noticed in the single pass gear the bottom of the teeth seemed quite wide, and the teeth themselves slightly narrower. It got me thinking as the table moves back and forth the part of the hob that engages with the work will move you and down. Does a tool the runs a hob cutter somehow compensate for this?
Hi, yeah I think you are correct about the profile of the teeth not being quite correct - even on a single pass. I don't understand the math behind it but moving the table back and forth shouldn't be an issue as long as the mill isn't stopped between passes. More investigation needed! Cheers Andrew
Andrew this series is proving very interesting not just for metal machining but Ornamental Turning. Sadly the echo of the room at distance of the mic from yourself made hearing what you wee saying very difficult.
Possible issues could be pulse skipping, where the stepper motor doesn't actually move to all the steps sent out by the driver? This can happen if the pulses are sent too fast for it to respond, and that can be due to insufficient current to drive the motor fast enough for each step due to the balance between the inductance of the winding and the current limit of the driver not being in tune with each other - a motor with high inductance windings will require a larger peak current to sharply move from one position to the next than a motor with lower inductance windings. If the current limit on the driver is too low then the motor may not move the exact number of steps the driver is outputting, the end result will appear to be skewing of sync which will get larger over time. The other related possibility is the stepper driver has a high enough current limit, but the power supply sourcing the driver is incapable of supplying those peaks so will be limiting instead. A possible way to try and work out might be looking with a 'scope at the voltage to the input of the driver - if you can see narrow spikes of the voltage rail dropping in sync with the pulse telling the motor to step forward, then it suggests the rail is transiently collapsing because it can't supply the current. A rough way to try and address that would a large value of capacitance at the input to the driver to act as a low impedance source to help ride out those current spikes. The other possibility would be to just slow all the rpm speeds down, thus giving time for the motor to respond to the slower pulse train. If you have a couple of other ABZ encoders then fastening one to the milling machine spindle and one to the stepper motor spindle and connect a counter to each so you can count the number of *actual* steps you get from the motor relative to the number of steps from the milling machine spindle. It shouldn't matter how long you leave it running, the ratio of steps between both should be the same, but if the motor is skipping pulses then you'll see the ratio change over time.
sorry - only gave half an explanation last night... Besides having current limit of the driver set to match maximum of the motor, you could also do with running the driver from the maximum input voltage possible. This means in steady-state the driver output will be in current limit meaning the motor holds with maximum torque. When you apply a pulse there is plenty of headroom for the driver to spike the voltage high to get the current in the motor coil to change fast, and thus respond to the step quickly. This is the same principle as why when you turn the voltage off to a relay (ie. change the coil current from what it was at, to a new value of zero very fast), the inductance of the relay coil will result in a large voltage spike across it to try and keep the current the same - that can't go on indefinitely so it then collapses again. The rate of change of current in the motor coil is a function of its inductance and the voltage applied across it. You can't control the inductance, so if you want the current to change fast (and thus the motor shaft to respond quickly) then you need to apply as high a voltage as possible. If you're sending a fast pulse train to the motor and the voltage headroom isn't high enough, then the pulse will arrive and the current in the motor coil will start to rise at a slow rate. However the next pulse may arrive turning that coil off again before the current has risen high enough to actually cause the shaft to turn in response to the first pulse. Now it's off the current will start to slowly fall again.... ....when the third pulse arrives and the coil turns on again, now it starts to rise again, but from a higher level that it started from last time because it hadn't fully collapsed to zero. Hopefully this time it does reach the level where the shaft moves a step forwards, before the next pulse arrives and the coil gets turned off again..... etc. etc. Viewed in this way you can see why it will respond to a single pulse - because it has infinite time for the current to build up and the move to occur, but send a fast train of pulses and some might get skipped. Run from a higher voltage and the current will rise faster and thus the motor will respond and move quicker. ....or slow the rotation speed of everything down so the pulse train to the motor is slower and thus you once again give the motor coil inductance more time to respond to each pulse as it arrives.
@@IACooper wow many thanks for such a detailed explanation. I will need to work through this in detail and undertake some more tests. Thanks mate!👍 Andrew
@@learningturningmetal I think the brief summary without the waffle trying to explain way, is: a) ensure stepper driver output current is the maximum the motor spec can handle. b) ensure the input voltage to the stepper driver is the maximum it can handle (and obviously the power supply can deliver the current as well!) Those two things should hopefully mean the motor can be driven from one step to another as quickly as possible, so it won't skip any. If that still doesn't work, then try c) slow down the milling machine spindle speed, which will slow the stepper speed and thus give the motor more time to respond to each individual step. Obviously the down side to reducing spindle speed is also reducing the X-axis feed rate, but if you've got a motor feed on that(?) then it makes it a bit easier even if it does take longer. If you're having to hand feed then it becomes more difficult. Best of luck sorting it all out 🙂
Gday Andrew, certainly a brain teaser but I’m sure you’ll work it out, I brought a digital microscope a couple of years ago, it’s bloody brilliant for checking inserts and checking fines threads, im looking forward to seeing the next instalment, cheers
Hi Matty - yeah the microscope is absolutely amazing. I don't know how I've managed without it. Fingers crossed I'll be able to get to the bottom of the drift issue. Cheers Andrew
Hi Jeffery - good question. The code is written in assembly language and the source is not available. I will write my own test script to see if the problem is still present. Cheers Andrew
@@learningturningmetal My concern is also those constant updates to the RPM display. The fact that the rpm display would require a periodic timer event suggests that interrupts are probably enabled. Could easily skip a pulse while doing that. It would be very hard to spot using the scope though.
@@jefferybond5701 yeah. Andy aka AndysMachines recons the Arduino is capable of handling the throughput. My simple script might help identify the root cause. Watch this space!
Hi Rich - I don't thinks so. I did look into that and it appears rock solid. The error seems to be gradual throughout the cut, rather than random. As a double-check I will mark positions with a marker pen and see it there is any movement. Cheers Andrew
Doesn't the electrical design of the stepper motor determine the number of full steps per rev? So setting the controller to the wrong number of steps (i.e. 800 instead of 200) will make the stepper motor rotate 4 times as fast (rather than micro-stepping), won't it? The aluminium gear at 25:15 is still not quite right - the teeth are too narrow and one side of the root is sharp while the other is rounded - both features indicate a loss of synchronism. To determine if the problem is software (rounding error accumulation?) or hardware, you could try writing a very simple counting program in the Arduino instead of using Andy's version - count 20 input pulses, output one pulse, repeat. If this produces a good gear then there's a software problem.
Hi Chris - I think I've got my steps calculated correctly. If I set the stepper driver to 200, 200 pulses will only turn the gear blank 1/3 of a turn (3:1 tooth belt ratio on hobbing accessory). So in that case 600 pulses are needed to turn the blank one revolution. Good observation at 25:15. I previously wrote a simple script as you describe. I will mod it to output one pulse per 21 input pulses and run that. As you say, this would highlight a software problem. Great idea! Cheers Andrew
@@learningturningmetal Hi Andrew. Please don't keep me in suspense ! When you ran the simple code (1 output pulse per 20 input pulses), did it produce a good gear?
@@chrisarmstrong8198 I used it in a previous video to check output using a scope. All looked good but it wouldn't highlight any gradual out of sync problems. This time I'll try to cut a gear with it.
Great looking project and thanks for showing warts and all. I'm not normally moved to comment but this intrigues me :) My feeling is the mill motor is essentially freewheeling dc motor and when load is put on the mill it slows a bit and the stepper pulses lag the sync pulse from the spindle which induces and error. This is not too bad over a short period but if there are multiple passes this error compounds and you end up with a bicycle sprocket.. If it were just lost pulses the teeth would be tilted over as in on example but you had some examples where it looks like the error seemed to have wandered about and just opened the tooth gap. Possibly you could try and just cut from one side instead of back and forth. Which may help in identifying the issue. Fraser
Hi Fraser - many thanks for your thought on this. More tests needed. Yeah - showing problem I come across has two major benefits: I get some great advice from others and it might help others who experience similar issues. Cheers Andrew
I have a question, doesn't the hobbing attachment need to be tilted at the helix angle of the lead? Lead=(PI x Diameter) / tan[helix angle). So you would have to rearrange the formula to figure out the [helix angle] ((hobbing attachment angle) Again more of a question than a suggestion.....unless it helps.....😆 Love your videos btw!!!!!!
Thanks mate! From watching AndysMachines channel I don't think the hobbing attachment needs to be tilited. I think you could tilt it to create a helical gear. Thanks for the suggestion though. All the best. Andrew
Hi Robert, I don't think so. Backlash would be picked up prior to any cutting. The mild steel gear cut in one pass was also malformed. Thanks for the suggestion though. Cheers Andrew
Hi Jeremy - I think the problem is also present in a single pass, but it's not as obvious. I need to do more tests and investigate further. Thanks for your suggestion. Cheers Andrew
Watching Andies video, the led on the arduino lights up when the hob and the workpiece are out of sync Stopping after a cut will put it out of sync, as Andie say cut the gear in one pass at full depth
Hi thanks for commenting. The sync problem is still apparent when making a single cut. Not openly obvious on the aluminium gear, but really bad on the mild steel gear. I never stopped the mill during cutting and the led never lights up. A bit of a brain teaser, but lots of suggestions for me to try. Cheers Andrew
Wow Andrew, I would love to say you lost me when you got the oscilloscope out......... unfortunately, you lost me way before that lol. I am sure you will get to the bottom of it, great video. Cheers, Jon
Hi Andrew, I’m certainly no expert but wonder if you could be seeing the cumulative effect of rounding errors in the Arduino code over time. I have made a stepper motor driven head for cutting gear teeth and in the forum on the build I followed this was an issue raised (and you may only need one or two passes to cut a gear with a gear cutter - you’re rotating the mandrel many many times so the hob can cut yours. Even tiny errors in rounding will aggregate over enough rotations to show as a loss of sync. The other comments over electrical noise are also potentially very valid. I noticed your oscilloscope seemed to fluctuate at times by at least one step (but that could also have been an effect of a rolling shutter in the camera). Any lag between the spindle speed changing and the gear on the mandrel matching rotational speed would also look like lost steps or sync issues - eg when the cutter is loaded or unloaded, if the cutter is not progressed through the work uniformly (and even then it has to start and stop the cut unless you have sacrificial blanks either side and cut in one pass). Like I said, I’m certainly no expert, just my thoughts and observations. Love your approach and your content. Please keep it all up. I know you’ll get to the bottom of it and find the issues and solve them. Cheers, Nick
Hi Nick - many thanks for your thoughts on this. From comments made I've made a list of things to check out and try out. Hopefully I will be able to sort it. I don't like failure! Cheers Andrew
Hear Hibbing is position based following, not velocity (RPM). Velocity based following does not make up for any velocity errors between the master and follower. Position base does.
hi Andrew, I'm not seeing why you are spinning the gear blank while cutting unless you are making helical gears. if you are making straight ones usually the gear is positioned before each cut. Rich
Hi Rich, for hobbing you need to turn the gear blank in sync with the mill spindle. Strange though it may seem, and I still struggle to get my head around it. All the best. Andrew
@@learningturningmetal hi Andrew, thank you my friend for getting back to me. obviously I don't know how to make gears. I thought you could make one with an Indexer. what type of gear are you making? it appears to be a spur gear.
Hi Rich. Yes it's spur gears I'm making. The easy way is to use an indexer and make the gear with a gear cutter. Problem is you need up to 8 different cutters for a particular profile of teeth. Cheep cutters are around £30, so a full set is well beyond £200. You can pay £100 for just one cutter! Another way is to use a gear hob. Only one hob needed to cover cutting the full range of teeth. I struggled getting 4 different 48DP cutters for the Jerry Howell v-twin, so I decided to explore gear hobbing (plan B). It's a very interesting subject and I still can't get my head around it fully. I've now got the four gear cutters I need (plan A), but hobbing might be the future! Cutting a good gear is very satisfying! Cheers Andrew
There seems to be a few issues with this set up. The cutter is analogue, in effect, and the gear rotation stepped, albeit small. Perhaps not an issue with the small gears here. The synchronisation between cutter and hob is utterly dependent on a perfect pulse train throughout the entire process. Although, Andrew, you call the sensing device on the mill spindle a rotary encoder is it just a speed sensor? If so, it is prone to errors if the spindle is stopped part way through the cutting process. Twisting the spindle back and forth probably advances the gear position I would guess. Still, you managed to produce a good gear out of a few failures which is quite an achievement. You are on a steep learning curve at the moment. Well done.
Thanks Martin. I do actually have a rotary encoder installed on the mill. It generates 600 pulses per revolution. From some of the comments made, I suspect that the signal might not be clean enough. Lots of other suggestion made by others too. So, more experimentation needed to try to resolve the problem. Fingers crossed I will be able to sort it. Cheers Andrew
Andrew. A rotary encoder is more than a giver-outer-of-pulses. For every increment it gives a unique value so it is possible to identify every angular position it is designed to resolve. With hobbing you need to know where the mill spindle and the gear rotation are in relation to each other. Gear driven hobs are inaitly synchronised and locked. Digital systems need accurate monitoring and feedback corrections.
Hi Martin I don't think rotary encoders produce a unique value. There are two outputs that produce either low or high signals. Each pulse produces a high signal and it's possible to calculate rotation direction by examining both signals. If you have come across any code that sees these signals as numerical values I would be interested. Cheers Andrew
I think what you have is an incremental encoder. It can detect rate and direction with the two-wire lead/lag square wave output but can't differentiate between one position and the next. There are absolute encoders which really do encode the angular position and give out a unique number for each one. On such devices you would expect more output connections. For example, for 360 degrees you need at least 9 signal connections to relay the information to the processing unit. Type into TH-cam "absolute rotary encoders" as a starting point. Gear hobbing digitally requires more expensive measuring devices and fast and complex computing between the cutter and the work piece. With the equipment you already have I would be inclined to abandon the hobbing bit, use a standard set of gear cutters in the mill as normal and synchronise your indexing head with the mill's table feeds. That way you could set it on its way and get on with something else.
Hi Martin - thanks for the info. Andy (aka AndysMachines) makes gears successfully using this method, so I won't throw the towel in just yet. I'll try out various suggestions and see if that resolves the problem. Cheers Andrew
You've probably had lots of advice about the problems you were having and so my advice may not be relevant. One of the issues with projects based on the Arduino is that the boards are meant for experimentation and learning and they are not industrially hardened. So stray signals can get picked up that then create problems when the application is run in a noisy (ie RF noise) environment. Shielded leads and a steel box (a Faraday shield) can help alongside good lead placement away from noise producers like motors and motor drivers.
Hi Neil - many thanks for the suggestion. I've added it to my long list of things to checkout. I have had success with other Arduino based projects, so I will press on. Cheers Andrew
Hi Andrew, I`ve owned one of these mills for about 5 years, are you still using the standard dc motor? on the crappy plastic gear?, I swapped mine out for an AC servo with better torque for ridged tapping (oh it`s all been cnc`ed) as others have said ,looks like missing steps or a fluctuation in rpm once the motor is under any kind of use, also how accurate is the pickup, my servo has an encoder which, for me copes far better. hope you find the answer. P.s. keep up the good work , you`re only over the pennines from me.
Hi Barry. Blimey I didn't realise the mill has a plastic gear 😭. Looks like an upgrade once it breaks. The encoder I'm using generates 600 pulses per revolution and its connected using a 1:1 belt drive with teeth. Something isn't right, but hopefully I will be able to nail it. More experimentation needed. Cheers Andrew
@@learningturningmetal have a look under the plastic motor cover, if it's still thr same, it's a plastic gear between the motor and the high/low ratio shaft. I pulled Warco over this as they started "all metal gears" and their answer was, well its there for safety if you have a bump so it's a shear gear, utter crap in my opinion. Have a shear pin and replace for pence. The plastic gear is about 30 quid!. Anyway I made poly v belt pulls for mine. 😁
Thanks for a well filmed, produced and entertaining video. Lots of good advice and clever suggestions are given by knowing people earlier. However.... Being one of many guys on Arduino forum helping young people growing in programming and electronics I do have opinions about powering the controller by 9 volt, into Vin. Why on earth do that? Supply the controller with 5 volt to the 5 volt pin. The Vin converter producing 5 volt has no heatsink and often gets overloaded, shutting down. It barely manages the UNO itself. You use 9 volt but often people use the maximum, 12 volt. Know that all 5 volt devices depend on this tiny 5 volt converter. The LCD, especially the back light is a heavy consumer. The encoder is likely an easy load as well as the button board, but all together, what does it sum up to? If You ever faces problems after running long sessions, change the power supplying.
@@learningturningmetal Andrew …The comments by andysmachine is spot on. After checking some references… each pass with the hob cuts a set of teeth, the first pass cuts a gear with the tooth profile shifted out from the nominal position. The next pass creates a gear with a smaller profile shift, and so on. When I superimposed 4 profile shifted gears on top of the nominal gear, I get something that looks very much like your results
Hi Fred - thanks for the info. One thing that puzzles me is that the single pass on mild steel produces a really bad result too - 27:09. I can only put this down to the amount of time it took me to cut it.🤔More experimentation needed. Cheers Andrew
Hi … Andrew ….the problem with the single pass on steel. Since your setup work will with aluminum, you must be loosing sync. I have had issues with rotator encoders in “high” vibration environments. The vibration showed up as noise on the encoder signals, causing false and missing counts. We just replaced the encoder with a better one. This was during my working career (not a machining application) and we did not take time to really diagnose the problem
Thanks Fred, that is really interesting. I'm just working through various suggestions and currently getting nowhere. The signal from the encoder does sometimes look noisy but I've not been able to isolate the problem. Maybe a case of shielding, or lack of it. More experimentation needed. Cheers Andrew
Hi Andrew, The most likely cause of your problem is dropping pulses from mill spindle encoder due to bad signal integrity. To check that connect your oscilloscope at Arduino inputs, start the mill on constant RPM and measure typical width of pulses from the encoder. Then setup oscilloscope to trigger on pulse width that is different from typical values and wait for the scope to trigger to see the problem. Check both the positive as well as negative pulses. Your oscilloscope may also support triggering on runt - you can use that as well to detect signal integrity issue. Based on what I've seen in your video, loosing the pulse in your setup is infrequent, so I would suggest to run each test for at least couple of minutes before coming to any conclusion.
Hi Adam - I'm still learning how to use the scope, but triggering on pulse width seems to be a great idea. I need to get reading the manual and see if it supports runt. Cheers Andrew
As mentioned by others the root cause is "out of sync", your gear is probably too slow turning. (my guess) Multiple passes like you tried, should be totally fine. It can only show the problem more obvious, but cannot have caused it. If you accidently put the wrong tooth count into the controller, it will look like your gears :-); worth checking before the big debugging session is approached. (Do not ask why I know this!). Reasons I can imagine, most of it was already mentioned and explained in depth by the other comments. a) part shifting on arbor or arbor shifting in chuck (most probably not the reason), b) encoder input pulse count faults c) rounding errors in software d) mechanical overload on stepper motor e) overload shut downs on stepper driver f) speed problem on stepper driver: output signal, input signa, motor inertia, Things I would try: d)Try (carefully) to stall the workpiece spindle. Some torque is required to keep the stepper in sync. Side load from the hob is not very high, but it is there. If the motor is turning too fast or at its limit, you can have a lost steps issue on the motor side. f) Let it "dry run" for a while (30 min) with the "good" gear on the spindle and the hob aligned on the gap, not engaged just next to each other to see if the alignment shifts over time. ( I hope that makes sense) d) e) f) engineerd 3d s comments ! Additionally you can try to run the stepper driver at the highest allowed input voltage. (if not already the case) c) Try different tooth counts for the gear f) Try to hob a larger tooth count gear (plastic is good for trials), they usually are less problematic because the stepper can run slower, if a 60 or 80 tooth gear looks better you are loosing steps due to speed. OR Slow down spindle OR both at same time. My stepper driver gets out of sync when I accelerate the spindle too fast, because the motor will have too high inertia to follow. (remedy lower spindle acceleration if possible) I hope the comment is not too annoying and repeating what the others already wrote. You will fix it, I am sure.
Hi Andrew, great to see the progress you're making with this! There are lots of interesting suggestions below as to the synchronisation problem, but I don't see any problems with your setup and I think the real cause is taking multiple passes to cut the gear.
It's always best to cut to full depth in one pass with a hob. If you take a shallow cut then you are increasing the radius of the teeth being cut on the gear. The hob wants to naturally turn the gear blank like a worm and worm wheel, so if you cut at a larger diameter it wants to cut a greater number of teeth around the circumference of the blank and the hob will try and drive the blank at a different speed to that that the stepper motor is trying to turn it, the force generated can overcome the motor and cause it to gain (or loose) steps, even when it is being correctly driven at the right speed. This can also happen if you don't have the hob tilted to the correct angle, but you look to have this spot on! On your microscope picture at 26:20 you can clearly see each pass has tried to push the gear at a different speed resulting in the sheared over tooth profile.
Your hobbing attachment looks easily rigid enough to be able to handle cutting 48DP and bigger teeth in a single pass, you just have to remember to feed very slowly, it's not like normal milling, as you feed you are also cutting all the way around the gear blank so you need to take it slow and steady otherwise you can easily get too far ahead and perhaps get the impression you are taking too heavy a cut, when in fact you are just feeding too fast.
The aluminium gear you cut in a single pass looks much better, but as somebody else pointed out the teeth do look a little narrow, this might be due to resonance, so increasing the speed of the mill might help tune it out. With this size hob (~ 1 inch dia.) I would cut that gear at around 600-800rpm and for steel 300-350rpm. Narrow teeth can also be caused by an undersized gear blank, perhaps the small runout could have contributed to this? Another good suggestion somebody made is to make your chuck a loose fit on the face plate so you can tap it in and lock it down to dial out any runout in the part, that's exactly how I do it with a 3-jaw chuck on my machine.
Hi Andy - many thanks for the advice. I will make a list of all suggestions, by you and others, and try to work through them methodically. Hopefully I will get to the root cause. Thanks again for your help.
Cheers
Andrew
The issue is with lost steps. You want the lowest microstepping you can get away with, this brings better torque. In the 3d printing wold this type of issue is very common and is associated with higher stepper speeds and heavy weights. Also see if you can increase the amperage of the stepper, keep an eye on it as long as it's under 65ish centigrade it should be fine.
Many thanks for the advice. I will give that a try. 👍
Cheers
Andrew
i used the normal cutter and made a long stick then cut off as many as i needed it worked very well for me and saved me a lot of time
Hi Randall - yeah that is a good approach. What started me on the journey of gear hobbing was the inability to get hold of some of the 48DP cutters. I've now got all the cutters I need, but gear hobbing is still an interesting challenge.
All the best.
Andrew
with the encoder connected with loose unshield wires and no filtering on the board it is very likely that any electrical noise from the spindle/stepper etc. can make it count false pulses now and then
Many thanks for the suggestion. I will check that out.
All the best.
Andrew
There appears to be an incremental error which manifest more with an increase in the number of passes. Not noticeable with one pass but with say seven passes very noticeable from the cumulative effects.
Hi Ronald - yeah I think I need to do more tests. Some good advice received from others too.
All the best.
Andrew
On the bright side you could start a business making ninja throwing stars.
Ha ha, I love it. Great idea🤣🤣🤣
Hello Andrew,
Great to see the first cuts with the hobber... I hope you find the solution to your problem soon. The microscope looks really interesting...
Cheers
Paul,,
Thanks Paul - fingers crossed! That microscope is amazing VFM.
Cheers
Andrew
Hi Andrew, the problem with the method you are using is that if the sychronization is just a tiny bit out or a step is missed then the two spindles will get out of step and you will get exactly the result you are recording. The worrying thing that I saw in one of your tests was the variability of the spindle speed of he mill. One thing I could suggest is that you try with a lower spindle speed as you may be losing sync due to either missing pulses or even the encoder not producing clean pulses. Also you are using a belt from the stepper motor which may be stretching under load.
Finally, check you current settings of the stepper motor, the hob will put a lot of load on the stepper and may be forcing it to either over or understep. I had a similar problem with a cnc mill where the the load on the moter would cause so much resistance to the stepper moving that occasionally a step would be not happen. To overcome this I turned up the current on the stepper and all was fine. Sorry if you have already checked this.
It would be interesting to know whiich side of the teeth were malformed as this will give you an indication as to if it is overstepping or understepping. Hope this helps.
Hi Terry - many thanks for the suggestions. I've added them to a list of things for me to check out.
Cheers
Andrew
Great video!
Thanks mate!
Looks like you put that microscope to work immediately! You will also find it handy for keeping track of insert wear and other general shop inspection.
As far as the run-out on your ER chuck, you could relieve the chuck mounting boss a few thousands, bump it true referencing a quality round held in the collet and rely on the mounting screws to hold the chuck in place. I did that for the ER32 chuck on my lathe and it's been running true for several years now.
The good news is you got one good gear out of you hobber, so you know your setup can work. It just needs some debugging.
Hi Douglas - I would have really struggled without that microscope. It's amazing VFM. Thanks for suggesting it in the first place. I will see if I can address the runout as you suggest.
All the best.
Andrew
Good luck figuring it out. I’m sure you’ll get it right.
Thanks for sharing 👍
Cheers Craig 👍
Also a (south) Yorkshireman, have i got this right.. you're basically running Andy's setup but with 2 17bit rotary encoders and the numbers updated for the extra encoder positions?
Hi
The setup is very similar to Andy's with just one rotary encoder. I did write my own Arduino script. The download link is in Part 7 video description.
It was an interesting project but, in reality, you need an extremely rigid setup to hog gears - just look at the size of some commercial machines. The other issue is that hobs are extremely expensive and secondhand ones are a big gamble. For home workshops I think individual gear cutters are the best option.
Cheers
Andrew
@@learningturningmetal thank you, I've found your link, will re-watch 6 and 7 a few times to figure out what I'll need to do with a closed feedback stepper vs a servo motor.
I'm not too worried about rigidity here but would like to able to job really small stuff without gears.
This is a great video series.
Re your problem, it certainly looks like drift, and it also looks like a predictable amount of drift over time.
You could test that by cutting a gear with 2 passes, immediately.
Then try a second test, where you cut the first pass, wait a predetermined time like 5 minutes etc (you should know by now roughly how much it drifts over time) then cut the second pass.
If both gears have the same error it is not time dependent and might be some mechanical issue.
If the first gear is pretty good but the second gear is bad, you know you have drift over time, which is probably the most likely thing anyway.
Based on what you showed in this vid I would bet it is drift over time, possibly caused by software rounding in Andy's ratio conversion software.
Another possibility is lost/gained encoder pulses over time. I noticed your scope shows a lot of noise on the encoder signal. Try adding two 330 pF caps at the arduino, from each encoder pulse pin to ground.
The difference between a software or noise fault could be tested as the software fault would likely cause a predictable drift over time, where the pulse noise fault might cause weird drifts that dont seem directly related to time.
Hi Wiz - many thanks for the advice. Makes a lot of sense. Added to a list of things for me to work through.👍
Cheers
Andrew
When I cut threads on my lathe, I engage the drive on the same number on the counter with each pass. Is there a reference signal to sync with the movement of the cutter into the workpiece similar to thread cutting? With no reference, any backlash in drive system is carried forward, inducing a cut more and more away from being in sync.
Good idea, this is the way some petrol engines work. The ecu looks for a missing tooth to sync. With gear hobbing you probably won't need absolute measuring so could reset every revolution. Or if absolute is required add each count to the last.
Hi William - Thanks for your thoughts on this but I don't think there is a reference signal as such. More tests needed to try to works out what is going on.
Cheers
Andrew
Very interesting and honest as ever Andrew. The setup is fascinating and I am sure the timing issue is resolvable with a bit of expert advice...which won't be coming from me because I have no clue at all about these black arts. It is clearly a mismatch between the speed of the spindle and the speed of the mill, but how you synchronize the two??🤔🧐 No doubt the answer lies that little black box somewhere. I hope you can find it.
Thanks Tim. Maybe my digital microscope will help me find it 🤣🤣🤣
Cheers
Andrew
I'm pretty sure you have some form of drift in the work and cutting spindle sync. you can hear it doesn't stop cutting even when you've completed a cut as it sounds like the indexer is either gaining or lagging behind the pitch of the hob.
That small radial runout error could easily be compensated for if you allow a bit of clearance on your backplate register and just lightly tap the collet chuck periphery until the gear blank runs dead true and then nip the chuck screws up tight .
Unless those ER collets are the ultra precision versions then a little runout is often seen. Just make the collet chuck adjustable to compensate.
Edit to add: I am highly impressed by your progress with this project so far 👍
Hi Howard - many thanks for the advice. Fingers crossed I will be able to work out what is causing the drift. My list of things to check out is steadily increasing!
All the best.
Andrew
Hello Andrew, while the "single pass" aluminium gear seems OK, the tooth width looks a bit narrow.
Hi Steve - an interesting observation. I will re-examine that gear, by placing the good gear underneath it. My guess is that you are correct and that the sync issue is present on a single pass too.
Cheers
Andrew
Stretch in the belt, between the stepper and the shaft? or slop lets say?
Hi Mark. Thanks for the suggestion. I don't know much about belt driven systems, but the belt and pulleys I used have teeth. I think 12 on one pulley and 36 on the other. So I'm not sure if they could gradually run out of sync over time. I guess any slop would be taken up once the hob engages with the blank. Interesting thought though.
Cheers
Andrew
Probably not a glaring issue Andrew, but the soldering on pins 2,3 need to be given a once over. Pin 3 for sure is looking a little dodgy. Have a good look at all of the soldering connections to your shield with the new digital microscope :) Cheers. EDIT: upon review, go over all the soldering just for good measure. Maybe a little more flux, or higher temp. Hope you have discovered that lead free solder is crap. I hate to make these critiques, but somebody has to do the deed.
Hi Chris - thanks for the advice. My soldering has a lot to be desired. I will check it out.
Cheers
Andrew
Because of the change in angle of the head, wouldn’t you need to compensate for that in the x travel? Or the backlash in the mill would show itself because of angle of the cutter?
Hi Bruce - thanks for the suggestions. I need to do more testing to try to work out what is going wrong.
Cheers
Andrew
Could be a stepper driver setting causing lost steps , if the stepper motor is running cold you could bump the current up a notch .
Thanks Ian - I've added that to my list of things to try.
Cheers
Andrew
Hi Andrew, btw.... I love your channel, and before I make this comment I've not expert and am definately a learner but.... I noticed in the single pass gear the bottom of the teeth seemed quite wide, and the teeth themselves slightly narrower. It got me thinking as the table moves back and forth the part of the hob that engages with the work will move you and down. Does a tool the runs a hob cutter somehow compensate for this?
Hi, yeah I think you are correct about the profile of the teeth not being quite correct - even on a single pass. I don't understand the math behind it but moving the table back and forth shouldn't be an issue as long as the mill isn't stopped between passes. More investigation needed!
Cheers
Andrew
Andrew this series is proving very interesting not just for metal machining but Ornamental Turning. Sadly the echo of the room at distance of the mic from yourself made hearing what you wee saying very difficult.
Hi Raymond, sorry about the sound quality. Yeah worse to case I could always repurpose it to produce strange shapes 🤣🤣🤣
Possible issues could be pulse skipping, where the stepper motor doesn't actually move to all the steps sent out by the driver?
This can happen if the pulses are sent too fast for it to respond, and that can be due to insufficient current to drive the motor fast enough for each step due to the balance between the inductance of the winding and the current limit of the driver not being in tune with each other - a motor with high inductance windings will require a larger peak current to sharply move from one position to the next than a motor with lower inductance windings. If the current limit on the driver is too low then the motor may not move the exact number of steps the driver is outputting, the end result will appear to be skewing of sync which will get larger over time. The other related possibility is the stepper driver has a high enough current limit, but the power supply sourcing the driver is incapable of supplying those peaks so will be limiting instead.
A possible way to try and work out might be looking with a 'scope at the voltage to the input of the driver - if you can see narrow spikes of the voltage rail dropping in sync with the pulse telling the motor to step forward, then it suggests the rail is transiently collapsing because it can't supply the current. A rough way to try and address that would a large value of capacitance at the input to the driver to act as a low impedance source to help ride out those current spikes.
The other possibility would be to just slow all the rpm speeds down, thus giving time for the motor to respond to the slower pulse train.
If you have a couple of other ABZ encoders then fastening one to the milling machine spindle and one to the stepper motor spindle and connect a counter to each so you can count the number of *actual* steps you get from the motor relative to the number of steps from the milling machine spindle. It shouldn't matter how long you leave it running, the ratio of steps between both should be the same, but if the motor is skipping pulses then you'll see the ratio change over time.
sorry - only gave half an explanation last night...
Besides having current limit of the driver set to match maximum of the motor, you could also do with running the driver from the maximum input voltage possible.
This means in steady-state the driver output will be in current limit meaning the motor holds with maximum torque. When you apply a pulse there is plenty of headroom for the driver to spike the voltage high to get the current in the motor coil to change fast, and thus respond to the step quickly.
This is the same principle as why when you turn the voltage off to a relay (ie. change the coil current from what it was at, to a new value of zero very fast), the inductance of the relay coil will result in a large voltage spike across it to try and keep the current the same - that can't go on indefinitely so it then collapses again.
The rate of change of current in the motor coil is a function of its inductance and the voltage applied across it. You can't control the inductance, so if you want the current to change fast (and thus the motor shaft to respond quickly) then you need to apply as high a voltage as possible.
If you're sending a fast pulse train to the motor and the voltage headroom isn't high enough, then the pulse will arrive and the current in the motor coil will start to rise at a slow rate. However the next pulse may arrive turning that coil off again before the current has risen high enough to actually cause the shaft to turn in response to the first pulse. Now it's off the current will start to slowly fall again.... ....when the third pulse arrives and the coil turns on again, now it starts to rise again, but from a higher level that it started from last time because it hadn't fully collapsed to zero. Hopefully this time it does reach the level where the shaft moves a step forwards, before the next pulse arrives and the coil gets turned off again..... etc. etc.
Viewed in this way you can see why it will respond to a single pulse - because it has infinite time for the current to build up and the move to occur, but send a fast train of pulses and some might get skipped. Run from a higher voltage and the current will rise faster and thus the motor will respond and move quicker. ....or slow the rotation speed of everything down so the pulse train to the motor is slower and thus you once again give the motor coil inductance more time to respond to each pulse as it arrives.
@@IACooper wow many thanks for such a detailed explanation. I will need to work through this in detail and undertake some more tests.
Thanks mate!👍
Andrew
@@learningturningmetal
I think the brief summary without the waffle trying to explain way, is:
a) ensure stepper driver output current is the maximum the motor spec can handle.
b) ensure the input voltage to the stepper driver is the maximum it can handle (and obviously the power supply can deliver the current as well!)
Those two things should hopefully mean the motor can be driven from one step to another as quickly as possible, so it won't skip any. If that still doesn't work, then try
c) slow down the milling machine spindle speed, which will slow the stepper speed and thus give the motor more time to respond to each individual step.
Obviously the down side to reducing spindle speed is also reducing the X-axis feed rate, but if you've got a motor feed on that(?) then it makes it a bit easier even if it does take longer. If you're having to hand feed then it becomes more difficult.
Best of luck sorting it all out 🙂
Gday Andrew, certainly a brain teaser but I’m sure you’ll work it out, I brought a digital microscope a couple of years ago, it’s bloody brilliant for checking inserts and checking fines threads, im looking forward to seeing the next instalment, cheers
Hi Matty - yeah the microscope is absolutely amazing. I don't know how I've managed without it. Fingers crossed I'll be able to get to the bottom of the drift issue.
Cheers
Andrew
Is the Arduino mis-counting the pulses from the rotary encoder? Maybe missing pulses when servicing interrupts?
Hi Jeffery - good question. The code is written in assembly language and the source is not available. I will write my own test script to see if the problem is still present.
Cheers
Andrew
@@learningturningmetal My concern is also those constant updates to the RPM display. The fact that the rpm display would require a periodic timer event suggests that interrupts are probably enabled. Could easily skip a pulse while doing that. It would be very hard to spot using the scope though.
@@jefferybond5701 yeah. Andy aka AndysMachines recons the Arduino is capable of handling the throughput. My simple script might help identify the root cause. Watch this space!
Hi Andrew is it possible that the gear hob is moving on it's shaft or spinning in the collet.
Hi Rich - I don't thinks so. I did look into that and it appears rock solid. The error seems to be gradual throughout the cut, rather than random. As a double-check I will mark positions with a marker pen and see it there is any movement.
Cheers
Andrew
Doesn't the electrical design of the stepper motor determine the number of full steps per rev? So setting the controller to the wrong number of steps (i.e. 800 instead of 200) will make the stepper motor rotate 4 times as fast (rather than micro-stepping), won't it?
The aluminium gear at 25:15 is still not quite right - the teeth are too narrow and one side of the root is sharp while the other is rounded - both features indicate a loss of synchronism. To determine if the problem is software (rounding error accumulation?) or hardware, you could try writing a very simple counting program in the Arduino instead of using Andy's version - count 20 input pulses, output one pulse, repeat. If this produces a good gear then there's a software problem.
Hi Chris - I think I've got my steps calculated correctly. If I set the stepper driver to 200, 200 pulses will only turn the gear blank 1/3 of a turn (3:1 tooth belt ratio on hobbing accessory). So in that case 600 pulses are needed to turn the blank one revolution. Good observation at 25:15. I previously wrote a simple script as you describe. I will mod it to output one pulse per 21 input pulses and run that. As you say, this would highlight a software problem. Great idea!
Cheers
Andrew
@@learningturningmetal Hi Andrew. Please don't keep me in suspense ! When you ran the simple code (1 output pulse per 20 input pulses), did it produce a good gear?
@@chrisarmstrong8198 I used it in a previous video to check output using a scope. All looked good but it wouldn't highlight any gradual out of sync problems.
This time I'll try to cut a gear with it.
Great looking project and thanks for showing warts and all. I'm not normally moved to comment but this intrigues me :)
My feeling is the mill motor is essentially freewheeling dc motor and when load is put on the mill it slows a bit and the stepper pulses lag the sync pulse from the spindle which induces and error. This is not too bad over a short period but if there are multiple passes this error compounds and you end up with a bicycle sprocket.. If it were just lost pulses the teeth would be tilted over as in on example but you had some examples where it looks like the error seemed to have wandered about and just opened the tooth gap. Possibly you could try and just cut from one side instead of back and forth. Which may help in identifying the issue.
Fraser
Hi Fraser - many thanks for your thought on this. More tests needed. Yeah - showing problem I come across has two major benefits: I get some great advice from others and it might help others who experience similar issues.
Cheers
Andrew
I have a question, doesn't the hobbing attachment need to be tilted at the helix angle of the lead? Lead=(PI x Diameter) / tan[helix angle).
So you would have to rearrange the formula to figure out the [helix angle] ((hobbing attachment angle)
Again more of a question than a suggestion.....unless it helps.....😆
Love your videos btw!!!!!!
Thanks mate! From watching AndysMachines channel I don't think the hobbing attachment needs to be tilited. I think you could tilt it to create a helical gear. Thanks for the suggestion though.
All the best.
Andrew
Could the timing issue be due to backlash when you were moving the x axis?
Hi Robert, I don't think so. Backlash would be picked up prior to any cutting. The mild steel gear cut in one pass was also malformed.
Thanks for the suggestion though.
Cheers
Andrew
It's probably the backlash in your table leadscrew that messes up the teeth in the multiple passes. You should be able to do 1 pass if you feed slow.
Hi Jeremy - I think the problem is also present in a single pass, but it's not as obvious. I need to do more tests and investigate further.
Thanks for your suggestion.
Cheers
Andrew
Making progress in any case. I'm sure you'll figure it out.
Watching Andies video, the led on the arduino lights up when the hob and the workpiece are out of sync
Stopping after a cut will put it out of sync, as Andie say cut the gear in one pass at full depth
Hi thanks for commenting. The sync problem is still apparent when making a single cut. Not openly obvious on the aluminium gear, but really bad on the mild steel gear. I never stopped the mill during cutting and the led never lights up. A bit of a brain teaser, but lots of suggestions for me to try.
Cheers
Andrew
Wow Andrew, I would love to say you lost me when you got the oscilloscope out......... unfortunately, you lost me way before that lol. I am sure you will get to the bottom of it, great video. Cheers, Jon
Ha ha - thanks Jon.
All the best.
Andrew
Hi Andrew, I’m certainly no expert but wonder if you could be seeing the cumulative effect of rounding errors in the Arduino code over time. I have made a stepper motor driven head for cutting gear teeth and in the forum on the build I followed this was an issue raised (and you may only need one or two passes to cut a gear with a gear cutter - you’re rotating the mandrel many many times so the hob can cut yours. Even tiny errors in rounding will aggregate over enough rotations to show as a loss of sync.
The other comments over electrical noise are also potentially very valid. I noticed your oscilloscope seemed to fluctuate at times by at least one step (but that could also have been an effect of a rolling shutter in the camera). Any lag between the spindle speed changing and the gear on the mandrel matching rotational speed would also look like lost steps or sync issues - eg when the cutter is loaded or unloaded, if the cutter is not progressed through the work uniformly (and even then it has to start and stop the cut unless you have sacrificial blanks either side and cut in one pass).
Like I said, I’m certainly no expert, just my thoughts and observations. Love your approach and your content. Please keep it all up. I know you’ll get to the bottom of it and find the issues and solve them. Cheers, Nick
Hi Nick - many thanks for your thoughts on this. From comments made I've made a list of things to check out and try out. Hopefully I will be able to sort it. I don't like failure!
Cheers
Andrew
Hear Hibbing is position based following, not velocity (RPM). Velocity based following does not make up for any velocity errors between the master and follower. Position base does.
Hang in there. Thanks for the look.
Cheers John - more tests needed!
hi Andrew, I'm not seeing why you are spinning the gear blank while cutting unless you are making helical gears. if you are making straight ones usually the gear is positioned before each cut.
Rich
Hi Rich, for hobbing you need to turn the gear blank in sync with the mill spindle. Strange though it may seem, and I still struggle to get my head around it.
All the best.
Andrew
@@learningturningmetal hi Andrew, thank you my friend for getting back to me. obviously I don't know how to make gears. I thought you could make one with an Indexer. what type of gear are you making? it appears to be a spur gear.
Hi Rich. Yes it's spur gears I'm making. The easy way is to use an indexer and make the gear with a gear cutter. Problem is you need up to 8 different cutters for a particular profile of teeth. Cheep cutters are around £30, so a full set is well beyond £200. You can pay £100 for just one cutter! Another way is to use a gear hob. Only one hob needed to cover cutting the full range of teeth. I struggled getting 4 different 48DP cutters for the Jerry Howell v-twin, so I decided to explore gear hobbing (plan B). It's a very interesting subject and I still can't get my head around it fully. I've now got the four gear cutters I need (plan A), but hobbing might be the future!
Cutting a good gear is very satisfying!
Cheers
Andrew
@@learningturningmetal thanks Andrew for the nice reply. I do understand now what you are trying to accomplish. Rich
There seems to be a few issues with this set up. The cutter is analogue, in effect, and the gear rotation stepped, albeit small. Perhaps not an issue with the small gears here. The synchronisation between cutter and hob is utterly dependent on a perfect pulse train throughout the entire process. Although, Andrew, you call the sensing device on the mill spindle a rotary encoder is it just a speed sensor? If so, it is prone to errors if the spindle is stopped part way through the cutting process. Twisting the spindle back and forth probably advances the gear position I would guess.
Still, you managed to produce a good gear out of a few failures which is quite an achievement. You are on a steep learning curve at the moment. Well done.
Thanks Martin. I do actually have a rotary encoder installed on the mill. It generates 600 pulses per revolution. From some of the comments made, I suspect that the signal might not be clean enough. Lots of other suggestion made by others too. So, more experimentation needed to try to resolve the problem. Fingers crossed I will be able to sort it.
Cheers
Andrew
Andrew. A rotary encoder is more than a giver-outer-of-pulses. For every increment it gives a unique value so it is possible to identify every angular position it is designed to resolve. With hobbing you need to know where the mill spindle and the gear rotation are in relation to each other. Gear driven hobs are inaitly synchronised and locked. Digital systems need accurate monitoring and feedback corrections.
Hi Martin I don't think rotary encoders produce a unique value. There are two outputs that produce either low or high signals. Each pulse produces a high signal and it's possible to calculate rotation direction by examining both signals. If you have come across any code that sees these signals as numerical values I would be interested.
Cheers
Andrew
I think what you have is an incremental encoder. It can detect rate and direction with the two-wire lead/lag square wave output but can't differentiate between one position and the next. There are absolute encoders which really do encode the angular position and give out a unique number for each one. On such devices you would expect more output connections. For example, for 360 degrees you need at least 9 signal connections to relay the information to the processing unit.
Type into TH-cam "absolute rotary encoders" as a starting point.
Gear hobbing digitally requires more expensive measuring devices and fast and complex computing between the cutter and the work piece.
With the equipment you already have I would be inclined to abandon the hobbing bit, use a standard set of gear cutters in the mill as normal and synchronise your indexing head with the mill's table feeds. That way you could set it on its way and get on with something else.
Hi Martin - thanks for the info. Andy (aka AndysMachines) makes gears successfully using this method, so I won't throw the towel in just yet. I'll try out various suggestions and see if that resolves the problem.
Cheers
Andrew
You've probably had lots of advice about the problems you were having and so my advice may not be relevant. One of the issues with projects based on the Arduino is that the boards are meant for experimentation and learning and they are not industrially hardened. So stray signals can get picked up that then create problems when the application is run in a noisy (ie RF noise) environment. Shielded leads and a steel box (a Faraday shield) can help alongside good lead placement away from noise producers like motors and motor drivers.
Hi Neil - many thanks for the suggestion. I've added it to my long list of things to checkout. I have had success with other Arduino based projects, so I will press on.
Cheers
Andrew
Hi Andrew, I`ve owned one of these mills for about 5 years, are you still using the standard dc motor? on the crappy plastic gear?, I swapped mine out for an AC servo with better torque for ridged tapping (oh it`s all been cnc`ed) as others have said ,looks like missing steps or a fluctuation in rpm once the motor is under any kind of use, also how accurate is the pickup, my servo has an encoder which, for me copes far better. hope you find the answer. P.s. keep up the good work , you`re only over the pennines from me.
Hi Barry. Blimey I didn't realise the mill has a plastic gear 😭. Looks like an upgrade once it breaks. The encoder I'm using generates 600 pulses per revolution and its connected using a 1:1 belt drive with teeth. Something isn't right, but hopefully I will be able to nail it. More experimentation needed.
Cheers
Andrew
@@learningturningmetal have a look under the plastic motor cover, if it's still thr same, it's a plastic gear between the motor and the high/low ratio shaft. I pulled Warco over this as they started "all metal gears" and their answer was, well its there for safety if you have a bump so it's a shear gear, utter crap in my opinion. Have a shear pin and replace for pence. The plastic gear is about 30 quid!. Anyway I made poly v belt pulls for mine. 😁
Thanks for a well filmed, produced and entertaining video.
Lots of good advice and clever suggestions are given by knowing people earlier.
However.... Being one of many guys on Arduino forum helping young people growing in programming and electronics I do have opinions about powering the controller by 9 volt, into Vin. Why on earth do that? Supply the controller with 5 volt to the 5 volt pin.
The Vin converter producing 5 volt has no heatsink and often gets overloaded, shutting down. It barely manages the UNO itself.
You use 9 volt but often people use the maximum, 12 volt. Know that all 5 volt devices depend on this tiny 5 volt converter. The LCD, especially the back light is a heavy consumer.
The encoder is likely an easy load as well as the button board, but all together, what does it sum up to?
If You ever faces problems after running long sessions, change the power supplying.
Hi Stefan - many thanks for the advice. I'll keep my eye on that.
Cheers
Andrew
Backlash?
Yes backlash I the x travel, he needs to take y away before returning x to start position , then increasing cut with y
@@geoffreyfrench177 I can compensate for backlash with the eZcnc I have fitted to my Sherline. A very handy feature..
👍👍👍👍👍
No multiple passes. Single pass only.
Try multiple passes without turning off the mill … likely “changing” sync during startup
Hi Fred. I never turned the mill off between passes, but something isn't right. Thanks for the suggestion though.
All the best.
Andrew
@@learningturningmetal
Andrew …The comments by andysmachine is spot on. After checking some references… each pass with the hob cuts a set of teeth, the first pass cuts a gear with the tooth profile shifted out from the nominal position. The next pass creates a gear with a smaller profile shift, and so on. When I superimposed 4 profile shifted gears on top of the nominal gear, I get something that looks very much like your results
Hi Fred - thanks for the info. One thing that puzzles me is that the single pass on mild steel produces a really bad result too - 27:09. I can only put this down to the amount of time it took me to cut it.🤔More experimentation needed.
Cheers
Andrew
Hi … Andrew ….the problem with the single pass on steel. Since your setup work will with aluminum, you must be loosing sync. I have had issues with rotator encoders in “high” vibration environments. The vibration showed up as noise on the encoder signals, causing false and missing counts. We just replaced the encoder with a better one. This was during my working career (not a machining application) and we did not take time to really diagnose the problem
Thanks Fred, that is really interesting. I'm just working through various suggestions and currently getting nowhere. The signal from the encoder does sometimes look noisy but I've not been able to isolate the problem. Maybe a case of shielding, or lack of it. More experimentation needed.
Cheers
Andrew
Hi Andrew, The most likely cause of your problem is dropping pulses from mill spindle encoder due to bad signal integrity. To check that connect your oscilloscope at Arduino inputs, start the mill on constant RPM and measure typical width of pulses from the encoder. Then setup oscilloscope to trigger on pulse width that is different from typical values and wait for the scope to trigger to see the problem. Check both the positive as well as negative pulses. Your oscilloscope may also support triggering on runt - you can use that as well to detect signal integrity issue. Based on what I've seen in your video, loosing the pulse in your setup is infrequent, so I would suggest to run each test for at least couple of minutes before coming to any conclusion.
Hi Adam - I'm still learning how to use the scope, but triggering on pulse width seems to be a great idea. I need to get reading the manual and see if it supports runt.
Cheers
Andrew
As mentioned by others the root cause is "out of sync", your gear is probably too slow turning. (my guess)
Multiple passes like you tried, should be totally fine. It can only show the problem more obvious, but cannot have caused it.
If you accidently put the wrong tooth count into the controller, it will look like your gears :-); worth checking before the big debugging session is approached. (Do not ask why I know this!).
Reasons I can imagine, most of it was already mentioned and explained in depth by the other comments.
a) part shifting on arbor or arbor shifting in chuck (most probably not the reason),
b) encoder input pulse count faults
c) rounding errors in software
d) mechanical overload on stepper motor
e) overload shut downs on stepper driver
f) speed problem on stepper driver: output signal, input signa, motor inertia,
Things I would try:
d)Try (carefully) to stall the workpiece spindle. Some torque is required to keep the stepper in sync. Side load from the hob is not very high, but it is there. If the motor is turning too fast or at its limit, you can have a lost steps issue on the motor side.
f) Let it "dry run" for a while (30 min) with the "good" gear on the spindle and the hob aligned on the gap, not engaged just next to each other to see if the alignment shifts over time. ( I hope that makes sense)
d) e) f) engineerd 3d s comments ! Additionally you can try to run the stepper driver at the highest allowed input voltage. (if not already the case)
c) Try different tooth counts for the gear
f) Try to hob a larger tooth count gear (plastic is good for trials), they usually are less problematic because the stepper can run slower, if a 60 or 80 tooth gear looks better you are loosing steps due to speed. OR Slow down spindle OR both at same time.
My stepper driver gets out of sync when I accelerate the spindle too fast, because the motor will have too high inertia to follow. (remedy lower spindle acceleration if possible)
I hope the comment is not too annoying and repeating what the others already wrote.
You will fix it, I am sure.
Hi Timo - many thanks for the list. Now added to my list of things to try.
Cheers
Andrew