Results 11 to 20 of 55
-
12-12-2014, 03:41 AM #11
- Join Date
- Nov 2014
- Location
- Orange, CA
- Posts
- 78
if your ok with some more noise you can remove a jumper from Z and speed it up 2X by switching to 2000 steps per mm or 1/8th micro i have done this to the printer we have at school it has a massive .8 nozzle and uses 3mm abs all day so i switched a few things i changed the pulleys to 16 tooth and dropped x and y to 1/8 micro i can't tell at all in the prints But for the speed boost it has net me it was worth my time. i was at the limits at what that POS can do right around 140mm/s infill before it start skipping now i print all day with infill at 210mm/s bridges at 60mm/s rest at 100mm/s first layer at 40mm/s using hair spray
-
12-13-2014, 08:00 AM #12
CAN 42BHH48-050-24A TYPE MOTORS BE DRIVEN FASTER ?
I went into this knowing I could reliably spin the Z motors up to a linear Z axis movement of about 2.2 mm/sec. When I was trying a bunch of different settings on my printer, I found I couldn't really turn the Z motors much faster when I had RAMPS and Marlin configured for 1/4 microstepping (for 1000 steps per mm) instead of the normal 1/16 microstepping. Testing with a 10mm travel, the motors would start accelerating up fine, but just give up and sit until some slower speed when Marlin was decelerating back to a stop. I could reliably maybe get to 2.5 revs per second, from the 2.2 I already knew I could do. I was expecting more available torque as microstepping was reduced, and with it maybe a higher rotation rate. One possibility is that I was losing torque to resonance, which sounds like a common issue.
Another possibility is the "run hot" 42BHH48-050-24A type motors I have on my Z-axis. In thread MakerFarm Prusa i3 and i3v 66 oz. in. Stepper Motor Specifications, clough42 says these earlier 9.5V/0.5A motors have 20 to 30 ohms resistance and 30+ mH of inductance per coil. It seems to me that the comparatively high inductance on this motor type could be a real limiting factor in driving the motor faster.
I had previously replaced that same type motor on my extruder with a KYSAN 1124090 (4.2v, 1.5a, 2.8 ohm resistance, 4.8 mH inductance, 75 oz-in torque). As another experiment, I connected the Kysan motor to the Z stepper driver still configured for 1/4 stepping and removed the filament from the extruder. Testing with travel distances between 10 and 50 mm, I found I could reliably spin the extruder motor and gearing with hobbed bolt up to the rate necessary to get what would be 8 mm per second travel rate on the Z axis (10 revs per second). Marlin acceleration factors were left as they were.
True, the Kysan is a higher torque motor, and it's fair to assume that the mechanical drag from the extruder gearing is different than the z-rods (but to which favor I'm not sure). This test still suggested to me that as far as trying to drive the 42BHH48-050-24A motors any faster, well, they likely aren't suitable for it.
FOLLOWUP COMMENT: I did eventually replace all of my remaining 42BHH48-050-24A motors with Kysan 1124090 motors. With the Z stepper driver still configured for 1/4 microstepping, the best I could reliably get out of the Kysan Z motors was somewhere around 3.5 mm/sec. With the Z stepper driver reconfigured for 1/16 microstepping, I couldn't get much more than the 2mm/sec rate. The difference makes sense since the amount of torque available from a stepper motor goes down with increased microstepping.
NOTE: Starting about with shipments for the 10-inch i3v, MakerFarm is no longer believed to be using the 42BHH48-050-24A motors. The limitation observed here may not be applicable to the newer motors.Last edited by printbus; 02-18-2015 at 11:42 AM.
-
12-13-2014, 08:52 AM #13
ACME LEADSCREW CLARIFICATIONS
Some of my earlier information about leadscrews was misleading since I didn't know enough about them. I've corrected the earlier post(s), but this should help others from being similarly confused when starting to look at lead screws as a possible upgrade.
My misunderstanding was in assuming that an 8mm diameter leadscrew with a 2mm pitch would provide 2mm linear travel for each rotation of the rod. Turns out that's not likely.
A standard screw or threaded rod has a single thread. In that case, the linear travel possible per turn, or lead, is the same as the distance between ridges of the thread, or pitch. On an ACME type lead screw, there are usually multiple threads essentially operating in parallel. A "four start" has four threads machined into the rod. A "two start" has two. Pitch is still the distance between ridges on the thread, but it's now the distance between adjacent threads, not the same one. Here, the linear travel per turn, or lead, is the pitch multiplied by the number of thread starts. Although the thread pitch is 2mm for both, a four start 8mm diameter leadscrew will provide a lead of 8mm per turn, and a two start leadscrew will provide a lead of 4mm per turn. The amount of torque required goes up with the lead value. I've read about people having problems driving 4-start leadscrews on the Z-axis due to inadequate torque from their stepper motors.
REFERENCES:
I found this to be helpful - http://www.protoparadigm.com/news-up...n-3d-printers/, including links to other info.
Info on decoding the Tr8*8(P2) kind of label some suppliers use on their lead screw is available at - http://www.shapeoko.com/forum/viewto...=1554&start=10Last edited by printbus; 12-18-2014 at 03:34 PM.
-
12-14-2014, 12:27 AM #14
A STAB AT CALCULATING A MAXIMUM PRINT SPEED
So far, we've put a lot of faith in the achievable step rate of 16 kHz stated in http://reprap.org/wiki/Step_rates. But configuration_adv.h has a MAX_STEP_FREQUENCY parameter defined to 40000. By label alone, it sounds like we should use 40 kHz instead of 16 kHz in our calculations, right?
MAX_STEP_FREQUENCY is used in setting up a timer value in stepper.cpp. Reading the code doesn't do well at suggesting what's going on here. I found M2 vs. Marlin: Speed Calculations and a comment in Makergear M2: Z Axis Numbers helpful. Up to a step rate of 10 kHz, Marlin will create stepper interrupts at the rate required. Over a 10 kHz step rate, Marlin keeps the timer interval at 10 kHz but starts combining two steps into each interrupt. Over a 20 kHz step rate, Marlin starts combining four steps into each interrupt interval. The references suggest combining steps in each interrupt can lead to jitter since the interval between steps won't be consistent.
So, one thought is to keep the step rate below 10 kHz to stay away from this jitter. Since we only care about this when we're printing, we don't need to worry about the reduced limit for Z-axis moves (well, maybe if you're printing spiral or with ABL but then the Z axis moves are slow). If the DEFAULT_MAX_FEEDRATE value for the extruder really only comes into play for retractions, we don't need to worry about the reduced limit there either. Nor with non-printing X-Y moves. So, we can tentatively leave DEFAULT_MAX_FEEDRATE alone and deal with the 10 kHz step rate as a limit on maximum print speed we use in the slicer instead.
Revisiting our feed rate equation for X and Y, the max print speed would = ( steps per second / steps per mm). Steps per mm was previously baselined to 80 for X and Y. Plugging in the numbers we get max print speed = ( 10,000 / 80 ) or 125 mm/second. So, ignoring an obvious question on whether the hot end can keep up and whether we need to adjust for stepping that has to also occur on the extruder motor while printing, we should be able to print perhaps up to 125 mm/sec before we risk picking up the jitter effects of handling motor steps in groups of two or four instead of individually. Why not add some margin and shoot for a max print speed of 100 mm/sec?
It's at least a place to start.Last edited by printbus; 12-21-2014 at 12:21 PM.
-
12-15-2014, 08:50 AM #15
Just checking in to say that these posts have been really interesting reads and keep em coming!
-
12-15-2014, 11:33 AM #16
Thanks. I was starting to wonder. I hope to eventually provide similar background for the acceleration and jerk settings, but they're going to take some time.
EDIT: It'll take more of my time, but I'll likely try to work through acceleration and jerk testing with the existing CW motors, and then recheck things after I retrofit Kysans in for the rest of the motors. I figure it'd be interesting to see where they make a difference.
-
12-17-2014, 09:22 PM #17
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.
-
12-17-2014, 11:14 PM #18
- Join Date
- Jul 2014
- Location
- Eastern Colorado
- Posts
- 536
Dangit, you just had to post this right before I go to bed, didn't you? I'm quite interested in running this test now, and have to wait nearly 20 hours before I get a chance.
-
12-18-2014, 10:35 AM #19
TESTING Z AXIS TRAVEL WITH GCODE
I'm posting Z axis testing separately since I want to make a point with it. Here's some gcode to start with -
PREFACE: Gcode provided below always starts by homing Z as a safe thing to do, and this adds a delay to every test while it completes. There'd be other ways to go about this, by manually raising the X-carriage to some height and then running the test. I went with the safe route.
Code:; gcode for testing the Z axis G0 F120 ;prepare for a safe homing rate of 2mm/sec M201 Z5 ;prepare for a safe homing acceleration G28 Z ; home Z to initialize it M201 Z1 ; this overrides the DEFAULT_MAX_ACCELERATION for Z G0 F120 ; set travel rate to be used in mm per minute G0 Z20 ; move to Z = 20 mm G0 Z10 ; move to Z = 10 mm G0 Z20 G0 Z10
Prior experimenting with various homing feedrates had indicated I could get resonations caused by certain Z travel rates, just like I had experienced on the X axis. This gcode starts with the slow acceleration rate of 1 mm/sec per second in order to listen for them. Sure enough, adjustment of the Z motor stepper driver while the carriage was moving up and down eliminated the resonation sound here too. I later measured the current limit adjustment on the Z stepper driver set to 0.125v.
The G0 F120 feed rate is as fast as we can go with firmware built to a DEFAULT_MAX_FEEDRATE of 2 mm/sec for Z. If you want to test faster than that, you have to either upload revised firmware or change Vmax Z from the LCD Control | Motion menu. The gcode starts with homing performed at a proven speed so that any issues you have later with motor skips won't occur in a subsequent Z home. It's important to understand that settings loaded into the printer by one gcode file will remain in effect until changed by another, or changed by reset, etc.
Now it's time to fiddle with acceleration. With the gcode as provided, we see how the Z axis slowly accelerates and decelerates for our 10mm travels. Observe the MakerFarm default for Z acceleration of 5 mm/sec per second. Go higher. Try 10. 50. 100. 500. Do you observe any negative effects of a high acceleration setting?
Results with long-distance travels on Z are of marginal value since real prints won't involve those kinds of moves. Here's some different gcode -
Code:; gcode for testing rapid back and forth movements on the Z axis G0 F120 ;prepare for a safe homing rate of 2mm/sec M201 Z5 ;prepare for a safe homing acceleration G28 Z ; home Z to initialize it M201 Z5 ; this overrides the DEFAULT_MAX_ACCELERATION for Z G0 F120 ; set travel rate to be used in mm per minute G0 Z20 ; move to Z = 20 mm G0 Z19.8 ; move to Z = 19.8 mm G0 Z20 G0 Z19.8 G0 Z20 G0 Z19.8 G0 Z20 G0 Z19.8
Why would this be important? After all, a print only involves a certain number of layer shifts and speeding them up will only save some number of seconds over the print. Well, increasing the Z acceleration term would also speed up incremental height adjustments for spiral contours and printing with auto-bed-leveling, and especially speed up prints if you're lifting Z on each retraction.
In a subsequent post, I'm also going to be suggesting there's an advantage to having all the terms in the DEFAULT_MAX_ACCELERATION about the same. This is a key reason why I'm looking for an acceptable Z axis acceleration value higher than the MakerFarm default of 5 mm/sec per second. Our printers aren't a delta where the suspended hot end could bounce around on a fast move. The 0.8mm pitch Z rods are going to inherently provide some limit in how fast we can try to raise the i3v X-carriage. The aluminum v-rails provide a movement with minimal slop, compared to round rods and notorious linear bearings used on common prusas. IMO, we can accommodate some serious increase in the Z axis acceleration setting on the i3v.
But first, I feel the need for some gcode to test the extruder with.
HOMEWORK AND INDEPENDENT STUDY
Revise the second block of gcode so that the travels continue in the same direction (20.2, 20.4, 20.6, etc.). IDK, it's just something to do.
Then add something like a 200 mSec delay between moves by adding a G4 P200 dwell command between each of the multiple G0 commands. This allows you to better see each of the height adjustments. Experiment with the acceleration term again. Does a value of 500 mm/sec per second seem to work OK? Keep that in mind for later.
FOLLOWUP COMMENT: Keep in mind that the mass of the x-carriage makes it harder for the Z motors to increase the Z-axis than to lower it.Last edited by printbus; 04-14-2016 at 11:55 AM. Reason: typos in the code block comments
-
12-18-2014, 11:24 AM #20
Let me echo Gmay - I am following this with interest and look forward to doing some "homework". I'm waiting until after I get my dual itty bitty extruder going so I can do my tests with the heavier end effector. I will post any feedback.
New member with print issue
06-11-2024, 08:57 AM in Tips, Tricks and Tech Help