There are a bewildering number of
parameters in any 3D printer that affect the print speed.
I'm a novice at 3D printing, even after over a year of owning an A1 (#45), I can identify the following:
Machine & Component Design Choices. Including:
(a) the types/ratings of the stepper motors, the mass of the moving components,
(b) the choices of machine type eg. Fixed bed, moving bed, etc.
(c) the drive electronics (for the A1 – RAMPS).
Unfortunately, we're stuck with most of
those choices unless we make significant mechanical or electrical
changes.
While not impossible (for example: drilling holes in the Y mounting plate to lower it's mass), let's not consider those for the moment.
The Electrical setup of RAMPS:
(a) The current settings for the stepper motor drivers. I'm using the following settings:
X and Y .33 volts, Z(1) and E1=Z(2) .42 volts, E0 .47 volts
consult the Polulu documentation for info on how to set the current.
Motor current
affects torque developed by the stepper. Given fixed
mechanical/physical constraints this limits
the maximum speed you can achieve without loosing steps.
(b) RAMPS may
also have a computational limit on the feed rate based on it's
architecture and available computing speed.
That's a rumor, I don't
have a reference, my closest comparison is Linux EMC which runs an
interrupt/speed test on setup
and limits step rate based on the
hardware.
However, I think recall seeing it mentioned as one of the reasons for going to the Smoothie Board.
The Firmware Settings in Marlin:
These are the numbers displayed by Marlin when you enter M503 in Pronterface. I'm using:
SENDING:M503
echo:Steps per unit:
echo: M92 X128.00 Y128.00 Z1600.00 E441.00
echo:Maximum feedrates (mm/s):
echo: M203 X400.00 Y400.00 Z5.00 E45.00
echo:Maximum Acceleration (mm/s2):
echo: M201 X5000 Y5000 Z100 E10000
echo:Acceleration: S=acceleration, T=retract acceleration
echo: M204 S2500.00 T2500.00
echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)
echo: M205 S0.00 T0.00 B20000 X8.00 Z0.40 E2.50
echo:Home offset (mm):
echo: M206 X0.00 Y0.00 Z0.00
echo:PID settings:
echo: M301 P11.69 I1.10 D31.02
presumably the limits on acceleration
and step rates were derived by exhaustive testing during development.
But that may have been putting too much faith in Ezra, as the RAMPS was a substitute for the promised Smoothie drivers.
Software Settings in Slic3r: There are two places for setting print speed in the current release of Slic3r.
[I'm assuming that other popular slicing software has similar settings]
From: Print Settings-> Speed page
Speed for Print Moves
Perimeters 70 mm/s
Small Perimeters 50 mm/s
External Perimeters 75%
Infill 100 mm/s
Solid Infill 90 mm/s
Top Solid Infill 70 mm/s
Support Material 70 mm/s
Bridges 30 mm/s
Gap Fill 20 mm/s
Speed for Non Print Moves
Travel 110 mm/s
Modifiers
First layer Speed 30%
Acceleration Control (advanced)
Perimeters 0
Infill 0
Bridge 0
First Layer 0
Default 0
From: Printer Settings -> Extruder 1
Retraction
Speed 45 mm/s
Logic says that the Marlin settings
above would override any attempts by the Gcode to go above/beyond
their settings,
so the Slic3r settings have to track, to a certain extent, the Marlin settings.
One thing I never understood [or got
the opportunity to question]: Slic3r has 'first layer' settings for
print speed.
Why is it then that Ezra would recommend manually (via
the knob on the RAMPS front panel) cranking up the
speed to 120% after the first layer was printed? Why not just set the first layer speed to 80% of “normal” ???
So, Given what I've posted, would any
of you who have been operation consistently 'above and beyond' the
factory provided numbers care to share the numbers you are using, or the methods you used to get there?
Frank Pirz
Media Conversions