fix flow rate analysis

This commit is contained in:
Stewart Allen 2022-01-08 01:06:44 -05:00
commit 8d8c6bdefe

View file

@ -24,8 +24,10 @@
let lastPoint = null, let lastPoint = null,
lastEmit = null, lastEmit = null,
lastOut = null, lastOut = null,
lastE,
lastPos, lastPos,
nextType; nextType,
debugE; // set to 1 to enable flow rate analysis (console)
KIRI.Print = Print; KIRI.Print = Print;
@ -290,20 +292,22 @@
} }
// debug extrusion rate // debug extrusion rate
if (false && fdm && lastPos) { if (debugE && fdm && lastPos && pos.E) {
let dE = (absE ? pos.E - lastPos.E : pos.E); let dE = (absE ? pos.E - lastE : pos.E);
let dV = Math.sqrt( let dV = Math.sqrt(
(Math.pow(pos.X - lastPos.X, 2)) + (Math.pow(pos.X - lastPos.X, 2)) +
(Math.pow(pos.Y - lastPos.Y, 2)) (Math.pow(pos.Y - lastPos.Y, 2))
); );
let dR = (dE / dV); // filament per mm let dR = (dE / dV); // filament per mm
if (dV > 2 && dE > 0.001 && (dR < 0.025 || dR > 0.35)) { if (dV > 2 && dE > 0.001) {
console.log(height.toFixed(2), dV.toFixed(2), dE.toFixed(3), dR.toFixed(5)); let lab = (absE ? 'aA' : 'rR')[debugE++ % 2];
console.log(lab, height.toFixed(2), dV.toFixed(2), dE.toFixed(3), dR.toFixed(4), pos.F.toFixed(0));
} }
} }
// add point to current sequence // add point to current sequence
addOutput(seq, point, true, pos.F, tool).retract = retract; addOutput(seq, point, true, pos.F, tool).retract = retract;
lastPos = Object.assign({}, pos); lastPos = Object.assign({}, pos);
lastE = pos.E;
} }
lines.forEach(function(line, idx) { lines.forEach(function(line, idx) {