Page 1 of 1

G-Code programming question

Posted: Mon Feb 02, 2015 1:15 pm
by MarkNilsen
Hello All,

After looking at several CNC machines in the 3-4k price range I have decided the Shark Slimline could be the best choice. Since I'm new to CNC, but not programming or wood working I wanted to see who is hand coding G-Code on the Shark.

I am going to be making guitar necks and will be using the Shark for cutting fret slots for custom scales lengths, position markers and custom fretboard radiuses. The algorithm I use has variables for all these parameters and I think it will be easier to adopt to hand coded G-Code than learning a 3D CAD system.

How is it regarding hand coding G-Code on the shark? Pretty painless? Are there boilerplate preambles for setup and calibration? Any special functionality with the Shark ...or quirks? Just trying to feel out what I'm in for.

Thanks and sorry if this has been covered but I did a couple searches and nothing turned up.

Mark

Re: G-Code programming question

Posted: Tue Feb 03, 2015 12:03 am
by Danwood
My suggestion is to use VCarve pro to cut as much of the part as possible. You can use the preview tool path function to see how well the program works. chances are you will have to do some manual Gcode writing.
If you will post the artwork you have for the guitar neck I will give it a test run and see if I can help you withe the hand written code.
I hand write a lot of Gcode. I also teach Gcode writing.
I that doesn't work I think this forum has a way you can contact me.
I have written a small essay on the introduction to Gcode.
It's a little long to post in this forum.
Dan

Re: G-Code programming question

Posted: Wed Feb 04, 2015 9:42 am
by MarkNilsen
Hi Dan,

Thanks for the response.
What you said makes a lot of sense to me.

I just had a look at the vCarve software but because I am a Mac/Unix guy I am going to have to wait on running it. I wonder if the new Raspberry Pi that comes preloaded with Windows 10 will run vCarve? I will have to look into that. I have an original Raspberry Pi that I was planning on running LinuxCNC on before I decided on getting the CNC Shark. I also have a bunch of Macs and iPhones but I thought using a Raspberry Pi as my CNC controller would be a good idea, of course I'm rethinking that now.

I really appreciate your offer to run some tests for me. But I don't have any CAD files ready. My idea for a first pass at g coding and making use of The CNC Shark was to write a program that carved the finger board radius and then cut the slots for the frets. That would be a pretty simple program in my mind but would off-load a ton of manual labor from me.

I would like to read your Essay about g code. That would open my eyes to things I'm sure I have not thought about.
Can you send a link?

Thanks again,
Mark

Re: G-Code programming question

Posted: Wed Feb 04, 2015 10:50 am
by 4DThinker
LinuxCNC is (IMO) a great CNC controller, but won't generate the G-Code for you. It also won't control any of the CNCs from Rockler/NextWave.

VCarve Pro is a great drawing program as well as very versatile tool path generator and I doubt it'll run on the version of windows that they have made to run on the new Raspberry Pi 2. I also doubt the controller for the Shark line will run on it but I'd love to be proven wrong.

4D

Re: G-Code programming question

Posted: Thu Feb 05, 2015 12:52 am
by MarkNilsen
Hi 4D,
I would like to be writing my own G Code and sending it to LinuxCNC to interpret.
There are unknowns in that but I'm an experienced programmer and for what I want it might be the best route.

I don't understand why LinuxCNC won't work with the Shark and other Rockler machines? I was under the impression that control signals generated by g code interpreters were pretty standard with a proper machine definition? Wouldn't LinuxCNC just need to be given that info in a setup file?

EDIT: I just did a my research and found a list of supported cards for LinuxCNC. I can understand now that the incompatibility here is in the driver layer.

Thanks for your help,
Mark

Re: G-Code programming question

Posted: Thu Feb 05, 2015 10:25 am
by Danwood
Hi Mark;
Sorry but I have not posted my Gcode essay on the Net.
I did the essay to support a group of shark users in the Seattle area.
I would be happy to send it to anyone who wants it.
I am hesitant to post my email address on this forum. I am sure you can get it from the system moderator.
I would be glad to send you a copy and answer any questions you have.
All CNC machines operate on the same Gcode. The difference is the post processor.
My machine uses Mach3 which is the most used of all post processors.
The shark machine as far as I know uses a shark propriety system.
These post processors are available in Aspire Vcarvepro and Cut3D.
They may also be available in LinuxCNC.
Look for "CNC Shark" in the list of post processors when you save the file.
As you say you are an experienced programmer, then Gcode should be a snap for you. It is just another programming language.
I recently had an inquiry from person who wanted me to carve Guitar necks for him using aspire to write the program. He furnished me a Quasi 3D drawing. He knew nothing about CNC or aspire but insisted that Aspire could write the Gcode. I opened his drawing and had aspire write the code. Every thing was fine until it got to the end of the neck where string tighteners are. It was a real mesh mash. I him ask for a dimension drawing so I could hand write the code to finish the job. He said he didn't have one.
Most people don't understand that Aspire is not a true 3D program. Under certain very limited conditions it will do 3D.
I sent him a picture of the result. This upset him . He called and proceed to play what if games. When I told him my rates for what if games with people who didn't know what they were talking about was $100.00 per hour he hung up and I haven't heard from him since.
I enjoy an in depth discussion on CNC and related subjects with people who are open minded and truly want to learn or teach.
Looking forward talking with you.
Good luck
Dan

Re: G-Code programming question

Posted: Thu Feb 05, 2015 12:14 pm
by MarkNilsen
Hi Dan,

My email address is: markrob_x_ertnilsen@gmail.com. But don't include the letter x and the leading and trailing underscore that I inserted between the b and e in my middle name. That's usually enough to trick the robots:)

Anyhow, I look forward to reading your essay.

I have been looking for a solution to making my guitar necks for a few years. It's resulted in several trips overseas to factories in China and Vietnam. My recent trip to Shenzhen was a real let down in some ways but strengthened my resolve to do it myself. After thinking of different options to offload the time consuming labor of building my fretboards I decided to go CNC. You are correct that a lot of people look at CNC as magic; clamp a block of wood to a table and give it a 3D wireframe and voila! I have tried to look at the entire process as a programming problem. I used to write raytracing algorithms, video compression algorithms and other graphics stuff so I felt going back and forth with a milling bit would be akin to thinking about pixels on a computer screen. But the last month has been tough because there was so much I didn't know. Ack! Another learning curve; how many of these are there!! :)

The Shark series looks robust but I am a little disappointed that I cannot use LinuxCNC with them. I have looked very hard to find a CNC machine that can use Linux but they are either hobby units or retrofitted heavy iron that is out of my price range. I can justify 4k on this but not much more. I'm a small shop trying to expand a little. And I need at least 18" in X but preferably more. I could get by with 5 inches in Y and 2 inches in Z. So I even looked into building my own machine. But if I go down that road I'll miss the next guitar trade show for sure.

Getting a Windows machine to plug into a Shark is the easy way to go but I don't like Windows and if there was another way to go I would take that route. And thats where most of my looking is going right now. But I still have not found anything that fits my needs, hardware wise, better than the Shark Slimline.

As far as my G Code program there are 2 things I want to do. (1) The first thing is carve what is called the fingerboard radius into the face of the fretboard. This is the very subtle curve that makes the hand grasp the neck more naturally. It's not the back part but the part the frets will get pressed into later. The fingerboard radius is a highly taste dependent thing from guitar player to guitar player but would simply be a single variable in my program that I would change from build to build. I am not sure how smooth I can get the machine to carve this curve but I'm ready for a lot of testing with speeds and milling heads to get the result I need. (2) The second thing I will be doing is cutting fret slots. I will be making multi-scale fingerboards. You can google 'fan-fret' or 'fanned fret' to see what that is if you don't already know. As you can see, if you googled the pictures, the low strings have a longer scale length than the upper strings causing the frets to fan out across the neck. The selection of the two scale lengths is non standardized and again will vary from build to build but in my G code program will just be 2 numbers I need to change. Cutting the fret slot is just a single cut and a simple bit of math in the program but will save hours and hours making the measurement manually and cutting the slot to the proper depth.

Of course I have other things planned for my machine once I get this going but I'm trying to find a simple useful task to focus on first.

Anyhow, I look forward to reading your essay and hearing more of your thoughts and suggestions.

Thanks again,
Mark