○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();
});
})
|
・配線図
○LEDを点滅する
LEDを点滅するには、「strobe」または「blink」メソッドを使います。「blink」は「strobe」のエイリアスです。間隔はミリ秒(ms)単位で指定します。コールバック関数はLEDがオン/オフするたびに呼び出されます。コールバック関数はオプションで省略できます。
strobe(間隔, コールバック関数)
blink(間隔, コールバック関数)
|
たとえば、13ピンに接続したLEDを500ミリ秒間隔で点滅させるには、次のように書きます。
var five = require("johnny-five");
var board = new five.Board();
board.on("ready", function() {
// ledオブジェクトを作成(13ピンをLED制御用に設定)
var
led = new five.Led(13);
// LEDを500ミリ秒間隔で点滅
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);
});
|
・配線図
○LEDをPWMで点滅する
LEDをPWMで点滅するには、「pulse」メソッドを使います。間隔にはLEDを完全にオフにするまでの時間をミリ秒単位で指定します。LEDは、設定した時間をかけて徐々に暗くなり、完全にオフになると再びオンになり点滅します。コールバック関数はLEDがオン/オフ(完全にオフ)するたびに呼び出されます。コールバック関数はオプションで省略できます。「pulse」メソッドは、PWMピンに接続されたLEDで動作します。
pulse(間隔, コールバック関数)
|
たとえば、11ピンに接続されたLEDを500ミリ秒間隔で徐々に暗くして、点滅させるには、次のように書きます。
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)
// LEDを500ミリ秒間隔で点滅
led.blink(500);
// 10秒(10000ミリ秒)後に点滅動作を停止し、LEDをオフ(消灯)
this.wait(10000,
function() {
led.stop().off();
})
});
|
3.7 LEDをフェードイン/フェードアウトする
LEDをフェードインで点灯されるには「fadeIn」メソッドを、フェードアウトするには「fadeOut」メソッドを使います。間隔には、フェードイン/フェードアウトにかける時間を、ミリ秒単位で指定します。コールバック関数はLEDが完全にオン/オフするたびに呼び出されます。コールバック関数はオプションで省略できます。「fadeIn」「fadeOut」メソッドは、PWMピンに接続されたLEDで動作します。
fadeIn(時間,コールバック関数)
fadeOut(時間, コールバック関数)
|
たとえば、11ピンに接続されたLEDを1秒(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);
// LEDを1000ミリ秒かけてフェードイン
led.fadeIn(1000);
// 5秒(5000ミリ秒)後に
this.wait(5000,
function() {
// LEDを1000ミリ秒かけてフェードアウト
led.fadeOut(1000);
});
});
|
○LEDを設定した明るさにフェードする
LEDを設定した明るさにフェードするには、「fade」メソッドを使います。明るさは0(オフ)~255(最大)の整数値を、時間にはフェードにかける時間をミリ秒単位で指定します。コールバック関数はLEDが完全にオン/オフするたびに呼び出されます。コールバック関数はオプションで省略できます。「fade」メソッドは、PWMピンに接続されたLEDで動作します。
fade(明るさ, 時間, コールバック関数)
|
たとえば、11ピンに接続されたLEDを2秒(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);
// LEDを2000ミリ秒かけて明るさ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ミリ秒)後TにLEDをフェードアウト
this.wait(2000,
function() {
led.fadeOut();
});
});
|
0 件のコメント:
コメントを投稿