feedrate confusions
-
I had done a test that i have raised a query about... link bellow
https://forum.duet3d.com/topic/12130/random-test-trying-to-understand-feedrate
This is more like a continuation or followup
I moved 1 motor for 100mm at a feedrate of 100mm/min, it took 1 minute.
now i connected another motor with the exact same settings in steps/mm, current, direction, acceleration, speed, instantaneous speed changes etc in the second extruder,
Then ran a command G1 E100:100 F100
This means both the motors should move have ideally moved 100mm in 1 min.
but this was a shocker. it took 1:25min.This got me worked up and curious ath the sam time, so i connected a duex5 and two more motors.
G1 E100: 100: 100:0 F100
ran the above code and it took 1:44 minG1 E100: 100: 100:100 F100
this took 2min...so now i am confused how this works and what happens in the background... can anyone shed some light on why this happens.
-
Can you post your config.g so we can see how your motors and tools are set up? This might have a bearing on what each extruder does, ie if you have the tool set up as a mixing extruder, or different motor configurations for different motors limiting speed.
Regarding minimum speed, you can set this with the 'I' parameter in M203. Default is 30mm/min (0.5mm/s).
Ian
-
M584 X0 Y1 Z2 E3:4:5:6 ; drive remapping
; Drives
M569 P0 S1 ; Physical drive 0 goes forwards
M569 P1 S0 ; Physical drive 1 goes forwards
M569 P2 S0 ; Physical drive 2 goes backwards
M569 P3 S1 ; Physical drive 3 goes forwards
M569 P4 S0 ; Physical drive 4 goes forwards
M350 X128 Y128 Z128 E128:128:128:128 I1 ; Configure microstepping without interpolation
M92 X640.00 Y640.00 Z3200.00 E3200:3200:3200:3200 ; Set steps per mm
M566 X900.00 Y900.00 Z12.00 E120.00 ; Set maximum instantaneous speed changes (mm/min)(E120)
M203 X12000.00 Y12000.00 Z500.00 E3000.00 ; Set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z100.00 E5000.00 ; Set accelerations (mm/s^2)
M906 X855.00 Y855.00 Z1000.00 E855.00:855.00:855.00:855.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout -
@georgepaul said in feedrate confusions:
M566 X900.00 Y900.00 Z12.00 E120.00 ; Set maximum instantaneous speed changes (mm/min)(E120)
M203 X12000.00 Y12000.00 Z500.00 E3000.00 ; Set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z100.00 E5000.00 ; Set accelerations (mm/s^2)You need to repeat the values for each extruder as you did in the other commands as well with these ones. Otherwise they will most likely get a default value.
EDIT: My fault. They will auto-repeat. -
M584 X0 Y1 Z2 E3:4:5:6 ; drive remapping
; Drives
M569 P0 S1 ; Physical drive 0 goes forwards
M569 P1 S0 ; Physical drive 1 goes forwards
M569 P2 S0 ; Physical drive 2 goes backwards
M569 P3 S1 ; Physical drive 3 goes forwards
M569 P4 S0 ; Physical drive 4 goes forwards
M350 X128 Y128 Z128 E128:128:128:128 I1 ; Configure microstepping without interpolation
M92 X640.00 Y640.00 Z3200.00 E3200:3200:3200:3200 ; Set steps per mm
M566 X900.00 Y900.00 Z12.00 E120.00:120.00:120.00:120.00 ; Set maximum instantaneous speed changes (mm/min)(E120)
M203 X12000.00 Y12000.00 Z500.00 E3000:3000:3000:3000 ; Set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z100.00 E5000.00:5000.00:5000.00:5000.00 ; Set accelerations (mm/s^2)
M906 X855.00 Y855.00 Z1000.00 E855.00:855.00:855.00:855.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeoutI tried this also
-
; Tools
M563 P0 D0:1:2:3 H1 ; Define tool 0
G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C -
@georgepaul Did you also just try
G1 E100 F100
?
Since your tool is configured to have 4 extruders and probably no mixing ratio (M567
) this should already be sufficient to move all extruder steppers. What happens then in regards to duration? -
@wilriker when i send G1 E100 F100, the first extruder(E0) moves and it rotates for 1 minute.
-
@georgepaul OK, then next question: does it work correctly if you define an equal mixing ratio like
M567 P0 E1:1:1:1
and then just use
G1 E100 F100
?
-
-
@georgepaul OK, we need more information. Can you please run the following commands on your machine and post the output:
M115 M201 M203 M566 M92 M350 M906
This will print what the machine currently takes as configured values plus the current firmware version.
-
@georgepaul said in feedrate confusions:
100
M115
FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 2.0(RTOS) ELECTRONICS: Duet WiFi 1.02 or later + DueX5 FIRMWARE_DATE: 2018-06-05b3M201
Accelerations: X: 1000.0, Y: 1000.0, Z: 100.0, E: 5000.0:5000.0:5000.0:5000.0M203
Maximum feedrates: X: 12000.0, Y: 12000.0, Z: 500.0, E: 3000.0:3000.0:3000.0:3000.0M566
Maximum jerk rates: X: 900.0, Y: 900.0, Z: 12.0, E: 120.0:120.0:120.0:120.0M92
Steps/mm: X: 640.000, Y: 640.000, Z: 3200.000, E: 3200.000:3200.000:3200.000:3200.000M350
Microstepping - X:128(on), Y:128(on), Z:128(on), E:128(on):128(on):128(on):128(on)M906
Motor current (mA) - X:855, Y:855, Z:1000, E:855:855:855:855, idle factor 30% -
As a first step perhaps try upgrading the firmware to latest and see if there has been a bug fix or change that makes a difference. Check the Whats New change log as well.
And does it occur the same with x16 microstepping?
-
I haven't tried with varying micro-stepping yet.. I don't think it should make a difference because for one motor E100 F100 is perfect.
-
@Phaedrux i just tried with 1/16 microstepping... still 2 minutes
-
I just updated my firmware from 2.00 to 2.03 and ran the same tests.
M115
FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 2.03 ELECTRONICS: Duet WiFi 1.02 or later + DueX5 FIRMWARE_DATE: 2019-06-13b2Now with M567 P0 E1:1:1:1
-
G1 E100 F100 / G1 E100:0:0:0 F100 all four motors turn in 1 minute.
-
G1 E100: 100:0:0 F100 two motors turn in 2 minute.
-
G1 E100: 100: 100:0 F100 three motors turn in 3 minute.
-
G1 E100: 100: 100: 100 F100 four motors turn in 4 minute.
And without M567 P0 E1:1:1:1
-
G1 E100 F100 / G1 E100:0:0:0 F100 first motors turn in 1 minute.
-
G1 E100:100 F100 two motors turn in 2 minute.
-
G1 E100: 100:100 F100 three motors turn in 3 minute.
-
G1 E100: 100: 100:100 F100 four motors turn in 4 minute.
-
-
now that the timing has changed by itself(after updates), i am sure its nothing to do with my config.g file
-
Thinking about it that makes even sense because: with the
G1 E100:100:100:100 F100
you command to extrude a total of 400mm of filament (distributed over for extruders) with a feedrate of 100mm/min. That takes four minutes. -
@wilriker
That's what I thought too.. so i tried with X and Y axis also,G1 X100 E100 F100 ;the move took 1minute
G1 Y100 E100 F100 ;the move took 1minute
G1 X100 Y100 E100 F100 ;the move took 1minute 25 seconds -
i am just curious to know what the printer is doing behind my back
there must be some formulae running in the background. What are the variables and constants that define these movements and feedrates?