|
|
Line 1: |
Line 1: |
− | The mechanical kit includes everything you need to build the machine,
| + | == eShapeoko == |
− | except the motors and electronics. The kit includes belts, belt pulleys,
| |
− | and all hardware to attach the motors.
| |
| | | |
− | To build a complete, working machine, you will need
| + | The eShapeoko is an affordable three-axis desktop CNC milling machine. It is a clone of Edward Ford's tremendously successful Shapeoko, with some changes. Much of the low-cost aspect we owe to Bart Dring, who invented MakerSlide, a simple and inexpensive linear bearing system that doubles as structural support. |
− | stepper motors,
| |
− | a controller, | |
− | stepper motor drivers (may be built into the controller),
| |
− | a power supply,
| |
− | cables,
| |
− | a spindle, | |
− | tools,
| |
− | a waste board.
| |
− | Optionally, you could add:
| |
− | a fan (for the motor drivers),
| |
− | an emergency stop button,
| |
− | an enclosure for the electronics (with connectors and buttons),
| |
− | homing and limit switches.
| |
| | | |
− | TODO add product links for all items mentioned.
| + | eShapeoko is sold in kit form. For now, only a [http://store.amberspyglass.co.uk/eshapeoko-mechanical-kit.html Mechanical Kit] is available. In addition to that, you need four stepper motors, a power supply, and the electronics to drive the motors. |
| | | |
− | TODO present some alternatives.
| + | == Resources == |
| | | |
− | == Example machine ==
| + | [[V-wheel and Idler Assembly Instructions]] |
| | | |
− | There are many options at each stage, and this page will try to guide you
| + | [[EShapeoko FAQ]] |
− | through the choices. As an introduction to the sometimes bewildering array
| |
− | of choices, we will illustrate with an example: a single, complete configuration
| |
− | using our preferred choices.
| |
| | | |
− | Our example is a machine with a 750 mm X axis and 500 mm Y axis,
| + | [[EShapeoko 1.2 Assembly Instructions]] |
− | with NEMA23 motors on X and Y, and a NEMA17 motor on the Z axis.
| |
− | This machine will have just over 585 mm of X travel, 335 mm of Y travel,
| |
− | and 100 mm of Z travel.
| |
| | | |
− | We chose the X axis longer than the Y axis
| + | [http://blog.amberspyglass.co.uk/2014/06/15/eshapeoko-packing-list-2/eshapeoko-v1-2-packing-list/ EShapeoko 1.2 Packing List] |
− | because a "wide" machine open at the front and rear gives better access
| |
− | to the work area. This is at a slight expense in rigidity: the
| |
− | 500 mm × 750 mm machine, which most people prefer, would have had
| |
− | a shorter (thus more rigid) X axis, and mid-span supports for the Y rails.
| |
| | | |
− | == Stepper motors ==
| + | [[EShapeoko Complete Kit]] |
| | | |
− | For the X and Y axes, we chose three 0.9° per step (400 step per revolution)
| + | [[Camera Slider Mechanical Kit Parts List]] |
− | NEMA23 motors with a current rating of 1.7 A. There's one motor on the X axis,
| |
− | and two of them on the Y axis. These motors are 51 mm long (not counting the
| |
− | shaft) and weigh about 560 g each. Like most NEMA23 motors, they have a 6.35 mm
| |
− | (1/4 inch) shaft. They have a holding torque of 9000 gf·cm.
| |
| | | |
− | To get an idea of what a holding torque of 9000 gf·cm means,
| + | [[Camera Slider Assembly Instructions]] |
− | [[#Stepper Motor Holding Torque|read here]]. | |
| | | |
− | For the Z axis, we chose an 1.8° per step (200 step per revolution)
| + | [[Motor Drivers]] (inlcuding GAUPS) |
− | NEMA17 motor, also with a current rating of 1.7 A. The motor is 48 mm long,
| |
− | weighs about 360 g, and has a holding torque of 5200 gf·cm. It's very
| |
− | powerful for a NEMA17 motor, and enough for the Z axis in most cases.
| |
| | | |
− | == Controller ==
| + | [https://github.com/amberspyglass/parts Part Drawings] (including eShapeoko 1.2 and the camera slider) |
| | | |
− | We chose the most popular controller for the Shapeoko and eShapeoko:
| + | Some information about [[Stepper Motors]] |
− | an Arduino Uno, running the GRBL software. GRBL is a G-code interpreter:
| |
− | it receives G-code and emits step and direction signals for the motor drivers.
| |
− | GRBL can control three axes; our machine has four motors, but the two Y motors
| |
− | always move together, so they share one set of control signals.
| |
| | | |
− | == Stepper Motor Drivers == | + | === Older Kits === |
| | | |
− | Because our controller is an Arduino, the drivers will be on an
| + | [[EShapeoko 1.0 and 1.1 Assembly Instructions]] |
− | Arduino shield. We chose the GAUPS, a shield that takes Pololu-compatible
| |
− | stepper driver modules (GAUPS stands for '''G'''RBL-compatible '''A'''rduino
| |
− | '''U'''no-compatible '''P'''ololu-compatible '''S'''hield). We don't
| |
− | plan to use a supply voltage higher than 24 V, so we got the standard
| |
− | version of the GAUPS, not the 40 V version.
| |
| | | |
− | Pololu driver modules are very convenient because they are relatively
| + | [[EShapeoko 1.0 and 1.1 Dual-X Assembly Notes]] |
− | inexpensive, easily replaceable if something goes wrong, and available
| |
− | with a choice of driver chips. Their main disadvantage is that, because of
| |
− | the small module size, their cooling is not as good as it could be, so they
| |
− | need heatsinks and/or a fan.
| |
| | | |
− | The GAUPS comes as a kit that requires basic soldering skills to assemble.
| + | [[EShapeoko 1.0 and 1.1 NEMA23 upgrades]] |
− | All components are through-hole, and none are sensitive to static discharge,
| |
− | so it's easy. There are clear step-by-step instructions.
| |
| | | |
− | For this machine, we chose four Pololu DRV8825 high-current driver modules
| + | [http://blog.amberspyglass.co.uk/2013/12/20/eshapeoko-packing-list/eshapeoko-v1-1-packing-list/ EShapeoko 1.1 Packing List] |
− | (the purple ones). They are the most expensive of the Pololu drivers, but
| |
− | they have the highest current capability, and the best thermal
| |
− | characteristics too. The A4988 black edition driver module is cheaper,
| |
− | and would have worked very well too. Each driver comes with two 8-pin
| |
− | male headers that you need to solder on. These are what plugs into the
| |
− | shield. We opted to replace these with taller headers, for better airflow
| |
− | under the modules.
| |
| | | |
− | The driver chips generate a lot of heat, and they are designed to sink this
| + | [[EShapeoko 1.0 and 1.1 Mechanical Kit Parts List]] |
− | heat into the bottom layer of the board. We added two small aluminium
| |
− | heatsinks for each driver, one on top of the driver chip and one on the
| |
− | bottom of the module. The one on the bottom is more effective than the
| |
− | one on the top.
| |
| | | |
− | == Power Supply ==
| + | We are adding more information here every now and then. In the meantime, a wealth of information and generous help await at the [http://shapeoko.com/forum/ Shapeoko forum]. |
| | | |
− | We chose a 24 V 5 A (120 W) power supply, which can be had as a nice,
| + | The eShapeoko is based on the [http://shapeoko.com Shapeoko] by Edward Ford, and open-source project. The eShapeoko is designed by Cătălin Voinescu. It is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported license. |
− | completely enclosed laptop-type brick. We don't have to worry about
| |
− | exposed live parts, nor about chips getting in. It has just enough power
| |
− | for our motors. We used a barrel jack to screw terminal adapter to make
| |
− | it easier to connect the supply to the GAUPS.
| |
− | | |
− | == Fan ==
| |
− | | |
− | As mentioned above, it would be a good idea to have a fan to keep the
| |
− | stepper drivers from overheating and going into thermal shutdown (which
| |
− | keeps the drivers safe, but ruins the job). Not a lot of airflow is
| |
− | needed, especially if directed both under and over the driver modules,
| |
− | from a side. Our power supply is 24 V, but 12 V DC brushless fans are
| |
− | ubiquitous and cheap because they are used in PCs, so we got a small
| |
− | DC-DC step-down ("buck") converter to get the 12 V for the fan.
| |
− | (Even if you have two identical fans, it's a bad idea to connect them
| |
− | in series.)
| |
− | | |
− | == Cables ==
| |
− | | |
− | The stepper motors come with wires that aren't nearly long enough. | |
− | We got very nice (if a bit stiff) 18 AWG (0.82 mm<sup>2</sup>) 4-core shielded cable.
| |
− | | |
− | Estimating the cable requirement can be very tricky, and depends a lot
| |
− | on how the cable is routed. For this machine, we need about 8 m of
| |
− | cable for the four steppers if we want to place the controller half a
| |
− | metre away from the machine, to one side. The Y motor nearest the
| |
− | controller will need the shortest cable, and the Z motor will need the
| |
− | longest one.
| |
− | | |
− | We used 3 A terminal blocks to connect the cable to the
| |
− | motors, and zip ties to secure the terminal blocks and the cable to the
| |
− | machine. We'd actually prefer to solder the cable and use heat shrink
| |
− | tubing to insulate the joints, but it is more difficult to solder wires
| |
− | well than it is to solder a GAUPS kit, so we chose the easier method.
| |
− | Plus, a broken or intermittent connection can destroy a motor driver.
| |
− | The drivers are incredibly robust otherwise, but can be easily damaged by
| |
− | their load being connected or disconnected while powered on, so it's
| |
− | important to have good connection to the motors. We need four 4-position
| |
− | terminal blocks, so we got two 12-position blocks, and cut them up.
| |
− | | |
− | At the driver end, we wired the stepper cables directly into the GAUPS
| |
− | screw terminals.
| |
− | | |
− | == Spindle ==
| |
− | | |
− | We started with a cheap rotary tool (a Dremel clone). They usually come
| |
− | with literally a hundred and one accessories — all largely useless
| |
− | to us. Keep the wrench, though, you'll need it to tighten the collet.
| |
− | | |
− | You may want to upgrade the spindle soon, though. For tougher jobs,
| |
− | and general use when not bothered by noise, the Makita RT0700C is an
| |
− | excellent choice, except for the fact that a 3.175 mm (1/8 in) collet
| |
− | is not easily available. You can buy one from the US, or use a 1/4 inch
| |
− | to 1/8 inch adapter. For quiet, delicate jobs, a small DC spindle is
| |
− | very nice.
| |
− | | |
− | == Tools ==
| |
− | | |
− | We got a basic 3.175 mm (1/8 in) straight two-flute center-cutting
| |
− | solid carbide endmill. It's the closest one can get to a universal
| |
− | endmill. It's
| |
− | great with wood, plywood and MDF, gives good results with some plastics,
| |
− | and can even be used — carefully — with aluminium. It's
| |
− | just the right size for a standard rotary tool, and it's robust enough
| |
− | not to break with the tiniest mistake. Buy more than one, though.
| |
− | | |
− | == Protection ==
| |
− | | |
− | Eye protection — for everyone in the room — is required
| |
− | when using the milling machine.
| |
− | Broken endmills can fly at high velocity in any direction.
| |
− | Hearing protection is a very good idea. Do not wear
| |
− | loose clothing, and keep long hair tied up. Avoid wearing gloves
| |
− | (unless they're a type designed to tear off easily if caught in the
| |
− | spindle).
| |
− | | |
− | Your safety, and that of the people around you, is your
| |
− | responsibility.
| |
− | | |
− | == Waste Board ==
| |
− | | |
− | We could have got a piece of MDF from the offcut bin at the hardware
| |
− | store, but Ikea had a shelf for their 100 cm PAX wardrobes in the
| |
− | bargain corner. It's about 96 cm wide and 58 cm deep, which is a bit
| |
− | too wide for our machine, but it was cheap and flat.
| |
− | | |
− | We drilled three holes through each of the front and rear pieces of
| |
− | aluminium extrusion that connect the end plates together, and used
| |
− | wood screws to screw the machine to the board. (Neat freaks can drill
| |
− | and counter-bore from the bottom of the board, and use M5 screws and
| |
− | T-slot insertion nuts to attach the machine to the board.)
| |
− | | |
− | We screwed a smaller piece of MDF on top of the shelf, between the
| |
− | extrusions, to serve as an easily replaceable waste board. We plan
| |
− | to mill some holes in this board, place some tee nuts in them,
| |
− | turn it over, and have a nice hold-down table. But, for now, we use
| |
− | wood screws to hold the parts down, and replace the MDF when it gets
| |
− | too beaten up.
| |
− | | |
− | == Limit Switches ==
| |
− | | |
− | We installed six limit switches:
| |
− | * two on the X axis, on the front X motor plate;
| |
− | * two on the Y axis, on the Y motor plate closest to the controller;
| |
− | * two on the Z axis, using the eShapeoko Z limit switch holder.
| |
− | | |
− | We wired the switches using strips of ordinary 1.27 mm pitch ribbon
| |
− | cable. They are soldered to the switch terminals, and the joints
| |
− | insulated and reinforced with heat-shrink tubing. We opted to wire
| |
− | all three terminals of each switch, each switch with its own wires,
| |
− | because cable is cheap but re-wiring is time-consuming, and some
| |
− | controllers need normally open switches, some normally closed (and
| |
− | some can deal with either); our controller (GRBL) shares one input
| |
− | for the two switches on each axis, but other controllers (TinyG)
| |
− | have separate minimum and maximum limit inputs.
| |
− | | |
− | One switch on each axis does double-duty as a homing switch. Having
| |
− | a repeatable home position is incredibly useful when changing tools
| |
− | during a job, and when using fixtures and work coordinate systems.
| |
− | By default, home is at the end of travel in the positive direction
| |
− | of each axis, that is, right side (X), rear (Y), and top (Z). We
| |
− | could have installed just those three switches.
| |
− | | |
− | We could have installed two more limit switches on the Y axis, on
| |
− | the other motor plate. GRBL can't make use of them, but other
| |
− | controller software (LinuxCNC) can auto-square the gantry using
| |
− | them.
| |
− | | |
− | == Notes and Details ==
| |
− | | |
− | === Stepper Motor Holding Torque ===
| |
− | | |
− | The NEMA23 motors we chose have a holding torque of 9000 gf·cm — | |
− | that is,
| |
− | 0.88 N·m in SI units, or 125 oz·in in customary (US) units.
| |
− | | |
− | ==== How much torque ''is'' that? ====
| |
− | With the supplied 18-tooth MXL pulleys,
| |
− | one motor can hold a carriage against a force of about 15.5 kgf applied to
| |
− | it. This is at standstill, with the motor supplied with its rated current.
| |
− | The torque remains almost constant at low speed, but after a certain point,
| |
− | as the speed increases, the torque decreases almost linearly:
| |
− | at half the maximum speed, the torque will be about half the holding torque.
| |
− | | |
− | ==== How much torque do you need? ====
| |
− | The force the motor applies to the carriage must be enough to counteract
| |
− | all friction, the inertia of the moving parts (when accelerating), and the
| |
− | cutting forces on the tool (when milling). Even though 15.5 kgf is more
| |
− | than enough for this type of machine (and more than MXL belt is normally
| |
− | rated for), having a motor that powerful is still useful at higher speed,
| |
− | when its torque decreases. It is the available torque that limits the
| |
− | traverse acceleration and speed, the maximum cutting force achievable, as
| |
− | well as the feed rate for a given cutting force. That said, there's no
| |
− | point in going for a much higher torque than that. The motors become too
| |
− | big and too heavy for this type of machine.
| |
− | | |
− | ==== What determines motor performance? ====
| |
− | * The type of motor. Generally, all things being equal,
| |
− | ** 1.8° motors are faster and more powerful than 0.9° motors;
| |
− | ** smaller motors are faster but less powerful than bigger motors;
| |
− | ** motors with lower inductance (higher rated current/lower rated voltage) tend to be faster, and often more powerful too.
| |
− | * The driver:
| |
− | ** more current capability can move the motors faster;
| |
− | ** some advanced drivers use more complex techniques that can improve motor performance.
| |
− | * The controller:
| |
− | ** more advanced movement algorithms may allow the motors to go faster, or at least use their acceleration capability more effectively;
| |
− | ** a slow processor may limit the maximum speed.
| |
− | * The power supply voltage. Using a higher supply voltage:
| |
− | ** can allow the motors to move faster;
| |
− | ** can increase torque at medium and high speed (but makes no difference at slow speeds);
| |
− | ** may decrease the accuracy of microstepping.
| |
− | | |
− | ==== Does microstepping reduce torque? ====
| |
− | No, it doesn't, but it's a common misconception.
| |
− | TO DO: add link to the Shapeoko forum, where I explain this at length.
| |
− | | |
− | ==== How did we get the 15.5 kgf figure? ====
| |
− | Belt and pulley '''pitch''':
| |
− | : MXL = 0.08 in = 2.032 mm
| |
− | '''Pitch circumference''' of 18-tooth pulley:
| |
− | : 2.032 mm/tooth × 18 tooth = 36.576 mm
| |
− | '''Pitch radius''' of 18-tooth pulley, which is also the arm of the force the motor applies to the carriage:
| |
− | : 36.576 mm / 2π ≅ 5.82 mm
| |
− | Motor '''holding torque''':
| |
− | : 9000 gf·cm = 90 kgf·mm
| |
− | '''Force''' exerted on carriage:
| |
− | : 90 kgf·mm / 5.82 mm ≅ 15.46 kgf
| |