Jerk settings for Bondtech?

Topics around mechanical design, controller and electronics. Mods & hacks welcome.
EldRick
Posts: 266
Joined: Thu Jun 22, 2017 5:55 am

Jerk settings for Bondtech?

Postby EldRick » Mon Apr 30, 2018 4:15 pm

The Bondtech extruders are substantially lighter than the OEM, reducing the moving mass by as much as 2/3.
This should greatly reduce the overshoot on direction changes, and thus reduce the "echo" ripples that appear after a sharp corner during fast printing.
The x/y jerk setting affects the rate of change of acceleration, and thus should probably be changed to accommodate the lighter extruder, but I haven't a clue by how much or even whether to go higher or lower.
Can anyone enlighten me re. how to set jerk for the Bondtechs?

Jetguy
Posts: 2352
Joined: Tue Mar 22, 2016 1:40 am
Location: In a van, down by the river

Re: Jerk settings for Bondtech?

Postby Jetguy » Mon Apr 30, 2018 4:41 pm

Just make some minor clarification.
Jerk is the threshold when NO acceleration is applied- AKA assumed infinite acceleration.

In other words, if the junction deviation (change in speed from current segment to new segment) is less than jerk value, no acceleration is applied to the motion.

Bottom line, even with a lighter extruder, you cannot massively just expect to change acceleration because that is a combination of the same rods spanning, and same motors.

But as far as jerk goes, the lower you make that value, the more times acceleration and deceleration are SUBTRACTED from the feedrate.
Again, this is a hard concept for some to first get, but what actually happens, all acceleration subtracts at the start and end of any segment from the set feed rate for that segment.

The reason this works is just understanding the alternative. Before we had acceleration firmware, the controller just sent the step pulses all the same rate or speed. That meant you had to set lower feed rates to ensure you did not exceed the motor's torque rating and skip steps, and even then were still prone to massive ringing and other artifacts since we were just slamming the mechanics. Example is that typical feed rate maximum during this time period was about 25-30mm/s absolute max.

With acceleration, you don't think twice about setting a feed rate of 60-90mm/s, let alone 150mm/s travel moves. This is because again, you really are rarely ever reaching 150mm/s but what you are doing is smoothly ramping up and slowing down before the stop at the end of a segment. So average speed over the entire segment is always less than the feed rate, and depending on the length of the segment, sometimes a fractional percentage.
This picture really shows what is happening:
trapezoide_figura.png


But again, key understanding, is that Jerk is a threshold. Below that, is no acceleration subtracted, just like the old days pre- acceleration firmware. So that's why typically 10-12mm/s max there, because you are at roughly 1/2 of the old rates 25-30mm/s to reduce ringing and chance of skipped steps to a "reasonable" threshold. Again, the idea is, the lower you make this number, the more segments that will fall under having acceleration and deceleration subtracted from the total feed rate for that segment. Raising this means less segments that meet this threashold but then higher risk and bigger artifacts on the segments that have no acceleration applied.

The acceleration value is the rate or "angle" of the ramp. The sharper the angle, the more chance of a skipped step or inducing a vibration and print artifacts mid span of a segment. Again, this picture and the angles of the ramp at the end are the acceleration values.
trapezoide_figura.png


This is all best explained in great technical detail here. http://3digitalcooks.com/2014/12/marlin-planner-101/

Jetguy
Posts: 2352
Joined: Tue Mar 22, 2016 1:40 am
Location: In a van, down by the river

Re: Jerk settings for Bondtech?

Postby Jetguy » Mon Apr 30, 2018 4:50 pm

Again, I know this sounds confusing, especially to folks who never heard or understood this before.
The first think is, you think acceleration = make it go faster.
Well, that is true, but not in the way you first think. Yes, adding acceleration and deceleration allows us to print faster.
The catch is, understanding the numbers. Feed rate is not unlike a speed limit sign along the road. It is both the desired speed and the absolute speed limit for that section of the road. The best analogy I know of is city blocks with stop signs every block. Now the speed limit is typically 25 MPH in that zone. However, given the typical car or truck, given the length of a city block, your car has defined acceleration and deceleration (braking) required distances and rates. You also don't want to snap your passenger's neck, so you probably do not go with the absolsute maximum limits of braking and take off acceleration. If you just look at pure time traveled over distance, accelerating at a reasonable rate from one stopsign, going as fast as you can before gently braking within reason for the next stopsign, you are nowhere near a 25 MPH average. In fact, they could set the speed limit at 40 MPH, and most cars and vehicles couldn't do it without sliding through a stopsign and burning the tires off. Again, if you had to instantaneously start and stop, well 6MPH might break your neck. If you can speed up and slow down gradually, then driving 25 MPH speed limit, you may not even reach it, but better than a straight 6MPH neck snapping start and stop run.

Jetguy
Posts: 2352
Joined: Tue Mar 22, 2016 1:40 am
Location: In a van, down by the river

Re: Jerk settings for Bondtech?

Postby Jetguy » Mon Apr 30, 2018 5:08 pm

Again, I guess what I'm trying to explain, I think some folks hear acceleration, and to them, that's like speeding (exceeding the feed rate).
In other words, it speeds up from an existing rate. The actual function is completely opposite, it subtracts from the feed rate making the actual movement average rate less than the set feed rate. This literally throws people for a loop.

Back to a road analogy, what acceleration does is sets up rules like when you see a corner, or look ahead for a stop sign, you slow down from the speed limit to drive a safe speed. It allows a higher speed limit legally on the road, and yet you still drive at safe speeds in a corner and speed up to the speed limit when you can. This is VS the entire road being marked 35MPH and while that may be a fast cornering speed, even dangerous in a really sharp corner, you are driving slow limited by the speed limit in the middle segments of the straight road.

Jetguy
Posts: 2352
Joined: Tue Mar 22, 2016 1:40 am
Location: In a van, down by the river

Re: Jerk settings for Bondtech?

Postby Jetguy » Mon Apr 30, 2018 5:31 pm

So to best answer your question, default Jerk threshold is 12mm/s
Just because you slapped a Bondtech on there, the REAL limiting factor was the very rods themselves, the motors, and the total span length (N2 VS and N2 build area in XY). So as such, the 12mm/s jerk is about as high as is reasonable for many printers- especially the Raise3D using standard stepper drivers and 8mm round rods.
Going lower values than 12mm/s will reduce ringing and other motion related artifacts.
I guess another thing to understand here is that 1mm/s second change in Jerk is a HUGE jump. This is a very sensitive setting.
12mm/s to 11mm/s is a significant jump, 11-10 is another jump. Below 10 will be silky smooth motion, but begins to affect print times.

Now, default acceleration is 1000mm/s for XY.
Travel is the same 1000mm/s.
Max XY acceleration is 9000mm/s

So if you were to change acceleration, travel would be my first place to play with not impacting print line quality. Here, a jump of 100mm/s is more the step size to play with.
The other thing is, and I'm not an expert and need to research more, is what gcode defines a travel move to firmware so the travel rate is invoked. Same with Max rate, when is either default or travel not invoked, thus falling on to max rate? I would definitely not increase max rate.
As far as I know, a travel move is a G0 and G1 moves are all applied the default rate. That said, there is a quirk in the gcode standard. A g0 move is not a coordinated move. In other words, it in theory is not a straight in all cases. G1 is a coordinated move and by definition all motion completes over the same time period thus making it a straight line. Not that this hugely matters, but if you were trying to travel and miss some object nearby, a coordinated move might miss the object, a true G0 might hit it. Kind of talked about here, but not well explained http://marlinfw.org/docs/gcode/G000-G001.html. FYI, I am pretty sure Marlin and many current 3D printing firmware treats even a G0 as a G1 coordinated move. Basically, I'm saying per "gcode standard", G0 is dog leg moves and G1 is proper interpolated moves.
DogLegMove.jpg

The point being, does ideamaker produce G0 moves in gcode for travel moves?
If so great, they get the travel acceleration rate set in firmware.
Otherwise, it's possible default acceleration rate affects pretty much all moves, since the slicer is not generating G0 travel moves specifically. Again, things probably should be looked at more, just to know where we stand.

Jetguy
Posts: 2352
Joined: Tue Mar 22, 2016 1:40 am
Location: In a van, down by the river

Re: Jerk settings for Bondtech?

Postby Jetguy » Mon Apr 30, 2018 5:43 pm

Just to recap, here's the basic advice and if someone has different advice and testing, that's great, but here it is on face value.
#1 Changing to a lighter Bondtech upgrade is a great thing, but won't instantly allow that much faster printing.
#2 In fact, in just thinking about #1 I think the Trinamic TMC2100 stepper drivers and the known skipped step issue- probably strongly consider the TMC22XX driver with stealtchop 2. Again, weight has little to do with this, we have other limits in the system.
#3 You could just raise your feed rates in your slicing profile until quality begins to drop off or skipped steps happen.
#4 If you previously lowered jerk from a default of 12mm/s to reduce ringing, then you can try raising it back up to 12mm/s. you can even get brave and try 13, 14, and even 15mm/s just to see how far you go before skipping steps. Just keep in mind, higher value increases ringing.
#4 You can play with acceleration values, first raising travel from 1000mm/s in increments of 100mm/s. Depnding on the slicer, it may or may not be producing many G0 moves, so this may or may not affect the print.
#5 You can increase default acceleration for XY. Again, starts at 1000mm/s, increase at 100mm/s steps, see what she does. Again, in theory, this increases ringing and chances of skipped steps.

EldRick
Posts: 266
Joined: Thu Jun 22, 2017 5:55 am

Re: Jerk settings for Bondtech?

Postby EldRick » Mon Apr 30, 2018 6:39 pm

Wow - thanks for the explanation, Jetguy.
My trivial experience agrees: while having no idea what I was doing, I had run the x/y jerk up to 15, and noticed quite a bit more ringing.
Later, for a recent print I had set it down to 9, noticed how quietly the N2 extruder was running, and got nice clean corners without any knobs on them.

Fiesel
Posts: 12
Joined: Wed Jan 24, 2018 3:42 pm

Re: Jerk settings for Bondtech?

Postby Fiesel » Tue May 01, 2018 1:47 pm

Max working jerk for me is 15mm/sec with bondtech dual direct.
But I usually still go for 12 because of additional printer noise and print times were not significantly lower with my workloads.
Haven't played with acceleration yet.
Additional note for Simplify3d users: S3D didn't use G0 command once in 30 gcode files I checked. Its G1 all the way.

MDVolle
Posts: 22
Joined: Fri Oct 20, 2017 9:00 pm

Re: Jerk settings for Bondtech?

Postby MDVolle » Tue May 08, 2018 12:25 am

Jetty - you have nearly unlimited patience....

I print a lot of small parts and am running my jerk down to 8 - most ringing is gone and a huge amount of printing noise is gone - I love that I can back it down as needed with the new software -

Where I found difficulties with small parts is areas where there are short spans of infill and higher speeds for infill resulted in horrible vibration and sometimes nearly walked the printer off my desk - with jerk reduced, the problem still exists but is almost automatically softened to a very reasonable level without a huge increase in print time. Where the printer can get a longer run going in some direction, limiting jerk doesn't limit speed or require reducing acceleration - it only addresses the points where acceleration is trying to change too quickly.

As a home printer - reducing jerk for printing after 10:00 also = being less of a jerk, while still printing after 10:00 - the reduction in noise is very noticeable.

User avatar
JohnSays
Posts: 547
Joined: Tue Apr 26, 2016 2:42 pm
Location: Saint Petersburg, FL

Re: Jerk settings for Bondtech?

Postby JohnSays » Sat May 19, 2018 6:15 pm

Awesome JetGuy. Thanks!
- John
2 Raise3D N2 Duals, V2 nozzles, Bondtech BMGs, adjustable table, Panucatt SD2224 drivers


Return to “Hardware”

Who is online

Users browsing this forum: Polarbehr and 4 guests