3D Printing: Marlin Adjusting feedrate
The Question: I'm using the Marlin firmware (1.1.0-RC7 - 31 July 2016) for a 3d printer.
Currently the printing is not perfect due to slight inaccuracies in movements
along the x and y axis. I'm trying to change the feedrate for speed along the
xy axis whilst the printer is in operation to make sure the printer stops on
time and prints accurately.
I have some code for controlling the feedrate but the problem is that I'm not
sure where I am supposed make these adjustments. In the configuration.h file I
see this code: (lines 742 and 753 )
/*line 742*/ #define HOMING_FEEDRATE_XY (50*60)
/*line 753*/ #define DEFAULT_MAX_FEEDRATE {300, 300, 5, 25} // (mm/sec)
I'm probably misunderstanding something but it seems like this sets the
feedrate to a default value which is the same as the maximum.
If the feedrate changes during printing I'm guessing it would be done in
Marlin_main.cpp but I'm not sure which part it actually changes. Can someone
point me in the right direction here?
Solutions: Please watch the whole video to see all solutions, in order of how many people found them helpful
== This solution helped 1 person ==
You have the lines to adjust the feed rate. The first one (line 742) is
relevant to the maximum feed rate XY while homing (not during printing). I
think this is not an issue in your particular case and you may leave it as it
is.
The second one (line 753) is the feed rate while printing for XY. Particularly
the numbers in the brackets refers to ( X, Y, Z, E). If your printer is moving
it may affect XY more than Z and E. So you may try to adjust the first two
numbers.
Due to the very specific situation is impossible to give you a feed rate based
on calculation because you are dealing with external accelerations caused by
the mobile situation. You will need to try and adjust it until you get right.
Another setting that may also help you to compensate the external acceleration,
if any, is the acceleration of those two axes.You should find two lines like
these:
#define DEFAULT_MAX_ACCELERATION {1500,1500,50,250}
#define DEFAULT_ACCELERATION 1500 // X, Y, Z and E max acceleration
in mm/s^2 for printing moves
However the acceleration of the axes may impact on the quality of the printing.
== This solution helped 2 people ==
You can change the maximum allowable feedrate in Configuration.h, but the
actual feedrate that is used isn't determined by your firmware. The feedrate is
specified in the G-Code file. A command like
G0 X10.0 Y15.0 Z3.0 F9000
indicates a move to (10,15,3) at a feedrate of 9000 mm/min. If F is not
specified, the last used feedrate is used.
You just have to provide the appropriate G-code commands with the feedrate you
want in them. There's no reason to modify the firmware to get a different
feedrate.
With thanks & praise to God, and with thanks to the many people who have made this project possible! | Content (except music & images) licensed under cc by-sa 3.0 | Music: www.bensound.com/royalty-free-music | Images: stocksnap.io/license & others | With thanks to user Tom van der Zanden (askubuntu.com/users/26), user make it happen (askubuntu.com/users/4715), user Greenonline (askubuntu.com/users/4762), user FeliceM (askubuntu.com/users/4388), user Curt Hayes (askubuntu.com/users/11315), user 0scar (askubuntu.com/users/5740), and the Stack Exchange Network (3dprinting.stackexchange.com/questions/2999). Trademarks are property of their respective owners. Disclaimer: All information is provided "AS IS" without warranty of any kind. You are responsible for your own actions. Please contact me if anything is amiss at Roel D.OT VandePaar A.T gmail.com.
0 Comments