contact_printer/notes/contact_printer.js

65 lines
1.1 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var RPM = 15;
var RPS = RPM / 60; //Rotations per second, from 15RPM
var D = 31.27; //mm, Diameter of core (daylight spool here) 32, or 31.5
//var D_END = 87.16;
var THICKNESS = 0.11938; //mm, 16mm = 0.0047in thick
var PITCH = 7.6;
var TOTAL = 33 * 1000;
var roll = {};
//R = √(36000 × 0.005/π + 32) = √(57.30 + 9) = 8.14 inches.
roll.diameter = function (length) {
'use strict';
var r = Math.sqrt(((length * THICKNESS) / Math.PI) + Math.pow(D / 2, 2));
return 2 * r;
};
roll.length = function (d) {
'use strict';
var len = Math.PI * (Math.pow(d / 2, 2) - Math.pow(D / 2, 2));
return len / THICKNESS;
};
//mm/s
roll.speed = function (d) {
'use strict';
var mm = d * Math.PI;
return mm * RPS;
};
var job = {};
job.pmw = {}; //15 7.5
/*
job.pmw.values = [255, 55];
job.pmw.rps = [0.1100917431, 0.06629834254];
*/
job.state = {
motor_pwm : 255,
current_rps : RPS,
start_time : 0,
end_time : 0,
estimated_time : 0
};
job.begin = function () {
'use strict';
job.state.start_time = +new Date();
//job pins set
job.state.estimated_time = 0;
};
job.simulate = function () {
'use strict';
};
job.begin();
console.dir(job.state);