MACH3 is very a versatile CNC machine controller and it can be adapted to practically anything you can think of. For most people, however, it is all of this flexibility what makes it so daunting to give it a try. As I design the CNC Mother Board I want to make sure configuring MACH3 to work flawlessly with this excellent stepper driver platform is not going to become a problem in itself. In this article, I will detail the steps you can take to configure a MACH3 machine to work with the CNC Mother Board.
I am also adding the files you can drop in your MACH3 installation software, which you can use as a reference or starting point. There really is no way I can give you a file which can just be dropped into the MACH3 installation folder and is ready to go, as there are some variables you will need to adapt to your machine. Stuff like what is the input number for this and the output number for that is pretty much set in stone by the design. But some signal polarities, like step direction, are not. Motor tuning will completely fall under your court as there is no way I can possibly know this before hand, but we will need to look at this in a different post.
Before I go on, I want to point out the folks at Artsoft have some descent tutorials that are always a good idea to take a look at. Yes, MACH3 is a huge collection of screens and it may seem like you require an actual PhD in CNC technology to understand it, but I can tell you I do not possess such an education and I feel dangerous enough to make some parts.
The truth is most of your configuration will take place in two menu items:
CONFIG-> Ports and Pins (Most of these parameters are set by the design, but some you will need to tweak as per the machine)
- CONFIG-> Motor Tuning (this you will need to tune according to your machine, and will be studied on a different post)
I assure you this is not all there is to configure within MACH3. There are a gazillion of other configuration menus, but they are for the more advanced user. No need to go there yet (and possibly never), so let’s see what we need to do to get the CNC Mother Board going.
STEP #1 CONFIG->Ports And Pins-> Port Setup and Axis Selection
Of course, to run a CNC machine with MACH3 you will most likely need a computer with a parallel port. Most people think the parallel port is extinct and if you are not a DIY CNC fan, chances are that is the case. Most of use, however, will still have a load pile of older computers with a parallel port, to work as our CNC controller. But even if you get a newer computer, you can always add a PCI expansion card with a parallel port. In my experience, they are no more than $20.
You can check the Control Panel, under Hardware, and obtain the information of what the parallel port on your computer is. You will need to do this as I cannot know what your parallel port address is.
Step #2 CONFIG->Ports And Pins-> Motor Outputs
On the following tabs, is where most of the juice needs to be input, as this is you specify where the machine’s resources are allocated. For example, you know yourParallelPorthas 25 pins. Some of these pins are inputs or outputs and other are grounds. The CNC Mother Board already has allocated the outputs to be used as motor driver signals (STEP and Direction) and the inputs to be sensor signals (HOME X, HOME Y, EMERGENCY STOP, etc).
Notice in this tab you will specify which ones are the resources for the STEP and the DIR pins on a per Axis basis. The picture above has the numbers you will need to input for the CNC Mother Board and these numbers should not change. A few things to notice:
You only need to enable the axis that you have populated. The CNC Mother Board gives access to ports X, Y, Z and A.
- The DIR Low Active column is set up according to the particular machine where I extracted this file from. If your stepper is going in the wrong direction, you can either reverse the stepper wires (too much hassle) or flip this signal.
- STEP is usually LowActive in the great majority of stepper driver modules. If you have a module where the ENABLE is asserted HI, then flip this signal.
- The STEP and DIR port is whatever you chose on STEP 1. Most people will use Port 1, but there is always a place holder for Port 2.
Step #3 CONFIG->Ports And Pins-> Input Signals
Next is to configure the input signals such as each axis’ Home Sensor and the Emergency Stop button. Same as before. What we want is to tell the system whichParallelPort, and which pin, will be used for each input resource. The CNC Board has 5 inputs you can configure on this screen. It is highly recommended to always have an Emergency Stop (pin 10), but the home sensors are optional.
On the CNC Board, the signals are pulled up (HI) so they are waiting for a LO from the respective Home Switch. Hence these signals are set Active LO (Active Low column).
Step #4 CONFIG->Ports And Pins-> Output Signals
This following screen is in essence the same as the previous one, but in this case to configure the outputs. You will enable those outputs that you want to use. On the CNC Mother Board, you should definitely use the Enable1 signal which is the one used to enable the four stepper driver modules. The Output #1 and Output #3 are used for the two solenoids.
Output 1 is used to enable/disable the Spindle
Output 2 is used to enable/disable the secondary function such as the coolant line.