3 Axis Arduino Based CNC Controller
Intro: 3 Axis Arduino Based CNC Controller
The latest generation controllers I have built all use the same simple and cheap IC's. A pic 12c508 as the basic stepper driver logic and some H-Bridge chips that were originally meant for mundane things like tray loading motors on dvd players. I got a couple of hundred of these on ebay. The pic micros were from a guy that used to do mod chips with them but sold out his stock of unused chips really cheap.
I've used the cheapest parts I could find and still got great results with modest fine tuning. I used a dial indicator to see how bad my table was and it only varied .008 inches in depth from end to end. If I had used a surface planed board or aluminum plate that would have been better. I could always just mill a huge squared spiral pattern into the table to make it perfect
STEP 1: Single Board or Multiple Board Modules
I've tried both ways and each has its advantages. I always keep the 110V SSR board separate. When using the single board approach I like to use an Arduino nano clone. when using multiple boards I use and arduino prototype sheild wired with a bunch of headers for the individual boards.
STEP 2: Control Buttons
STEP 3: 110V Solid State Relays
STEP 4: Picking Motors
I use a simple driver that has no enable input but is really cheap to build and can handle 90W/per motor max (30V and 1.5A/phase). it does have overcurrent , overvoltage, overtemp protection though. I am writing an i'ble just on that controller. I like to use recycled power bricks in the 16-19V range.
that works well since I had a bunch of unipolar 12V steppers. I don't connect the common leads so I use an H-Bride bi-polar driver. this means the 12 coils on each phase are connected in series for a 24V coil. Running them at 16V keeps them cooler.
STEP 5: Software
STEP 6: X-Y Test
I worked by trial and error increasing the feed rate and acceleration until it lost steps then backed off a bit. In the real world I used a slower rate anyway so as not to break off the carbide bits.
STEP 7: Z Axis
for all the axis' i used 1/4-20 threaded rod. To minimize backlash I used blocks of delrin to make the nuts
STEP 8: Trivets
I used scraps of flooring, shelf boards and whatever else I could find laying around the shop.
to give the engravings more contrast I used some spray paint. I just gave the board a liberal coating and wiped it down with a rag sprayed with WD40
I then used mineral oil to give the wood a little protection
STEP 9: Circuit Board Routing
So I decided to give it a try. I found a simple QRP transmitter design which I could use for an arduino project and tried to make a couple.
I built a 20M and a 40M board. They worked so well I’m going to route 2 more for 80M and 160M
26 Comments
jkwilborn 3 years ago
rjkorn 3 years ago
https://www.instructables.com/40M-QRP-Transmitter-...
I am working on a CW/Hellscreiber/WSPR beacon and an RPI WSPR beacon. Just need time to document it...
if you're on facebook theres a few i posted here:
https://www.facebook.com/groups/AWPLMakers
there are some of radio related ibles too. Check out the all mine here:
https://www.instructables.com/member/rjkorn/instructables/
Always looking for ideas... My Balun ible seems to have gotten the most attention from hams......
BTW first test of that cnc cut board showed a serious miscalculation in the tank values. I did change the caps and get it clean but check the scope pic.....
beach801 4 years ago
rjkorn 4 years ago
SaraS244 5 years ago
rjkorn 5 years ago
najeeb en 7 years ago
But .idont know how to create gcode can anyone help me to do it.from youtube i found but it dont work for me.mainproblem is my bed size is 4x4 butthe gcode file is20x20
prasu999 5 years ago
CharlouLexqs 6 years ago
can you add a schematic..please
padbravo 5 years ago
Yes!
i have a BUNCH of unipolar motors too!
so, if you could share your PIC drivers, wold be great
Vinay khattar 6 years ago
IS there any difference in cnc's code due to use of different size of lead screw or anything else ... Means my router is going to be a little bit bigger so can I use the code that I downloaded from an instructable ...PLEASE HELP
AhmeedS 7 years ago
circuit diagram plz
shahzad aziz 8 years ago
is simple h bridge driver l298 can work accordingly with g code interpreter if does can i have simple g code interpretor program for ardiuno i am working on 5 axis cnc machine and get traped with driver and software issue (is edit usb controller is compatible with h bridge ..?? if not so which software is ... ) please help..!!
rjkorn 8 years ago
I used H-bridge drivers because that's what I had on hand. I did another instructable about them here:
https://www.instructables.com/id/Simple-Stepper-Mot...
There are some things to consider. To drive a single stepper you need 2 separate H bridges and a controller to go between the step/dir pins and the h bridge inputs. Also without a lot of work the best you can do full or half step drive.
so for your 5 axis machine you would need 10 h bridges and 5 pic or attiny support micros...
That being said I did many machines with H-bridges anyway and they worked great. Full stepping is fine with 20tpi lead screws...
I'm doing another machine soon so I may revise this a bit....
MusicSteve1984 8 years ago
Great job! Can you upload an electrical schematic and arduino code?
Invento Guy 8 years ago
your idea of making this cnc machine is awesome..!
But you haven't provided full circuit diagram with arduino and its code..!
in your other instructable you have provided circuit of stepper motor controller ,but not cnc controller circuit..!
please send me the full circuit with code "maheshjshetty@gmail.com"
blackboy_jakk 9 years ago
Are you use stepper motor driver?
And I want blueprint of circuit board,Can you show?
rjkorn 9 years ago
I used H-bridge drivers because that's what I had on hand. I did another instructable about them here:
https://www.instructables.com/id/Simple-Stepper-Mot...
I hand-wired the protoboard by following the hookup diagram in the GRBL wiki. I never bothered to document the board since I figured everyone would have a unique take on how to assemble a cnc and make it their own.
I have since moved on from GRBL in favor of a controller that does ARC's and has a few more options.
rjkorn 9 years ago
The code for the arduino is on the GRBL project github, its been updated a couple of times since this was published.
there is also a hookup diagram in their wiki that I followed. I did use a couple of custom pics to drive the H-bridge chips I had lying around. if you're interested in it that code is in this instructable
https://www.instructables.com/id/Simple-Stepper-Mot...
steelspark 9 years ago