Arduino CNC PCB Plotter (Need Ideas)

Hi good day everyone, I am a student of Computer Engineering and our project is to make an arduino-based pcb plotter. My concern is, is it possible to use sdcard with G-Code file on it and will be loaded in arduino to perform the operations in the plotter without using a software in the PC or PC? Yes it is a standalone (though I'll be using the PC only for the design that will be converted to G-Code). Because our professor suggested that way and I don't have idea how will I able to make it. Does anyone of you here have ideas or already done my concept. Please I need help, it's our final project for final semester. Your help is greatly appreciated. =( =( Thank you and Godbless! :blush:

is it possible to use sdcard with G-Code file on it and will be loaded in arduino to perform the operations in the plotter without using a software in the PC or PC?

Should be no problem. The drill/mill doesn't care where the data came from.

There are a number of 3D printer controller boards that will work from G-Code stored on a SD card. The most known would be the RAMPS boards (google "SDRAMPS"). Appears that most sellers of the RAMPS boards on eBay don't include the little SD card add on module, but you'll find it if you look for it.

http://www.ebay.co.uk/itm/RAMPS-1-4-electronics-SD-RAMPS-and-cables-RepRap-3D-printer-/170913041178

Checkout what GRBL can do

(deleted)

Came across this link pretty quickly. I've played around with a cnc using a pen similar to the link but I used the permanent markers by Sharpie (the same ones that are sold at electronic stores for 3x the price). Had mixed results with the Sharpie but it looks like the pens used by the youtube guy work pretty good.

justone:
Came across this link pretty quickly. I've played around with a cnc using a pen similar to the link but I used the permanent markers by Sharpie (the same ones that are sold at electronic stores for 3x the price). Had mixed results with the Sharpie but it looks like the pens used by the youtube guy work pretty good.

Direct ink to PCB CNC Plotter - YouTube

Hi justone , that was exactly I want to do too, can you provide a diagram/schematic diagram of your work if you don't mind? :~ :~

Chagrin:
There are a number of 3D printer controller boards that will work from G-Code stored on a SD card. The most known would be the RAMPS boards (google “SDRAMPS”). Appears that most sellers of the RAMPS boards on eBay don’t include the little SD card add on module, but you’ll find it if you look for it.

http://www.ebay.co.uk/itm/RAMPS-1-4-electronics-SD-RAMPS-and-cables-RepRap-3D-printer-/170913041178

Thank you for this Sir Chagrin, Ill try to find it in our area it might available here. Godbless. :slight_smile:

shown19:

justone:
Came across this link pretty quickly. I've played around with a cnc using a pen similar to the link but I used the permanent markers by Sharpie (the same ones that are sold at electronic stores for 3x the price). Had mixed results with the Sharpie but it looks like the pens used by the youtube guy work pretty good.

Direct ink to PCB CNC Plotter - YouTube

Hi justone , that was exactly I want to do too, can you provide a diagram/schematic diagram of your work if you don't mind? :~ :~

That was just a link to someone else who pretty much did exactly what you were looking to do and doing it with very simple methods and surplus (old floppy drive parts) computer parts.

Have you studied the video?

As far as helping you along I am in no position to do so.

I will give my thoughts on how to proceed though.

Load a uno with the grbl sketch ( yes there is a sketch available).

Have another uno with a sd card that reads the file and sends it to the grbluno using the serial ports of the 2 unos.

Construct the plotter mimicking what the youtube guy did.

justone:

shown19:

justone:
Came across this link pretty quickly. I've played around with a cnc using a pen similar to the link but I used the permanent markers by Sharpie (the same ones that are sold at electronic stores for 3x the price). Had mixed results with the Sharpie but it looks like the pens used by the youtube guy work pretty good.

Direct ink to PCB CNC Plotter - YouTube

Hi justone , that was exactly I want to do too, can you provide a diagram/schematic diagram of your work if you don't mind? :~ :~

That was just a link to someone else who pretty much did exactly what you were looking to do and doing it with very simple methods and surplus (old floppy drive parts) computer parts.

Have you studied the video?

As far as helping you along I am in no position to do so.

I will give my thoughts on how to proceed though.

Load a uno with the grbl sketch ( yes there is a sketch available).

Have another uno with a sd card that reads the file and sends it to the grbluno using the serial ports of the 2 unos.

Construct the plotter mimicking what the youtube guy did.

Hi justone,

It's fine sir, that thoughts of yours helps me alot. I'll keep that in mind. And one more thing, is it ok to use 1 arduino only how about the arduino mega? and I've read the grbl something2x, I wonder if all those files are needed to my project,? , sorry for my noob questions. Thanks and Godbless. :slight_smile:

MarkT:
Checkout what GRBL can do

Ok i've checked the grbl from this link: GitHub - grbl/grbl: An open source, embedded, high performance g-code-parser and CNC milling controller written in optimized C that will run on a straight Arduino but seems like Im still bit confuse, do i need to use all the files or can you suggest what files should be use in my project? so I can study it. sorry for being noob. =(

What are your intentions? Do you want a result at minimum effort? Check the links provided and copy what you need.
Do you want to come up with a original solution that actually teaches you something and if finished impresses your professor. Structure your project similar to this:

  • Write a G-code parser
  • Write a trajectory planner
  • Solve the acceleration/retardation
  • Get these to work together

Start here , there are 14 odd pages.........

nilton61:
What are your intentions? Do you want a result at minimum effort? Check the links provided and copy what you need.
Do you want to come up with a original solution that actually teaches you something and if finished impresses your professor. Structure your project similar to this:

  • Write a G-code parser
  • Write a trajectory planner
  • Solve the acceleration/retardation
  • Get these to work together

I want a result at minimum effort if possible since we have limited time only. I've checked the grbl something2x and I am still confused of what files should I used. Actually I found this link: http://www.youtube.com/watch?v=rLQajSRnELc and it's similar to my project but the different is we want to use sdcard to parse the gcode to arduino. Would you mind help us what files should we used in grbl link to our project? Hope you understand sir coz Im still a beginner but I am willing to learn. Thank you sir. :slight_smile:

One place to start would be here:

Lots of useful information there.
The easiest way to go would be using two arduinos with their RX/TX lines connected as a null modem one running gbrl and one reading the sd card and sending g-code line lines as described in the wiki. If that is not acceptable write a routine that checks gbrls serial buffer and inserts a g-code line from the sd card if there is enough space.

nilton61:
One place to start would be here:
Interfacing with Grbl · grbl/grbl Wiki · GitHub
Lots of useful information there.
The easiest way to go would be using two arduinos with their RX/TX lines connected as a null modem one running gbrl and one reading the sd card and sending g-code line lines as described in the wiki. If that is not acceptable write a routine that checks gbrls serial buffer and inserts a g-code line from the sd card if there is enough space.

how about using 1 arduino sir? how about using arduino mega? is it capable to do the operation? ..., by the way thanks to that link you've given.

P.S: We will try to ask our professor if we can change the feature, instead of using a sdcard version or standalone, we will just use PC to parse the g-code, what do you think sir?

No , data can be on the arduino . As a matter of fact , it kind of has to (unless you use SD cards or etc .) I’m currently building a device like the one you are .
You design in a designing app , which usually Inkscape is used . Files are saved as .SVG format (V is for vector , don’t remember the rest :D) Then , your SVG file goes to a G-code app (some plugins for inkscape or some standalone apps ) and becomes some text .
Then , those G-codes go to GRBL (which either communicates through serial monitor or some apps that integrate these stuff)
GRBL turns your G-code into a code in C , which goes to the arduino and is done .
1- Space used by bootloader doesn’t matter , i.e you can have a 32kb code in an arduino Uno . (The bootloader is not deleted)
2- Good thing is that you can Re-cut it with pressing the reset button .

Arman5592:
Then , those G-codes go to GRBL (which either communicates through serial monitor or some apps that integrate these stuff)
GRBL turns your G-code into a code in C , which goes to the arduino and is done .

This is not quite correct.

GRBL is the name of a program that runs on an Arduino. It takes in GCode and uses that to make the stepper motors move appropriately. You have to match it and the hardware (stepper drivers, limit switches etc) connected to the Arduino.

It does not convert the GCode into anything other than the motion of the motors.
Because it is already on the Arduino it does not send anything to the Arduino.

…R

Grbl turns into a code that controls the arduino . Really , what else than controlling steppers ? There is no other work to be done , so that's what I call "all the work" . And the language is in C .
And grbl isn't "on" the arduino , the code that grbl writes goes into arduino - grbl is some megabytes , how would it go into arduino ?
Yes , the code grbl makes is "on" the arduino but it's sent by another app that isn't on arduino so it comes to the arduino .

Arman5592:
And grbl isn't "on" the arduino

I'm a simple soul. Maybe I am naive to believe what I read on the GRBL Github page

An open source, embedded, high performance g-code-parser and CNC milling controller written in optimized C that will run on a straight Arduino

...R