Let's Make Robots!

RepRap Conversion for a set of Probotix SideStep Stepper Motor Drivers

Abstract

An Arduino or similar microcontroller shall be used to create a RepRap-style front-end for the HobbyCNC EZ Driver board or similar DB-25 controlled stepper driver.  This front-end microcontroller application would allow RepRap applications to control a number of powerful CNC machines.

Introduction

The hobbyist CNC market is growing, and one of the favored components is the HobbyCNC EZ Driver board.  The EZ and PRO drivers offer control of powerful stepper motors for a price less than $100.  These would be a great addition to my CNC project if I could control them with a microcontroller instead of a parallel port.

For Bipolar motors the nearest match is the Probotix SideStep Drivers and Parallel Port Breakout Board.  A 4-axis set with similar function to the HobbyCNC 4-axis $99 PRO Driver Board would cost quite a bit more, at $165.

Using a microcontroller to control the parallel port pins of the PRO driver board would offer me 4-axis control for as little as $100, while avoiding the problem of using Windows to control a Real-Time Application.

The Problem

Building a driver from scratch, while educational, is expensive and inefficient compared to the commercial options already available at low cost.  The drivers used on my current CNC cannot handle the powerful motors I would like to use, cost more to build than the HobbyCNC driver, and alternate options also cost more than the HobbyCNC drivers.

 The Driver Board

The HobbyCNC page says:

<HobbyCNC>
Parallel Port Pinouts are as follows: 2=X dir 3=X step 4=Y dir 5=Y step 6=Z dir 7=Z step 8=A dir 9=A step 10=Limit 11=A home 12=X home 13=Y home 15=Z home 18-25= Ground All others are not connected
</HobbyCNC>

So the 4-axis driver can be controlled via 8 pins minimum, and 12 if I want to connect limit/home sensors (I do not right now).

The Controller

An ATTINY2313 or an Arduino would be candidates for the driver controller IC.  RepRap for GCODE is a satisfactory program for controlling my current CNC, and I would not mind using this program more.  The microcontroller would behave like a RepRap, while managing control of the driver board

RepRap for GCODE is a program by Chris Meighan that sends text commands via serial interface to an Arduino controller (or any serial controller that behaves like a RepRap).  RepRap for GCODE can handle many lines of GCODE, and has been successfully used to route and drill PCBs for prototyping via a RepRap-like CNC mill.

Creating a RepRap-style front-end for the HobbyCNC driver would allow RepRap applications to control a number of powerful CNC machines.  A seperate controller does not modify the HobbyCNC driver, so the driver can be detatched and connected to a parallel port for control by Mach3 or EMC2.

Progress

A nice cheap solution for my CNC would be maybe an ST L297/1 controller to go with the L298N IC driver.  The ST L297/1 driver I/C costs $3.50 USD/pc from Thailand, which is better than $11.50/pc from Mouser.  I like cheap solutions, so this research is on indefinite hold.  This blog post will be properly recycled (and the bits will be reused on other blogs).

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

I plan on building an interface in flash that will parse g-code on the client and send step commands over serial to an arduino that will then control this stepper board: http://www.rockcliffcnc.com/ProductDetails.asp?ProductCode=RCV10

There are plenty of other cnc software solutions but I would like to make my own :)

Wow, thanks!  That is a nice looking board!  I like it because (1) it is pretty, and (2) it is all on one board like the HobbyCNC EZ Driver.  I think I also see that there is a breakout for the LPT pins on the green jumpers.

Parsing the GCODE on the client side and sending steps to an Arduino seems like a neat idea.  The way I was planning to do it was to have the Arduino work like a RepRap and do the GCODE parsing, so that the serial commands are GCODE strings.  (That's easier for me since I am already using some RepRap CNC code).

Thanks for the link! I was looking for a HobbyCNC equivalent 4-axis Stepper Driver for Bipolar motors and the Rockcliff CNC fits the bill perfectly.  -John

Well, that plan's shot :)  -- Since I already bought the bipolar motors, whatever I build has to allow bipolar motors.