Hi,
I builded an Egg-Bot myself. Now I've mounted stepper motors with 400 fullsteps per revolution to be able to draw at a higher resolution.
I made some speedtests. As the new motors are 56mm 1,7A 0,89Nm I guess I can drive them pretty fast.
But when I tried more than 1000 steps per second the thing goes crazy. The pen-motor jumps very quickly than
the stepper is stalling. this happends even at 1100. While 1000 steps per second is moving the pen quite easy.
Is this a problem of the firmware? If speeds higher than 1000 steps / sec where used the firmware gets out of snyc?
does anybody now how to manage that?
best regards
Stefan
Comments
Have you selected the "Egg (x) axis wraps around" in the options tab?
RGDS
Ragnar
I plot designs 6400 wide on my 3200 pixel eggbot (1.8° motor) without problems
( with the "Wrap around" option enabled )
The largest canvas size I have used was 32000 pixels (to get a 10 turn spiral of text on the egg - the text go between diagonal corners).
What happens if you plot a continuos line?
I might get a 0.9° motor for some experimentation, reckon the added resolution won't be of much use since the arch length for a 48mm diameter egg will be 0.047mm/microstep for the eggmotor and 0.069mm/microstep for the pen (70mm dia circle). What's your experience plotting with this motor (apart from the above problems).
RGDS
Ragnar
Good catch on the coding.
Using "hard-coded" values in (any) code is a 'pain in the neck".
It' is used "all over" in the inkscape extensions,
I have changed most of my extensions where I need higher default values - like in the
"Render - Parametric curves" the max value for the independent variable "t" is 1000,
if I use the "degrees" option this will plot less than three "revs:" I have set it
to 100000 in the "param_curves.inx" - I then store the extension files in my %appdata%
folder ("C:\Users\Ragnar\AppData\Roaming\inkscape\extensions"on my win7 system)
- the files here will not be deleted by uninstall / install of Inkscape.
You can do the same to increase the too low step/second value in the eggbot.inx file.
Having experimented with higher step values in my standalone driver program my motor fails to move fast as it is not accelerated or ramped up/down.
How do you overcome this?
For the pen arm play you will have to 'design out" the play.
I agree that the original design is "clever" and very simple doing a very good job.
Two changes to the original design would be beneficial.
In the original design the pen tip moves along an arc when the pen is lifted, when changing pens the getting the "new" pen height just a tiny fraction different from the previous pen height will introduce a "large" offset along the X-axis. I am working on a design where the pen moves straight up/down when lifted/lowered to remedy this. (there are already one in thingiverse).
Another "problem" in original design is that it's possible to "twist" the pen along the x-axis as the hinge part is not stiff enough. (using the optional "stiff" hinge almost eliminates this problem though).
I use extra force (provided by a rubber-band) to keep the pen down as some of my pens require this "extra" force to work.
The RC-Servo does not "like" the constant force provided by the rubber band in the up position.
I try to come up with something "simple" that can be mass-produced using the existing technology (laser cutter) of EMS.
Currently I have a design on my napkin using a wedge (moved by the servo) lifting the pen.
Another change I would like is to move the pen arm servo off the pen arm to reduce the "moment of inertia".
By having the servo link operating in the center of the pen arm motor axis the servo can be attached to the eggbot frame.
Good luck "pimping" your eggbot ;-)
Thanks to the EMS team for providing me hours and hours of fun!
RGDS
Ragnar
nTime = int( math.ceil(nTime / 10.0))
I would appreciate any code polishing that you are interested to perform, especially ones that help to remove fixed factors that should be changeable. However, please keep in mind that our primary concern in "official" Eggbot driver software is reliability-- and we have in the past gone so far as to remove features that reduced reliability.
There are a great many improvements that are possible. However, we have made the decision to implement the Eggbot software within the framework of an Inkscape extension, which does have some (well, many) restrictions on what is possible.
The Eggbot control software has, at times past, included separate file saving and reading capabilities, and live buttons to control manual movements. However, we were also plagued by poor reliability, and (especially) poor cross-platform compatibility. I am the one that made the decision to strip the software down to be a "real" Inkscape extension, and it has had a very positive effect in that the software is generally quite reliable. However, I do also feel quite limited by it, and we have often thought of using an entirely different approach.
The GUI for the extension is defined in the .inx file; only a few types of GUI elements are possible, and (most unfortunately) only the "Apply" button can actually launch the program. There are some possibilities for how to get around this-- for example, one might imagine an extension that puts the Eggbot into "live arrow key" mode, until you hit the escape key. Or, one could use the Extension framework to launch an independent program (e.g., RoboPaint, in its Eggbot painting mode), rather than a "true" Inkscape extension.