I build a small CNC machine whose X and Y axis are replaced by linear arms pushing directly the spindle, in a “bipod” configuration. Stiffness and precision of the prototype are very impressive.
I am now working for a repstrap 3D printer declination, called “dipode” (open source project), which should be very simple, cheap, effective and outstandingly fast. I really think that this innovative non-cartesian machine could outperform any current repstrap, according to both cost, speed or precision, but I lack a good stand-alone electronics solution.
Today, these machines are drived (quite well) by emc2 / LinuxCNC running on an old laptop. Therefore, the step frequency limits the hardware speed.
As you probably know, emc2 uses a single c module to translate from cartesian space to machine’s linear drives (direct kinematics and inverse kinematics). You claim that Smoothie is tailored to handle non-cartesian architecture. I am not very comfortable with the software environment, so I need an example to learn how to cope with the relevant module.
Do you have any picture/schematic/rendering of your machine(s) ? I’d love to see that
About your question, smoothie has completely abstracted arm solutions.
This means to add a new arm solution all you have to code is a now module for the arm solution.
A good example would be for example Logxen’s recent work on a delta robot arm solution : https://github.com/logxen/Smoothie/compare/arthurwolf:edge...logxen:rostock
It’s untested but it gives you a good idea of what is involved : basically you just have to provide a class, with functions that convert millimeters to steps, and smoothie takes care of the rest.
Just a follow on from this, I’m planning on building a DLP based 3D printer (z-axis only) but my design uses two motors. Am I right in thinking that I can do something similar to the above and code a new module that copies the Z axis motor?
You probably don’t even need to code anything. Just choose two stepper drivers on the Smoothieboard, connect their step/dir/enable pins together, and just drive one of them as Z, both will move
If you don’t want to do any wiring, coding something is also possible, we have hooks that make this easy.
JPSB - you can do more simple than that : if you have a good quality driver with enough current output, you can also connect 2 stepper mtors to one driver !