USB to DB25 Adapter Uses GRBL For Parallel Port CNC Communication

USB-Parallel-GRBL

With the continuing manufacture of new computers, there is a clear and obvious trend of the parallel port becoming less and less common. For our younger readers; the parallel port is an interface standard used for bi-directional communication between a computer and a variety of peripherals. The parallel port’s demise is partially due to the invention of the USB standard.

If tinkering with CNC Machines is one of your hobbies then you are familiar with the parallel port interface being fairly popular for CNC control board connections. So what do you do if your new fancy computer doesn’t have a parallel port but you still want to run your CNC Machine? Well, you are certainly not stuck as [Bray] has come up with a USB to Parallel Port Adapter solution specifically for CNC use.

A cheap off-the-shelf USB to DB25 adapter may look like a good idea at first glance but they won’t work for a CNC application. [Bray's] adapter is Arduino-based and runs GRBL. The GRBL code is responsible for taking the g-code commands sent from the computer, storing them in a buffer until they are ready to be converted to step and direction signals and sent to the CNC controller by way of the parallel port DB25 connector. This is a great solution for people needing to control a CNC Machine but do not have a parallel port available.

[Bray] is using a Raspberry Pi running GRBLweb to control his adapter board. However, there are other programs you can use to communicate with GRBL such as Universal G-Code Sender and GRBL Controller.

The board has been created in Eagle PCB Software and milled out using [Bray's] CNC Router. The design is single-sided which is great for home-brew PCBs. He’s even made a daughter board for Start, Hold and Reset input buttons. As all great DIYers, [Bray] has made his board and schematic files available for others to download.

The Pi CNC Controller

pi

Back in the olden days, the latest and greatest CNC machines had minicomputers bolted onto their frames, replete with paper tape readers and seven segment displays. For the home CNC machinist of today, these hulking electronic brains are replaced with something a little more modern – desktop computers with parallel ports. Having a box filled with computers and motor drivers is just too cool though, and this tiny Raspberry Pi CNC controller fits the bill quite nicely.

The controller uses a Raspberry Pi as the brains of the device, but there aren’t too many options out there for stepper motor control in Pi land. There are, however, dozens of CNC shields or the Arduino. The Pi AlaMode board is able to provide voltage level conversion between the CNC shield and the pi, and also has the nice bonus of a battery-backed real time clock.

With some proper connectors, lighted buttons, and a beautiful cable sleeving job, this Pi CNC controller would be well suited for any of the desktop CNC  or engraving builds we see from time to time.

 

GRBL compatible Arduino CNC shield

arduino-cnc-shield

By the time you get to the point in a home CNC build where you’re adding control electronics you may be ready for the simplest means to an end possible. In that case, grab your Arduino and heat up that etching solution to make your own GRBL compatible shield.

This familiar footprint manages to contain everything you need for a three-axis machine. The purple boards slotted into the pairs of SIL headers are Pololu Stepper motor drivers. Going this route makes replacing a burnt out chip as easy as plugging in a new module. The terminal block in the center feeds the higher voltage rail necessary for driving the motors. The DIL header on the right breaks out all of the connections to the limiting switches (two for each axis), spindle and coolant control, as well as three buttons for pause, resume, and abort. There’s even a header for SPI making it easier to add  custom hardware if necessary.

This is a dual-layer board which may not be ideal for your own fabrication process. [Bert Kruger] posted his Gerber files for download if you want to put in a small run with OSH Park or a similar service.

 

Handwriting suck? Build a machine to do it for you

calligraphy-machine

Children of the information age are doomed to have the worst handwriting just for lack of use if nothing more. But some students at Olin College harnessed technology to find a solution to that problem. Meet Herald, a CNC machine that can produce beautiful calligraphy.

The machine uses a gantry to move the writing tip along the X and Y axes. The flexible-nib calligraphy pen is mounted on a sprocket which rotates the tip onto the writing surface, taking care of the third axis. The rig was beautifully rendered from their CAD drawings, then tweaked to ensure the smoothest motion possible before the quintet of Sophomores began the physical build.

The drive hardware is very simple yet it produces great results. It uses an Arduino along with three stepper motor drivers. There are also limiting switches to protect the hardware from runaway code. The software interface designed by the team lets the user cut and paste their text, and select a font, font size, alignment, etc. It then converts the text to G-code and pushes it to the Arduino where the GRBL package takes care of business.

Don’t miss the device in action, writing out a [Langston Hughes] work in the clip after the break.

[Read more...]

CNC hardware: stream g-code to an Arduino

[Reza Naima] has been using an Arduino as the center of his CNC setup for quite some time now. It handles three stepper motors, limiting switches, e-stop, and spindle control. The sketch he’s using allows him to stream g-code to the popular prototyping platform, freeing him from needing a dedicated PC. It’s worked so well that he’s decided to clean up the code and develop a shield to help others get up and running. If you want to see his progress or lend a hand, check out the google group he started for the schematics, code, and forum discussions. There is already a CNC project for Arduino called Grbl but [Reza's] approach uses the Arduino libraries in an effort to make the sketch more customizable for the average user.

Follow

Get every new post delivered to your Inbox.

Join 93,839 other followers