Project of the Month built by Rustkolector

Help Support Home Model Engine Machinist by donating using the link above or becoming a Supporting Member.
Home Model Engine Machinist > The Tools and Tips > Machine Modifications > Arduino Rotary Table for Dummies

Reply
 
Thread Tools
Old 01-19-2018, 08:05 PM   #151
kquiggle
 
Join Date: May 2012
Location: Michigan
Posts: 268
Liked 65 Times on 44 Posts
Likes Given: 1

Default

As I do not want to detract from this post in any way, or risk making comments which are starting to veer off the main topic, I have started a new post on my related build (Electronic (Arduino) Rotary Indexer - Another One). If anyone is interested my build and related programming, I'll be posting updates there.

Thanks again to bmac2.


__________________
For a successful technology, reality must take precedence over public relations, for nature cannot be fooled. - Richard Feynman
Visit my website!: Academy of Lagado
kquiggle is offline  
 
Reply With Quote
Old 01-20-2018, 04:33 PM   #152
jkcab
 
Join Date: Jan 2011
Posts: 16
Default

Thank you John,

I loaded your sketch and it works great for speed adjustment. While playing with it I noticed I have .5 degrees of backlash. I adjusted out the lash and found that the 84 ozin motor dose not have enough torque to rotate the rotary table. It seems the highest torque motor I can find in nema 17 is 92ozin. I did find one that was 115 but way to pricey. I chose the nema 17 for clearance reasons and size of motor driver. I am now in a quandary as I am not sure another 8ozin will make a difference or do I need lash adjustment in the sketch. I would hate to have to start over with a nema 23 and a larger driver?
I feel like I am imposing to ask if you could add lash adjustment to the sketch? I am not even sure it is doable?

As for comments in regard to your latest sketch I have a few. It works great as is but you must turn it off and back on to change the settings. It might prove more convenient to be able to press the A key on the splash screen for changes without having to re-power the controller. I added an on off switch to my control box so that it would not be an issue for me. My other comment is when in the set up screen you need to put all the variables in every time even if you only want to change one. It would be convenient if the settings defaulted to the last one if you just hit the enter key without a change.

I am grateful for the sketch as is but you asked for comments and I thought you would be interested in the observation. It feels like I am complaining about a gift!

Thanks so much for your efforts,

Jeff K.


jkcab is offline  
 
Reply With Quote
Old 01-20-2018, 06:02 PM   #153
tjwal
 
Join Date: Sep 2013
Posts: 37
Liked 5 Times on 3 Posts

Default

Jeff
Have you tried running with a longer stepdelay? If that will work then increasing your supply voltage will also help. For indexing, backlash usually isn’t a problem, you just need to approach your position from one side. I think the same thing goes for milling but conceivably it could be a problem.
I agree with you that having to enter all three variables is a pain. I will try to fix that.

If you’re in one of the moving menus, pressing “C” resets the Arduino and the splash screen comes up. I’ve set the display time to be fairly short but if you’re quick should be able to press “A” and get to the settings.
Comments are welcome as they help me to improve the code.

John
tjwal is offline  
 
Reply With Quote
Old 01-20-2018, 09:00 PM   #154
jkcab
 
Join Date: Jan 2011
Posts: 16
Default

John,

If you power up the controller, go through set up and then run whatever. You then hit c and yes you do have time to hit the a but it will not take you to the settings screen? Maybe I am just not fast enough or I need to increase the splash screen time?

I did lots of permutations with step delay and step resolution. I only changed 1 variable at a time. I did try a higher voltage supply in my earlier testing and found it did not perform as well. I ended up with a 20v 4.5a dell power supply. I have a 24 volt adjustable supply but I did not think the extra 4 volts would make a great deal of difference. The other one I mentioned before was 32v but only 1.6a. The motor is 2a with low inductance so I opted for the lower voltage and higher amps.

As for the lash issue I was more concerned with a circular groove. You would have to exit the cut, go past the start, come back to the start and then re-enter the groove. You would also loose the ability to reverse direction to clean up the opposite side of the groove. You would always have one side climb milled and one side conventional.

It would also be a time consuming process something like the following: Say you wanted a 45 degree arc. You would set up for it and then plunge and cut. You would then lift the cutter exit and reverse say 50 degrees. You would exit again and then reset for 5 degrees forward. You would then exit again and rest for 45 degrees, plunge in and the run forward. This would be the process for each depth of cut. Sounds a bit tedious? I may be missing something I'm not sure?

Jeff K.
jkcab is offline  
 
Reply With Quote
Old 01-21-2018, 05:23 PM   #155
kquiggle
 
Join Date: May 2012
Location: Michigan
Posts: 268
Liked 65 Times on 44 Posts
Likes Given: 1

Default

Jeff - Re torque problem: I'm new to stepper motors myself,but my understanding is that more power (amps) = more torque, so you should set the running current on your controller to the setting that equals (or is just below) the rated current for your motor. Microstepping reduces torque slightly, so if you can get away without microstepping you should gain a bit of torque that way.

Another option (which I am considering for my own build) is to get a stepper motor with built in planetary gear reduction. I don't know what space limitations you are working with, but this might still fit your requirements (random ebay pick to show what I mean) : https://www.ebay.com/itm/Extruder-Ge...8AAOSwM8ZZeZ9G

For your backlash issue, it would be possible to program in "backlash correction" but only if the backlash is constant. For example, if you had to advance exactly 8 steps every time to take out the backlash, this could be programmed in, but if it varied among 7,8,9 steps then I don't see how to correct for that. I'm assuming the backlash in your system is in the rotary table gears, so is maybe fairly constant. But it could also drift over time, so you might have to reset the backlash correction every time you use the table.
__________________
For a successful technology, reality must take precedence over public relations, for nature cannot be fooled. - Richard Feynman
Visit my website!: Academy of Lagado
kquiggle is offline  
 
Reply With Quote
Old 01-21-2018, 08:11 PM   #156
jkcab
 
Join Date: Jan 2011
Posts: 16
Default

OK I was missing something. If you have a known amount of lash it is easy to compensate for. Take my earlier example of a 45 degree arc. You would first set up for the 45 degrees, plunge in and then cut. You then exit out and set up for 45.5 degrees (.5 degrees of lash compensation) and reverse. You can now move forward and back as you will be compensated with each reversal. You would just need to keep track of your last move for your next operation to know which direction your lash is in.

Though increasing voltage and reducing micro-stepping will increase torque it appears it is not sufficient to overcome the friction of near zero lash with my current motor. That being said I would be dubious of a planetary gear reduction as it would induce additional mechanical lash through the gear train.

The reason I suggested programmable lash compensation is for the same reason you use it on a cnc with lead screws. Lead screws require a bit of clearance unlike ball-screws. Usually you try to remove as much mechanical lash as possible and then measure what remains. This is easy to do on a linear axis with a dial indicator. Once the amount is determined you just insert the dimension in the software like Mach 3. I suppose you could do the same with the rotational axis using trial and error until the indicator showed zero. Though lash will increase over time due to ware, It just requires occasional inspection and adjustment like any other system.

My real issue is the programming end! I am still trying to work out visual basic for the tool changer I built. In addition I have been reading about c and c++. It is a lot to learn.

Jeff K.

Everything is easy once you know how!
jkcab is offline  
 
Reply With Quote
Old 01-22-2018, 09:34 AM   #157
rodw
 
Join Date: Dec 2012
Posts: 1,060
Liked 313 Times on 244 Posts
Likes Given: 161

Default

Personally, I would not bother about backlash compensation for indexing on a rotary table. Its easy to work around just by taking it up before you start machining and always move in the one direction just like we take up backlash on a manual machine. The only time it could possibly be an issue is if you are milling a slot on an arc but if it was too much to bear, you could just add a bit onto the angle you are cutting.

For the budding programmers out there I strongly recommend you skip Visual Basic and go straight to C or C++. If you have an environment that mandates Visual Basic, find another environment. Usually, you can interface to external DLLs etc with either language. C is just so much more efficient when you want to get things done!

If you need a scripting language, then consider Python which is used in LinuxCNC. Google has a week long recorded Python programming course to get you going. What might take 1000 lines in C, you can often get done n Python in under 100.
__________________
RodW
Brisbane, Australia
vehiclemods.net.au
rodw is offline  
 
Reply With Quote
Old 01-22-2018, 01:21 PM   #158
kquiggle
 
Join Date: May 2012
Location: Michigan
Posts: 268
Liked 65 Times on 44 Posts
Likes Given: 1

Default

Jeff -

I think my revised Sketch could be modified without too much work to add backlash correction. With my mechanical set-up, I don't have a good way to test, but if you are interested I can make the modifications and share them with you for testing. Let me know if you are interested.
__________________
For a successful technology, reality must take precedence over public relations, for nature cannot be fooled. - Richard Feynman
Visit my website!: Academy of Lagado
kquiggle is offline  
 
Reply With Quote
Old 01-23-2018, 09:59 PM   #159
tjwal
 
Join Date: Sep 2013
Posts: 37
Liked 5 Times on 3 Posts

Default

Attached is the latest version of my sketch. The sketch allows the table ratio, steps per revolution and the step delay to be entered and stored in EEPROM. I've added a selection to the first menu to select Settings. The settings can be stepped through without changes by just pressing the "#" key. Unless I've broken something, it should work on a UNO.
Attached Files
File Type: zip EEPROM_2118-2.zip (4.0 KB, 38 views)
tjwal is offline  
 
Reply With Quote
Old 01-30-2018, 03:32 PM   #160
johnstij
 
Join Date: Aug 2012
Posts: 2
Default

Hi.
I'm completly new to all this but thought I would have a go. I downloaded bmac2's sketch onto my Arduinno R3. If I change the steps per rev to 200 & Table ratio to 90 ( for my Vertex RT) it works OK. But when I change steps per rev to 400 ( for half stepping) and ratio to 90 I just get "moving " on the LCD for a fraction of a second and Steps = 7380 but no pulses to the stepper motor driver (TB6560 set for 1/2)
Has any one had it working for 400 steps 90 RT ratio?

Thank You
Ian

PS .
I tried tjwal's latest sketch which loads OK but does not respond to key pad.


johnstij is offline  
 
Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Arduino control for a 3 rotary table bmac2 Machine Modifications 101 04-23-2017 01:17 AM
Rotary table Coomba General Engine Discussion 64 08-22-2016 04:34 PM
wtb rotary table toolroom Buy / Sell / Trade / eBay 5 01-04-2016 03:31 PM
My Second Rotary Table,80 mm table. gus Introduction 75 07-29-2014 08:36 PM
Using a rotary table. radfordc General Engine Discussion 10 03-10-2009 12:58 PM



Newest Threads






- Top - Member List