記事一覧

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Johnny-Fiveでマイコン制御12 - LED

○ Ledオブジェクトを作成する

 LEDを制御するには、Ledオブジェクトを使います。Ledオブジェクトは、物理的なボード上に接続されているLEDを表すオブジェクトです。Ledオブジェクトを作成するには、Ledクラスのコンストラクタを使います。引数にはLEDを接続するピンの番号を指定します。

new five.Led(ピン番号);

 

 オプションの「pin」プロパティでピン番号を指定する場合は、次のように書きます。

new five.Led({

  pin: ピン番号

});

 

 ○LEDを点灯/消灯する

 LEDを点灯するには「on」メソッドを、LEDを消灯するには「off」メソッドを使います。また、「toggle」メソッドを使うと、現在の状態を反転することができます。

 たとえば、13ピンに接続したLEDを点灯/消灯するには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(13ピンをLED制御用に設定)

  var led = new five.Led(13);

  // LEDをオン

  led.on();

  // 5(5000ミリ秒)後にLEDをオフ(消灯)

  this.wait(5000, function() {

    led.off();

  });

 

  // 10(10000ミリ秒)後に現在の状態を反転(この例ではLEDオン)

  this.wait(10000, function() {

    led.toggle();

  });

})

 

・配線図

 2016080201.png

 

LEDを点滅する

 LEDを点滅するには、「strobe」または「blink」メソッドを使います。「blink」は「strobe」のエイリアスです。間隔はミリ秒(ms)単位で指定します。コールバック関数はLEDがオン/オフするたびに呼び出されます。コールバック関数はオプションで省略できます。

strobe(間隔, コールバック関数)

blink(間隔, コールバック関数)

 

 たとえば、13ピンに接続したLED500ミリ秒間隔で点滅させるには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(13ピンをLED制御用に設定)

  var led = new five.Led(13);

  // LED500ミリ秒間隔で点滅

  led.blink(500);

});

 

○LEDの明るさを調整する

 LEDの明るさを調整するには、「brightness」メソッドを使います。明るさは0(オフ)255(最大)の整数値を指定します。「brightness」メソッドは、PWMピンに接続されたLEDで動作します。

brightness(明るさ)

 

 たとえば、11ピンに接続されたLEDを、明るさ100で点灯するには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(11ピンをLED制御用に設定)

  var led = new five.Led(11);

  // 明るさを100に設定

  led.brightness(100);

});

 

・配線図

2016080203.png 


○LEDPWMで点滅する

 LEDPWMで点滅するには、「pulse」メソッドを使います。間隔にはLEDを完全にオフにするまでの時間をミリ秒単位で指定します。LEDは、設定した時間をかけて徐々に暗くなり、完全にオフになると再びオンになり点滅します。コールバック関数はLEDがオン/オフ(完全にオフ)するたびに呼び出されます。コールバック関数はオプションで省略できます。「pulse」メソッドは、PWMピンに接続されたLEDで動作します。

pulse(間隔, コールバック関数)

 

 たとえば、11ピンに接続されたLED500ミリ秒間隔で徐々に暗くして、点滅させるには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(11ピンをLED制御用に設定)

  var led = new five.Led(11);

  // 500msかけてLEDを徐々にオフ

  led.pulse(500);

});

 

 ○LEDの点滅動作を停止する

 「blink」「strobe」「pulse」メソッドなどによる点滅動作を停止するには、「stop」メソッドを使います。

 たとえば、10秒後にLEDの点滅動作を停止し、LEDをオフにするには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(11ピンをLED制御用に設定)

  var led = new five.Led(11)

  // LED500ミリ秒間隔で点滅

  led.blink(500);

 

  // 10(10000ミリ秒)後に点滅動作を停止し、LEDをオフ(消灯)

  this.wait(10000, function() {

    led.stop().off();

  })

});

 

○LEDをフェードイン/フェードアウトする

 LEDをフェードインで点灯されるには「fadeIn」メソッドを、フェードアウトするには「fadeOut」メソッドを使います。間隔には、フェードイン/フェードアウトにかける時間を、ミリ秒単位で指定します。コールバック関数はLEDが完全にオン/オフするたびに呼び出されます。コールバック関数はオプションで省略できます。「fadeIn」「fadeOut」メソッドは、PWMピンに接続されたLEDで動作します。

fadeIn(時間,コールバック関数)

fadeOut(時間, コールバック関数)

 

 たとえば、11ピンに接続されたLED1(1000ミリ秒)かけてフェードインし、5(5000ミリ秒)後に1秒かけてフェードアウトするには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(11ピンをLED制御用に設定)

  var led = new five.Led(11);

  // LED1000ミリ秒かけてフェードイン

  led.fadeIn(1000);

  // 5(5000ミリ秒)後に

  this.wait(5000, function() {

    // LED1000ミリ秒かけてフェードアウト

    led.fadeOut(1000);

  });

});

 

○LEDを設定した明るさにフェードする

 LEDを設定した明るさにフェードするには、「fade」メソッドを使います。明るさは0(オフ)255(最大)の整数値を、時間にはフェードにかける時間をミリ秒単位で指定します。コールバック関数はLEDが完全にオン/オフするたびに呼び出されます。コールバック関数はオプションで省略できます。「fade」メソッドは、PWMピンに接続されたLEDで動作します。

fade(明るさ, 時間, コールバック関数)

 

 たとえば、11ピンに接続されたLED2(2000ミリ秒)かけて明るさ128までフェードするには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(11ピンをLED制御用に設定)

  var led = new five.Led(11);

  // LED2000ミリ秒かけて明るさ128までフェードイン

  led.fade(128, 2000);

});

 

 ○LEDをアニメーションで点灯する

 LEDをアニメーションで点灯するには、「pulse」メソッドの引数にアニメーションのオプションを指定します。

 たとえば、11ピンに接続されたLEDをアニメーションで点灯するには、次のように書きます。

var five = require("johnny-five")

var board = new five.Board();

 

board.on("ready", function() {

  // ledオブジェクトを作成(11ピンをLED制御用に設定)

  var led = new five.Led(11);

  // オプションのアニメーション設定でLEDを点灯

  led.pulse({

    easing: "linear",

    duration: 3000,

    cuePoints: [0, 0.2, 0.4, 0.6, 0.8, 1],

    keyFrames: [0, 10, 0, 50, 0, 255],

    onstop: function() {

      console.log("Animation stopped");

    }

  });

 

  // 12(12000ミリ秒)後にパルス出力を停止し、LEDをオフ(消灯)

  this.wait(12000, function() {

    led.stop().off();

  });

});

アニメーションのオプションの詳細については、こちらを参照してください。

 

○LEDをアニメーションでフェードする

 LEDをアニメーションでフェードするには、「fade」メソッドの引数にアニメーションのオプションを指定します。

 たとえば、11ピンに接続されたLEDをアニメーションでフェードするには、次のように書きます。

var five = require("johnny-five")

var board = new five.Board();

 

board.on("ready", function() {

  var led = new five.Led(11);

  // オプションのアニメーション設定でLEDをフェードイン

  led.fade({

    duration: 1000,

    cuePoints: [0, 0.2, 0.4, 0.6, 0.8, 1],

    keyFrames: [0, 250, 25, 150, 100, 125],

    onstop: function() {

      console.log("Animation stopped");

    }

  });

 

  // 2(2000ミリ秒)TLEDをフェードアウト

  this.wait(2000, function() {

    led.fadeOut();

  });

});

アニメーションのオプションの詳細については、こちらを参照してください。

スポンサーサイト

コメント

コメントの投稿

非公開コメント

ads

プロフィール

部員3号

Author:部員3号
FC2ブログへようこそ!

kindle本

最新コメント

温度計

ads

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。