Results 1 to 10 of 55
Threaded View
-
12-17-2014, 09:22 PM #11
TESTING XY TRAVEL MOVEMENTS WITH GCODE
Some simple gcode files were useful in checking out the mechanics of my i3v. Here are sets of gcode for use with the X and Y axes, with Z and the extruder to follow later. Copy the gcode into text files and "print" them either via the SD card or your host software. You don't need to heat up the hot end to run these. I used the Repetier Host gcode editor to adjust values between prints.
Code:; gcode for testing the X axis ; be sure to manually position Y and Z first to clear bed clips etc. G28 X ; home X to initialize it M201 X500 ; this will override the DEFAULT_MAX_ACCELERATION for X G0 F12000 ; set travel rate to be used in mm per minute G0 X180 ; move to X = 180 mm G0 X20 ; move to X = 20 mm G0 X180 G0 X20 G0 X180 G0 X20 G0 X180 G0 X20
You can change the M201 command value to get a feeling for the effect different max acceleration values have. Go lower and you'll be able to grasp how a low acceleration value can keep the X carriage from getting very fast - it will eat up too much of the available distance accelerating and then decelerating. You can play around with higher (faster acceleration) values, but above some point you won't see any difference - perhaps because the DEFAULT_ACCELERATION or the DEFAULT_XYJERK factors are coming into play. We'll get into those settings later.
You can use this test to determine whether you have motor skipping issues at the DEFAULT_MAX_FEEDRATE value you've settled on for X. If you don't know how to tell if your motor is skipping keep cranking the value up. You'll figure it out.
I've noticed the X belt occasionally resonating over by the X-motor on some prints. Running this gcode indicated the belt resonated reliably at the 12000 mm/minute max feed rate rate. By experimenting with the value in the G0 F command, I determined the belt resonation occurs until I drop down to about a 9500 mm/min feed rate, or what would be about 158 mm/sec for X in DEFAULT_MAX_FEEDRATE. This is above the max printing speeds we've discussed, so the belt flutter would only be occurring on travel moves. I'm not sure the flutter on travel moves would affect print quality, so it might be a non-issue. Yeah, I could add more adhesive Velcro loop to the belt channel of the aluminum extrusion to dampen the resonation, but I want to find a more elegant solution that doesn't risk catching on the X-carriage belt mount hardware. Until then, I'm sticking with a max feed rate of 158 mm/sec so I simply know the belt flutter won't be there.
I've also noticed bursts of a resonation coming from the X-carriage and extruder on pretty much every print, but I've never been able to determine the source of it. Running this test, the resonation would briefly occur during the acceleration and deceleration on each leg. More experimenting with the G0 F command revealed it happens around a feed rate of 3500 mm/min, or 58 mm/sec. I still couldn't pin point exactly where the noise is coming from, but found I could manage it by adjusting the stepper driver trimpot for the X-motor.
The long travel moves were instrumental in playing with the X stepper driver trimpot, getting a feeling for what setting was too low (motor skipped a lot), and too high (leading to the resonation noise in the extruder). I looked for a setting that gave me the ability to overcome some hand pressure on the x-carriage at the 158 mm/sec feed rate while still not making a lot of step noise. I think I've now got a better real-world adjustment on the X-motor driver than I've had before and no voltmeter was used. FWIW, I did later measure the current limit setting at just 0.10v.
This testing also proved, contrary to what I've said several times, that the high resistance 9.5V motors that "run hot" are in fact affected by the stepper driver current limit adjustment.
Similar gcode for Y:
Code:; gcode for testing the Y axis ; be sure to manually position X and Z first to clear bed clips etc. G28 Y ; home Y to initialize it M201 Y500 ; this will override the DEFAULT_MAX_ACCELERATION for Y G0 F12000 ; set travel rate to be used in mm per minute G0 Y180 ; move to Y = 180 mm G0 Y20 ; move to Y = 20 mm G0 Y180 G0 Y20 G0 Y180 G0 Y20 G0 Y180 G0 Y20
FOLLOWUP COMMENT: One thought is that the X and Y belt flutter is related to belt tension, but earlier attempts at adjusting it weren't very conclusive. Now I at least know there's a way to repeat the flutter at will and observe how things like belt tension might make a difference.
HOMEWORK AND INDEPENDENT STUDY
Put together some gcode that moves around the print bed in a square. I'm envisioning a future post where we use such a test with concentric squares spaced at 10 or 20 mm so we can see cumulative effects of jerk, acceleration and feed rate settings across different sizes of square movements...
REFERENCES
The test concept leverages discussion near the end of https://github.com/ErikZalm/Marlin/issues/305#issueLast edited by printbus; 12-21-2014 at 12:24 PM.
Please explain to me how to...
05-13-2024, 03:08 PM in 3D Printer Parts, Filament & Materials