Microcontroller

A CNC machine needs to be able to take instructions to move to specific coordinates, and convert them into moment-by-moment, movement-by-movement signals for the Stepper Motors by sending electronic signals through the Stepper Drivers. Some systems such as Mach3 will use a full-sized computer instead.[1]

The typical choice for the ShapeOko is an Arduino, an inexpensive microcontroller board which provides a very good price for the needed precision.

Note that the ShapeOko 3 uses the Carbide Motion Machine Control Board, an all-in-one unit which combines a micro-controller, stepper shield and stepper drivers into a single unit.

Cooling

Stepper Shield

In addition to the microcontroller, the machine needs a system to take in the voltage necessary to move the motors and send it to the Stepper Motors.

Since, the gShield (formerly known as GrblShield) has become the standard choice --- this change was made to reduce the cost of the system and match its specifications with the machine's capabilities. The gShield directly incorporates stepper drivers onto the board.

Stepper Drivers

It is necessary to take the signals from the Microcontroller and use it to apply the voltages from the power supply to the Stepper Motors --- the Stepper Drivers accomplish this. They may be soldered directly to the Stepper Shield, or installed into sockets, enabling replacement in the event of one being blown.

Since they simply manage electricity, they don't wear out, but are vulnerable to electro-static discharge (ESD).

Issues

Power Supply

Any power supply that can produce 4.2A - 6A at 18-30v. At a very minimum, you need a 90 W power supply for four NEMA17 motors driven from a gShield with three stepper motor drivers (with the two Y motors in parallel on one driver). For example, a 24 V 3.75 A supply will work, but the ideal supply would have a little more headroom -- say, 24 V 4.2 A (100 W). You'll need 100-120 W to make the most of a four-driver board, such as the buildlog.net shield or one of its clones -- for example, a 24 V 5 A supply. If you have NEMA23 motors, how much power you need and how much your gShield can get out of them depends on their impedance and rated current. You need 150-200 W for four small (50 mm) NEMA23 motors rated 1.5 to 2 A. With lower impedance motors (such as the 2.8 A motors sold by Inventables as of July 2014), the gShield won't be able to achieve the rated current, so a smaller supply will do (say, 120-150 W). It may be a good idea to connect the Y motors in series in this case, or to use a four-driver shield.[2]

Note: We have successfully used 18V and 24v power supplies between 3.75A and 6A. Other power supplies may work. If you are unsure about anything related to powering the machine: STOP AND FIND A QUALIFIED PERSON TO ASSIST YOU!

I used an old power cord and connected the Load, Neutral, and Ground to the black, white, and green wires.

The COM connection on the power supply should be connected to the - on the driver shield. The +V connects to the + on the driver shield.

Stepper Motors

The ShapeOko requires at least three stepper motors, one for each axis (Dual-drive Y-Axis is a popular upgrade and is now standard on the ShapeOko 2). The 58 oz-in motors listed are sufficient to drive the Shapeoko, but larger motors can be used. Forum Discussion. See Stepper Motors for more detail.

Ventilation and Cooling

Two 12 volts DC fans in series can be connected directly to the power supply to cool everything as each one will have a voltage drop of around 12 volts. There has been some discussion in the Forums indicating this should not be done. Please research and consider the electrical aspects before doing this.

Grounding

Ground Loops

Ground loops are almost always a problem when they arise. The most common type of ground loop encountered is when two pieces of audio equipment are plugged into separate AC outlets and are connected between each other with a signal wire. The ground loop will manifest itself as a hum at 60hz (in the US), or one of the harmonics of that frequency. Ground loops in this case are caused by the fact that the audio equipment is plugged into two separate outlets (that may or may not be on the same circuit). The two outlets will have different paths to earth ground, different either in distance travelled or route taken, and as such will have slightly different potential charges. Because the equipment has different electrical potentials on the ground plane the signal wire will now act as a conductor of the difference in potential (along with the signal). For audio equipment that interprets the difference between the ground and signal conductor an oscillating ground loop signal will alter the interpreted signal and cause hum.

It should be noted that the differences in earth ground potential is one source of ground loops, another source of problems is inductance from electrical fields. In the presence of an electrical field a piece of equipment will induct an electrical charge that can cause the ground plane to have a different potential than another piece of equipment connected via a signal wire, hence a ground loop.

The final source of ground loops is leakage from hot electrical sources to ground. You’ll see this in poorly designed circuits that don’t properly separate high and low voltage traces on a PCB. Also, if there is an outright failure in a device and voltage is sunk to ground, a ground loop will be created. However it should be noted that in the last scenario of an equipment failure, the ground plane is fulfilling its purpose of safely dissipating voltage to earth, and this situation should be immediately resolved.

Shapeoko Applications

Using the audio equipment example as a basis for understanding a ground loop, it becomes easier to understand how a ground loop can be applied to a Shapeoko 2 installation. If the computer ground plane has a different potential than the ground plane of the Arduino then current will flow along the shield of the USB cable and potentially cause damage or undesired operation.

In the case of the Shapeoko 2 both ends of the USB connection are attached to devices that are potentially very sensitive to voltage differences.

Electrically, the Shapeoko 3 has four components that are insulated by the V-wheels: the frame (including the Y rails), the gantry (Y carriages and X rail), the X carriage, and the Z axis. Ideally, if static electricity is a problem -- as it tends to be during the cold season and near vacuum cleaners --, you'd connect all these four parts together.[4]

Solutions

The way to resolve ground loops depends on the source.

If the ground loop is caused by inductance from an electrical field then the source of the field or the inducting equipment should be moved. For instance, if signal wire is running adjacent to a transformer, try moving the signal wire to another location. Also, if at all possible, use shielded twisted pair (STP) as opposed to unshielded twisted pair (UTP) or untwisted wire.

Another highly effective way to resolve ground loops is to isolate the ground planes that are connecting through the signal wire. In the case of USB signal wire this is accomplished via a USB Ground Loop Isolator. A device of this type completely isolates the electrical system on either side of the device via the use of components called opto-isolators. Opto-isolators are devices that allow for the transmission of a signal without the conduction of current.[5]

Wire Length

One concern for wiring is resistance. This is especially notable on the Y-axis where having two different lengths can be a concern since the impedance of the motors is very low, compared to the loads, so an extra length of wire makes a significant difference in how the current gets split between the two motors.[6]

USB Disconnection

practice good cable management and ensure that each end of the USB cable is held fixed so that the plugged-in USB connectors are not moving.[9]

Locate the USB cable away from all the other cables (motors, power supply, mains cables); esp. the router power cord[10]

Power the machine and the computer controlling it from the same power strip; (some people have had luck running laptops on battery mode[11])

Power the machine from a circuit without noisy loads. Particularly bad are refrigerators and air-conditioning units (Seemingly random drops are often a compressor turning off somewhere else ... ), but anything with an electric motor can be a problem too (spindle, vacuum cleaner). Try to plug the spindle in a different outlet -- on a different circuit, if you can. It may be necessary to test your electrical service — in at least one instance, it was necessary to install a dedicated line.[12]

Use a well-built, properly shielded USB cable (as short as feasible). Ensure that the cable isn't being jostled or disturbed --- put a weight on the cable near the computer connection, arrange the USB wire at the machine so that any machine motion is minimized and won't alter the cable attachment. Alternately, replace the USB connection: https://www.sparkfun.com/products/9718[14]

Provide a low-impedance path for the noise other than the USB cable. In other words, connect the grounds of the PC and the machine together with a short, stout cable. Connect the frame of the machine to ground/earth (this may make the problem worse, though). Connect ground of computer and machine together. (This may depend on the nature of the electrical interference, doing so solved problems caused by a garage door.[17])

Note that the static generated by sawdust is another possibility, esp. if low humidity is a factor. In addition to grounding the trim router ground your dust collection setup.[18]

Desktop PCs have the signal ground connected to the protective (earth) ground. The Shapeoko probably doesn't. In my experience, it made a small but noticeable difference to make the same connection (negative of the supply to earth ground) on the machine side. This may change the electrical safety class of the machine (so it would be regulated differently), and it may make things worse rather than better, especially when the computer is a laptop.

Use galvanic isolation, either on USB, or between the USB-to-serial converter and the rest of the controller. Or, replace USB communication with something wireless, for example Bluetooth.

Unfortunately, the latter is the only one that seems to eliminate the drops completely, but USB galvanic isolation is expensive, and intervening on the serial communication is not easy to do with the Carbide Motion controller. Everything else helps, though, so it's worth trying, just in case it's enough to solve your particular case of interference.[19]

Turn the router down to the lowest speed before powering it off or on.[20]

Careful wire routing may help as well: “route the spindle power directly out the top of my enclosure, controller power out the back left corner and USB out the front right. Stepper motor cables are bundled together and hang to the right side of the controller. Everything is as far apart as they can be.”[25]

Some people have found that using the switch on a power strip to power the router on and off prevents that from causing a disconnection.[26]

Some people have found that using a powered USB hub is a useful convenience, while others have found that it interferes w/ the machine connection.[27]