584,833 active members*
5,582 visitors online*
Register for free
Login
IndustryArena Forum > MetalWorking Machines > Benchtop Machines > BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)
Results 1 to 10 of 10
  1. #1
    Join Date
    Oct 2008
    Posts
    7

    BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    Hi,
    I've had my BF20L a couple of months, learning its characteristics. I am now just finishing installing DRO's using an Arduino and tablet as per Yuriy's Toys website and am thinking of the next upgrade.

    I aim to use this basically as a manual mill, but one day in the distant future I would like to consider CNC'ing this but right now I have no rush (or funds) to do so. Also, even after CNC'ing, I would like to maintain some manual functionality those many little jobs that require the hand touch, something like this https://www.youtube.com/watch?v=KpK6xxvjZUs

    My next project is to add a X axis power feed on the left hand side and then I got thinking - why build something that might have to be torn off and thrown away later? If I am one day going to CNC this, then instead of adding a traditional power feed and control box, why not use a stepper motor driven by an Arduino for the power feed? I can easily whip up a simple control panel for inputs to the Arduino, add a stepper driver and a power supply. In this way, all the bracketry and motor will be in place so that come the day when I do CNC it, I may be able to save some time and money. And if I never get to CNC the mill, I can always just use the stepper power feed.

    So the main questions are,
    1. Are there any technical reasons why I shouldn't use a stepper motor for power feed for now?
    2. Rather than designing and building a dog clutch mechanism, can I simply turn off the power to the stepper motor for manual movements? Will it harm the motor or cause excessive drag?
    3. If I fully CNC this with 5mm pitch ballscrews, is it still practical to use the mill manually?



    Thanks in advance for any and all answers.

  2. #2
    Join Date
    Nov 2009
    Posts
    4415

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    Just CNC it.
    Ballscrews are typically much smoother and more consistent and can be set up to have almost no backlash.
    The desire for manual use is only in your mind. The jog functions of your keyboard, shuttle or pendant will allow you to do menial task work,
    A lazy man does it twice.

  3. #3
    Join Date
    Jan 2013
    Posts
    630

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    I concur. Toss the handles. I originally had the same thought to put the handles back on mine when I got it but after using the MDI and Shuttle Pro controller I see no need for handles.

  4. #4
    Join Date
    Dec 2009
    Posts
    1416

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    The reason you hear "just bite the bullet" is that we have all been there. You know how I started? "I want to be able to run it manually and just power feed sometimes with CNC in the future". Once you look at it, you need nearly everything a CNC needs just to get to that power-feed point.

    - Stepper
    - Stepper Driver
    - Screws
    - Nuts
    - Motor Mounts
    - Some kind of controller to send the pulses and interface with you. You are now talking time to build some Arduino contraption to drive it (which is FAR more complicated than you think) and some way to wire this up and enclose it and interface to it.
    - Limit switches to control the ends of the cut.

    Once you have all that you are a PC away from a CNC machine. As for the handles, there are times where I could probably drill a hole real quick faster than to power up the whole system but I sill would have to zero up, position to the work coordinates, and perform the operation. With MDI I can do one-off work 10X faster than I can turning handles so as soon as it becomes two or three holes CNC wins hands down. The only issue is the pucker factor because unlike handles when you type and hit enter.... it's going to go do it right the hell now.

    I use MDI to do stock squaring and other prep-work operations. I have an EBay pendant to position the machine and zero it up. I use programmed CNC to make actual parts. Every time I have thought: "I can just whip this out off-hand." I've regretted it. When I sit down and design and model I think more clearly about the part and why doing this or that may not be the best idea before it's committed to metal.

    Ball screws and manual milling will require some thought. Climb cutting would tend to pull the table right along and could easily get away from you if your not ready for it. I can remove the motor from my X axis and push the table without turning the screw with some effort. If my arms can do it an endmill grabbing metal certainly can.

    There is just so much overlap in the work needed that it largely makes little sense to end up really only forgoing the PC and control software.
    CNC: Making incorrect parts and breaking stuff, faster and with greater precision.

  5. #5
    Join Date
    Jan 2009
    Posts
    484

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    I have mine set up with joypad control. I use it all the time for "manual-ish" machining. I can set my feed speed to the correct setting, then just "drive the mill around" when I want to do something simple. (iE knock a corner off this bracket, or face this thing or drill a hole here, etc.)

    I fourth (Or fifth?) the notion that you won't use a manual hand wheel.

  6. #6
    Join Date
    Nov 2009
    Posts
    4415

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    We are only trying to keep you from wasting your time and money. As was mentioned above, before we knew better this is what we all thought we desired.
    A lazy man does it twice.

  7. #7
    Join Date
    Dec 2013
    Posts
    158

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    Listen to these guys. While my goal was to cnc from the start, I wanted to retain the hand wheels for manual work. I went out of my way to make it work, and it's not worth it. I took the hand wheel off my z-axis, and the cranks off x and y. I'm working on double ball nuts for each axis right now and when I get to the x and y I will be completely removing the hand wheels. I'm even going to be removing the quill function.

    Any operation I thought I would do manually, a quick drill, face something is a lot easier to do with the interface. Set the feed, and jog with the keys. It's just much easier for me.

    Sometimes you have to experience it for yourself, but you might read all of these posts and if it applies go with the advice.

  8. #8
    Join Date
    Jan 2005
    Posts
    1943

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    Quote Originally Posted by joshua43214 View Post
    Hopefully someone here will chime in with an answer. I joined this forum specifically to get answers to the same exact question. After searching quite a bit through this forum, the general consensus seems to be just bite the bullet, cnc the machine, then jog the table using mach. I find this to be a amazingly weird solution.
    Like you, I want to be able to retain manual milling ability on my mill, so I want to be able run my mill at the mill and not have to jump back and forth to my computer. This is a perfect scenario where a cnc machine a much less efficient than a manual machine.
    Like you, I wanted to start with getting a dro set up (I also chose touchdro), adding a power feed to the x-axis, then possibly later upgrade to cnc. I have a PM25MV which is similar to the GO704. So I think we are on the same page.
    The general consensus is what it is for a reason. If the machine is cnc'd then there really is no reason to have handles on the mill. Since you haven't been there yet, I don't expect you to understand, but doing things, even simple things like drilling or making straight cuts is a breeze with MDI. Just think about not having to count a gazillion turns of the handle for one thing. Of course counting turns isn't applicable with a DRO, but I now wouldn't use the handles on my mill if it had them.

    Quote Originally Posted by joshua43214 View Post
    After researching this whole idea, I have come to realize that just about everything posted on the net about home cnc is obsolete. People are still debating the merits of closed loop systems, which I find seriously bizarre now that hybrid steppers are cheap and plentiful.
    I fail to see what a hybrid stepper has to do with the closed vs open loop. A hybrid stepper is still open loop. Nothing has changed there, unless you confusing the drivers available to close the loop to a stepper and referring to those systems as "hybrid steppers". To be clear a Hybrid stepper motor is just a stepper motor. Unless talking about a closed loop stepper system, a conventional stepper system can still lose steps if not set up properly, or if its maximum torque limit is exceeded.

    Quote Originally Posted by joshua43214 View Post
    Here are a few of my thoughts.
    Ball screws will make the mill less usable as a manual mill because the pitch is so coarse, sticking with factory screws with low lash adjusters is probably better. As near as I can tell ball screws are so popular with home cnc because they make open loop steppers viable. The cost of using a closed loop stepper system is about the same as using an open loop stepper plus ball screw. I am not convinced that a ball screw is required. Now the issue for me is that the current market for closed loop steppers puts the encoder on the back of the motor, this is a step up from open loop, but still has a ton of problems.
    You really want the encoder to be reading the position of the table. Enter the DRO. There is no reason why the dro scales can not be used as the feedback for motion control. This means you can use a conventional hybrid stepper motor, then feed the table position from the dro back into the controller. I asked Yuriy about this, and he said that both the dro and cnc could use the same signal from the scales, but would require a "high impedance input," whatever that means. I have no doubt that it is simple to safely divide the signal.
    The above demonstrates your lack of knowledge regarding closed loop systems and ballscrews.

    Leadscrews- Ballscrews are not used to "make open loop steppers viable". They are used for lower friction, lower backlash, less wear, and higher speed capability.If they were only for making open loop steppers viable then why would they be used on closed loop machines? They are used for the reasons I specified. An Acme screw does fine in a manual setting, but still suffers from wear and backlash, needing periodic adjustment. Use them on an active CNC machine and the periodic adjustment becomes a real pain. Ballscrews have virtually no adjustment after initial install. Sure you can adjust the ACME nut and eliminate backlash, but only to a point and then you just increase friction and hence wear and then need more frequent adjustment. As far as making open loop viable, that is hogwash as well as there have been countless conversions using stock ACME screws and open loop steppers. It just requires bigger motors, and/or slower speeds due to the increased system friction as to not exceed the performance capabilities of the motor.

    Closed loop feedback - You mention just using DRO scales to close the loop for motion control. Won't work. The DRO scales are at the complete other end of the system as a whole compared to the motor. All mechanical systems have flexibility to some degree, and because of that flexibility you input at one end (Motor) and get a response at the other end (DRO) that is affected by motor couplings, way drag (stiction), screw backlash, etc. Because of this, what you wind up with is the motor hunting all over the place trying to make everything happy. How do you combat this? Well, you put the encoder directly on the motor and everything downstream just is what it is. This method works very very well for a bench type mill using closed loop feedback to just the motor There are some systems that use a rotary encoder on the motor along with a linear (DRO type) encoder, but the rotary is the main part of the feedback loop. One thing that can be done is to incorporate feedback from a linear scale that throws an error if commanded position differs from actual position, but this only stops machine motion if encountered. It won't make up for this difference and is just a check.

    Quote Originally Posted by joshua43214 View Post
    So what this means for us is that we can use TouchDro and regular hybrid steppers.
    We need a way to manually control the stepper speed for a power feed. A circuit that automatically prevents both the powerfeed and cnc being used simultaneously (should also be simple). A driver that will accept feedback from the dro scales, and possibly a microprocessor to ensure that the cnc read rate from the scales is not interfering with the dro read rate.

    BTW, I spent hours looking at scales before I finally found this set up
    Wholesale Product Snapshot Product name is High precision 0.001mm mill and lathe DRO kit 3 axis digital readout and 3 pcs 1um 0.001mm linear scale
    This is a 3 axis 1um glass scale dro system for about the same cost as purchasing just two class scales from DroPro (who have the best price for scales). Since I plan on using TouchDro, it does not matter if the display is junk since I am after the scales. In fact, the system is only marginally more than the better Igaging scales, and the Igaging scales are +/-.001" per 6" (pretty crappy).
    I looked at hundred if not thousands of motors before settling on these
    http://www.automationtechnologiesinc...flat-570-oz-in
    This motor has a 2.5mH inductance, which equates to an optimal voltage of 80v, and a convincing 5A current draw. Nearly every motor I looked at has a far higher inductance, meaning that you will not get optimal voltage with out an industrial driver. This also happens to the same motor they recommend for x and y axis in there GO704 cnc kit.

    I am trying to figure out the cheapest solution for running the stepper as a power feed.
    Something along these lines is probably what I will go with
    Stepper Motor Driver Controller Speed Regulator Pulse Signal Generator Module | eBay
    Ideally, the speed controller should have a pot for adjusting duty cycle as well as frequency so that the motor can be made to start/stop smoothly.
    Lastly, I am thinking a transistor between the motor and the controller for when the mill is used manually. Set it up so the transistor closes when power is applied to the motor, but is open otherwise. This way any voltage made by the motor when turning the dials by hand will not go anywhere (or to ground).

    Let me know your thoughts, maybe we can figure something out together and get some useful input from the community.
    -Josh
    As far as controlling a stepper for a power-feed type setup, I would likely use a standard stepper driver connected to an arduino with a rotary potentiometer for speed control, and a SPDT spring loaded switch for direction. You would have to program the arduino to output the step pulses to the stepper driver, and would need some type of ramp-up/ramp-dn for the step pulses. Shouldn't be terribly difficult to program an arduino for that type of application. I actually made something similar for a video camera panning system a while back. The stepper controller you linked may work, but I doubt that it has ramp-up/ramp-dn for the step pulses which may require starting with the pot at low speed and advancing it as motion starts.

    In closing, you are thinking exactly the same way I did BEFORE I really did anything with this CNC stuff, and the same way many of the rest of the folks here thought as well.

  9. #9
    Join Date
    Sep 2015
    Posts
    2

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    Quote Originally Posted by 109jb View Post
    The general consensus is what it is for a reason. If the machine is cnc'd then there really is no reason to have handles on the mill. Since you haven't been there yet, I don't expect you to understand, but doing things, even simple things like drilling or making straight cuts is a breeze with MDI. Just think about not having to count a gazillion turns of the handle for one thing. Of course counting turns isn't applicable with a DRO, but I now wouldn't use the handles on my mill if it had them.


    I fail to see what a hybrid stepper has to do with the closed vs open loop. A hybrid stepper is still open loop. Nothing has changed there, unless you confusing the drivers available to close the loop to a stepper and referring to those systems as "hybrid steppers". To be clear a Hybrid stepper motor is just a stepper motor. Unless talking about a closed loop stepper system, a conventional stepper system can still lose steps if not set up properly, or if its maximum torque limit is exceeded.


    The above demonstrates your lack of knowledge regarding closed loop systems and ballscrews.

    Leadscrews- Ballscrews are not used to "make open loop steppers viable". They are used for lower friction, lower backlash, less wear, and higher speed capability.If they were only for making open loop steppers viable then why would they be used on closed loop machines? They are used for the reasons I specified. An Acme screw does fine in a manual setting, but still suffers from wear and backlash, needing periodic adjustment. Use them on an active CNC machine and the periodic adjustment becomes a real pain. Ballscrews have virtually no adjustment after initial install. Sure you can adjust the ACME nut and eliminate backlash, but only to a point and then you just increase friction and hence wear and then need more frequent adjustment. As far as making open loop viable, that is hogwash as well as there have been countless conversions using stock ACME screws and open loop steppers. It just requires bigger motors, and/or slower speeds due to the increased system friction as to not exceed the performance capabilities of the motor.

    Closed loop feedback - You mention just using DRO scales to close the loop for motion control. Won't work. The DRO scales are at the complete other end of the system as a whole compared to the motor. All mechanical systems have flexibility to some degree, and because of that flexibility you input at one end (Motor) and get a response at the other end (DRO) that is affected by motor couplings, way drag (stiction), screw backlash, etc. Because of this, what you wind up with is the motor hunting all over the place trying to make everything happy. How do you combat this? Well, you put the encoder directly on the motor and everything downstream just is what it is. This method works very very well for a bench type mill using closed loop feedback to just the motor There are some systems that use a rotary encoder on the motor along with a linear (DRO type) encoder, but the rotary is the main part of the feedback loop. One thing that can be done is to incorporate feedback from a linear scale that throws an error if commanded position differs from actual position, but this only stops machine motion if encountered. It won't make up for this difference and is just a check.



    As far as controlling a stepper for a power-feed type setup, I would likely use a standard stepper driver connected to an arduino with a rotary potentiometer for speed control, and a SPDT spring loaded switch for direction. You would have to program the arduino to output the step pulses to the stepper driver, and would need some type of ramp-up/ramp-dn for the step pulses. Shouldn't be terribly difficult to program an arduino for that type of application. I actually made something similar for a video camera panning system a while back. The stepper controller you linked may work, but I doubt that it has ramp-up/ramp-dn for the step pulses which may require starting with the pot at low speed and advancing it as motion starts.

    In closing, you are thinking exactly the same way I did BEFORE I really did anything with this CNC stuff, and the same way many of the rest of the folks here thought as well.
    Thanks for the long reply, you do make some good points. I am not entirely convinced though.
    I work in a research capacity, everyone likes to toss around things like "the consensus among scientists..." All consensus means is that most of us agree, and we all try really hard to prove consensus wrong (it means you discovered something novel and get to publish in Science or Nature). My experience with consensus in the real world is less positive, for example not to long ago the consensus among Americans was that women should not be allowed to participate in government. So I listen to the arguments to cnc my machine and toss the hand wheels, I do pay attention to the argument - I am just not convinced that it is relevant to me.
    Is it really that hard to believe that some of us regard ourselves as craftsmen and prefer to operate machines by hand? I am a semi-professional furniture maker, I have a shop full of equipment that "saves" time and is "easier" and "faster." For some reason though, I still reach for a mallet and chisel to make mortises instead of using the mortising machine, and I still take the last few thousands off a board with a smooth plane. Even in the metal shop (which is just a hobby for me), I grab a graver and cut parts free hand on the lathe.

    I was not confusing hybrid steppers with "closed loop" steppers, I just was not clear enough. I did mean hybrid steppers with attached rotary encoders.
    I did misspeak some about open vs. closed loop. You are correct that using only the scales for feedback results in hunting, you are incorrect that the scales only show error or fault the system. This belief seems to come from one of Mach's major shortcomings. To fully close the loop, a rotary encoder is used at the motor, and a linear encoder is used at the machine head in a dual loop. There are different methods of implementation, but they all split the PID elements up. Most commonly the PI is used at the rotary encoder, and the D is used for position. Either the motor is run at a set speed, and braked when approaching position, or the motor is commanded to rotate a set amount like a stepper, and has it's position corrected by the linear encoder (this correction can take place at the start of motion, the end of motion, both, or continuously). This can be gimped together using an arduino or similar mcu, you control the D with the arduino and use the driver to control PI, it works from what I have seen but is probably not as effective as it could be. Mesa boards fully support dual loop implementation though, and they even sell cards that are specifically for collecting up all the encoder signals. Galil sells plug and go dual loop systems, their system is very expensive for a hobbyist, but it does continuous correction.

    I am just trying to find a simple and inexpensive solution. I can write pretty good Python code, but I suck at writing C code, so it would be nice to have a ready made set up. I wrote a PID script last week to see how hard it was, too only a few minutes and was only 10ish lines of code. I am sure I could turn it into C code for a Mesa board or an aruduino, but I would rather not get into that at all. The Galil boards are just really expensive. Rogersmachine sells a logic board that does closed loop, runs Geckos, has inputs to run the machine manually, and provides DRO function. It seems to be built around Mach3 compatibility though, so it probably will not work - I havn't gotten around to emailing them yet.

    -Josh

  10. #10
    Join Date
    Jan 2005
    Posts
    1943

    Re: BF20L / G0704 X Axis Power Feed Using Stepper Motor (+ CNC in the future)

    You are then confused as to what a "Hybrid Stepper Motor" is. it is a hybrid stepper motor because it is a hybrid of a permanent magnet motor and a variable reluctance motor, not because it has an encoder attached to it.

    I did not say you can't use a linear encoder in a closed loop system (dual loop). As a matter of fact, I mentioned it. What I was discussing was from your post it sounded as if the linear encoder was all you were going to use. The part I discussed about using a linear encoder to fault if following error is detected was an additional use and can be applied to a system using an open loop to drive a stepper.Frankly, if using steppers, this fault detection is really all you would ever need. For most hobby use machines, open loop is just fine and has been proven to work great.

Similar Threads

  1. Replies: 8
    Last Post: 07-28-2015, 08:38 PM
  2. G0704 Power Feed Direction Switch
    By mikej38 in forum Benchtop Machines
    Replies: 0
    Last Post: 07-28-2015, 01:47 PM
  3. Stepper motor power feed question
    By Pinresto in forum Stepper Motors / Drives
    Replies: 1
    Last Post: 04-02-2015, 07:16 PM
  4. Grizzly G0704 - Power Feed
    By tkollen in forum Benchtop Machines
    Replies: 2
    Last Post: 06-25-2013, 03:12 PM
  5. Stepper motor to simple power feed?
    By machining fool in forum Stepper Motors / Drives
    Replies: 2
    Last Post: 04-13-2008, 04:08 AM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •