Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Grbl cascading 6 or more synchronized axes #227

Closed
miltonvilela opened this issue May 9, 2013 · 2 comments
Closed

Grbl cascading 6 or more synchronized axes #227

miltonvilela opened this issue May 9, 2013 · 2 comments

Comments

@miltonvilela
Copy link

I'm working on a project without CNC head with 2 Arduinos, SD card, LCD and Keyboard 3x4 and I'm interested in increasing the number of axes to be controlled, initially 6 axes, X, Y and Z + A, B and C.

The conceptual model is based on the possibility of using Grbl cascaded to manage Gcodes and sending synchronously Gcodes the X, Y and Z for an Arduino with firmware Grbl, and Gcodes A, B and C for the second Arduino with Grbl firmware.

My idea is to break down each line and create Gcode Gcodes referring to the X, Y and Z and Gcodes referring to the axes A, B and C.

The way to synchronize the two Arduinos (XYZ) and (ABC) is a software manager in Arduino, and sent via TX to RX switching for each Arduino receiver.

Thanks for ideas and suggestions.
Milton Vilela - Brazil

@chamnit
Copy link
Member

chamnit commented May 9, 2013

Unfortunately, one of the most difficult things you'll run across with your approach is to ensure step synchronization between all axes in real time. It's not a trivial task. If you don't have synchronization, you're axes could become out of phase and overload the tool which will likely then break. (that is if you are planning to build a mill, rather than something like a laser cutter).

If you are determined to build a 6-axis controller, I would instead look into using an ARM-based controller, which will be able to handle all of the math and real-time stepper control, or re-think your approach. For the latter, I would instead separate out the g-code parser/communications into one Arduino and have the other Arduino handle the 6-axis stepping. The biggest problem with this is that the 8-bit AVR Arduinos may be barely fast enough to what you want.

@daapp
Copy link
Contributor

daapp commented Jun 9, 2013

I port some 0.8c version to sanguino (atmega644) with 6 axis, if interesting. Soon I plan to real device with at least 5 axis or may be 6 with it.

@chamnit chamnit closed this as completed Dec 5, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants