Arduino資料一覧

Node.jsで可変抵抗器を使ってLEDの明るさを調整する

2017/02/27更新

対応バージョン: Node.js 4.2.6, Johnny-Five 0.10.6

Node.jsで可変抵抗器を使ってLEDの明るさを調整する。

Node.jsを動かす母艦はUbuntu 16.04とする。

結線

可変抵抗器のピンは向かって左側から電源、抵抗値出力、GNDになっているのでそれぞれ5V、A0ピン、GNDに接続する。

LEDはデジタル3番ピンをPWM出力用として使用する。

ソース

以下のようなコードを書きNode.jsで実行する。

registor.js
var five = require("johnny-five");
var board = new five.Board();

var pin_out = 3;     // LED用ピン(出力)
var pin_in  = "A0";  // 抵抗値用ピン(入力)

board.on("ready", function() {
  board.pinMode(pin_out, five.Pin.PWM);    // LED用ピンをPWM(アナログ出力)に設定

  var sensor = new five.Sensor(pin_in);    // 抵抗値取得用オブジェクト定義

  sensor.on("change", function() {         // 抵抗値が変わったら
    var val = Math.floor(this.value / 4);  // 抵抗値(0-1023)をPWM値(0-255)に変換
    board.analogWrite(pin_out, val);       // LED用ピンにPWM値を出力
  });
});
実行
% node registor.js
1487422161958 Device(s) /dev/ttyACM0  
1487422161965 Connected /dev/ttyACM0  
1487422165206 Repl Initialized  
>>

関連資料・記事

参考サイト