For the uninitiated, a CNC milling machine is basically the opposite of a 3D printer. With a 3D printer, you’re adding medium from a nozzle to a blank space to create an object. A CNC milling machine starts with a chunk of medium and removes parts of it to create an object, drilling out parts of the medium with great precision while moving its spindle on more than one axis.
CNC milling machines (the CNC means Computer Numeric Control) are really expensive.
Screengrab from eBay today
So Colin May did what any thinking engineer would do to bring the price down. He built his own, using a Raspberry Pi for its brains.
My friend and I thought about building a CNC Machine for a while. But we didn’t want it to be just an ordinary CNC Machine. We wanted to make a very unique machine that could have very unique attributes. We set out to make a CNC Machine that could do different types of Machining. For example, routing, laser engraving, 3D printing, drag knife, etc. We took about a few months to design the basics of the machine. For example, what kind of linear motion we would have for each axis, what kind of material we would use for it, what kind of style to make it, etc. We chose our build area to be 24″ X 24″ X 7″. After those few months of finalizing everything, we took our first step into physically making the machine. Note: This is made for the average consumer, for home use, and for someone who doesn’t have the money to invest in a $1000 CNC router or 3D printer.
Colin’s machine is still a work in progress, but it’s showing great promise, and we’re very interested to see where he takes it next. Here’s some prototype output:
First test of the machine
And here’s some video. (Turn the sound down if you’ve got a dentist phobia.)
Colin is intending to add extra functionality: 3D print capability, and some other machine tools – to the setup. You can follow his build and replicate it over at Instructables. Thanks Colin – we’re looking forward to seeing more!
Brushless DC motors, and their associated drive electronics, tend to be expensive and complicated. [Ottoragam] was looking for a cheaper alternative and built this Brushed DC motor servo controller and the results look pretty promising. Check out the video after the break.
He needed a low cost, closed loop drive for his home-brew CNC. The servo drive is able to supply a brushed DC motor with up to 7 A continuous current at up to 36 V which works out to about 250 W or 1/3 HP. It does closed loop control with feedback from a quadrature encoder. The drive accepts simple STEP and DIRECTION signals making it easy to interface with micro controllers and use it as a replacement for stepper motors in positioning applications. All of the control is handled by an ATmega328P. It takes the input signals and encoder data, does PID control, and drives the motor via the DRV8701 full bridge MOSFET driver. There’s also some error detection for motor over-current and driver under-voltage. Four IRFH7545 MOSFETs in H-bridge configuration form the output power stage.
This is still work in progress, and [Ottoragam] has a few features pending in his wish list. The important ones include adding a serial interface to make it easy to adjust the PID parameters and creating a GUI to make the adjustment easier. The project is Open Source and all source files available at his Github repository. The board is mostly surface mount, but the passives are all 0805, so it ought to be easy to assemble. The QFN footprint for the micro controller could be the only tricky one. [Ottoragam] would love to have some beta testers for his boards, and maybe some helpful comments to improve his design.
Farmbot is the first open source cnc farming machine with the aim to create an open and accessible technology aiding everyone to grow food and to grow food for everyone. It runs on open source hardware like Arduino Mega 2560 and involves a community of contributors on the wiki and forum where you can find documentation, schematics, assembly guides, troubleshooting tips and many more on all currently supported and old FarmBots.
Documentation has been a key element of the project since the beginning and Farmbot founder, Rory Aronson at the 2015 Hackaday SuperConference, gave a talk about why great documentation is the key to building a community of hackers who continue to build upon open source technologies:
An instructables on how to make an Arduino based mini CNC plotter from old DVD drives by Ardumotive_com:
For the X and Y axes we will use two stepper motors and rails from dvd/cd drives and for the Z axis we will use a small servo motor that moves the pen up and down. For the mounting base we will use a small piece of plexiglass.
You can easily attach a pen (or pencil) – irrespective of its thickness – on it. I tried to use an extension of cutting tool (e.g.Dremel) to engrave materials with no success. So this mini cnc can only be used as a small plotter and not as an engraver machine.
The Arduino-based circuit is using the ATmega328 microcontroller, two L293 motor driver ICs and an usb to serial module. You can easily make it with the Arduino uno board and an breadboard.
During the Physical Computing and Creative Coding course at School of Form a team composed by Ernest Warzocha, Jakub Wilczewski, Maciej Zelaznowski worked on a project starting from the keyword “the aesthetics of interaction”. With the help of their lecturers – Wies?aw Bartkowski and Krzysztof Golinski – they decided to rethink about typical button-like interface of audio sequencer and design a unique tangible interface for it.
Instead of regular buttons we created wooden discs (4×8 circles) that placed in holes generate audio sequence. Each line corresponds to different instrument and columns are responsible for time when sample is played. To know in which point at timeline our sequence plays there is hidden LED on top of each column that blink through wood and informs user which one is currently played.
To create good-looking round shapes of table we used CNC router at our university. After the milling process we connected all electronics with table and sensors for each hole. The core of our project is Arduino UNO with multiplexers and MP3 module. With rendered samples and build-in speakers our project doesn’t require computer plugged in.
Important and somehow unique in our sequencer is usage of IR reflective sensors to change played instrument sample. To decide which sample we want to play sensor recognizes different grayscale color and intensity of the reflected light at bottom of our discs – actually everything placed on table can generate sound. Creating grayscale-based controller is experimental way to interact with device. Furthermore, using grayscale palette might be great idea for MIDI instrument. For this project we used two colors to show the concept. It’s possible to add more but it’s more sensitive to non-constant background light.
[Josh] got rid of the standard, factory gauges on his GSXR Super-bike and installed a custom built instrument panel which displays some additional parameters which the regular instrumentation cluster did not. He was working on converting his bike in to a Streetfighter – a stripped down, aggressive, mean machine. The staid looking gauges had to go, besides several other mods to give his bike the right look.
Luckily, he had the right skills and tools available to make sure this DIY hack lives up to the Streetfighter cred of his bike. The important parameter for him was to log the Air / Fuel mixture ratio so he could work on the carburation. Along the way, he seems to have gone a bit overboard with this build, but the end result is quite nice. The build centers around a Planar 160×80 EL graphic display lying in his parts bin. The display didn’t have a controller, so he used the Epson S1D13700 graphic controller to interface it with the microcontroller. An Atmel ATmega128L runs the system, and [Josh] wrote all of his code in “C”.
Bike speed is derived through a GPS module. The air/fuel ratios are read from a wideband O2 sensor. Other data shown on the display are the engine temperature, battery voltage, time (from GPS), and engine RPM. An ambient light sensor is used to auto-dim the display. The high refresh rate of the display, up to 240Hz, allows a large dimming range without flickering. The light sensor also controls the brightness of the other indicators. A BC127 Bluetooth module allows datalogging via the Serial Port Profile (SPP). In the future, this would possibly allow him to display SMS messages from his phone on the display. A bank of addressable LED’s can be driven to show several functions – indicator lights, RPM, battery voltage, engine temperature or air / fuel ratio – selected using a push button.
[Josh] used his CNC to mill out the housing using a 1″ thick acrylic. And the nice looking PCB is designed in Eagle and milled out using the same CNC. It’s all SMD with a large smattering of 0805 parts and shows rev B – so he’s probably made improvements over rev A. Check out the video below where [Josh] walks through some of the functions.