私はnode.jsが初めてで、スイッチのオンイベントとオフイベントの間の経過時間を判断しようとしています(BeagleBone Blackを使用)。スクリプトは.getTime()で多少動作しますが、私が読んだものから特に正確ではありません。だから私はいくつかの調査を行い、console.time を使用しようとしましたが、私が読んだことから、この特定のアプリケーションの変数に時間値をエクスポートする方法はありません。
エンジンのバルブ開閉イベントのタイミングを計るスクリプトを作成しようとしているので、精度が最も重要です。唯一の入力は、回転するフライホイールに取り付けられた通過磁石によってトリガーされるリード スイッチです。
もっと簡潔に言うと、node.js でイベントのオン/オフを正確に計る方法はありますか?
var b = require('bonescript');
b.pinMode('P8_19', b.INPUT);
b.pinMode('P8_17', b.OUTPUT);
b.pinMode('USR3', b.OUTPUT);
b.attachInterrupt('P8_19', true, b.CHANGE, interruptCallback);
var cycle = 0;
//var t = 0;
var start, end;
function interruptCallback() {
if (b.digitalRead('P8_19') == 1)
{
console.log('Magnetic field present!');
cycle=cycle+1;
console.log ('cycle: ' + cycle);
}
else
{
//console.time('t');
start = (new Date()).getTime();
}
//console.timeEnd('t');
//console.log(t);
end = (new Date()).getTime();
console.log('elapsed time: ' + (end - start));
}
これは私が現在使用している完全なコードです。注: console.time の使用方法も示しました。
ご協力ありがとうございました!