えるいーだーマニュアル
読み取り中…
検索中…
一致する文字列を見つけられません
マクロ機能

このページではマクロ機能を紹介します

複数のLEDを設定ファイルに従ったパターンで発光させます。
このページの最後にサンプルを掲載しています

画面の説明

通常のマクロ実行

通常のマクロ実行画面です。普段はON とOFF を使用します

各部の説明は以下の通りです
Editモードになります
② マクロを実行します。JSONファイル(後述)で指定したパターンでLEDが発行します
③ マクロを停止します
④ タイトルです

編集モード

マクロ編集中の画面です。
各部の説明は以下の通りです
① 全ての編集を破棄して マクロ実行画面に戻ります
② チェックを付けたマクロを削除します
③ 新しいマクロを追加します。マクロファイルインポート画面に移動します。
④ チェックを付けると削除対象になります

マクロファイルインポート

マクロファイルインポート画面です。
「ファイル選択」をクリックするとファイル選択ダイアログが表示されます。

ダイアログでJSONファイルを選択してください。長押しすると複数ファイルを選択出来ます。

覚え書き
通常はJSONファイルを自動的に抽出し、他のファイルは選択出来ませんがAnroid8/9`は抽出出来ないので無関係なファイルを選択出来てしまいます
頑張って正しいファイルを選択してください
警告
Androidでは電文作成時に512バイトを超えるデータ送信出来ません。そのためJSONファイルが複雑だとインポートに失敗します
現在その制限を超えて送信出来るような方法を考えています
その他の制限はJSONファイルの仕様を参照してください]

JSONファイルの仕様

えるいーだーがインポート出来るJONファイルの仕様です。

JSONの仕様

このページはえるいーだーがインポート出来るJONファイルの仕様を解説します

仕様

JSONファイルは以下のような構成になっています ただ、仕様を見ても大抵の人は「なんのこっちゃ」としかならないと思うのでサンプルを見てください


1. 全体データ

全体的なデータを示します

項目 内容 備考
ID 数値 人間が管理するための識別子です。自分の管理しやすい番号を付けてください
タイトル 文字列 マクロのタイトルです。えるいーだーのアプリ上で表示されます
わかりやすい名前を付けてください
シーケンスデータ - シーケンスデータ参照

2. シーケンスデータ

シーケンスデータの基本部分です

項目 設定値 備考
シーケンス個数 0-255 何回分のシーケンスがあるか記載します
人間がわかりやすくするためにあるだけです。プログラムは無視します
繰り返し処理 0 or 1 0=1回だけで終了 1=繰返し
シーケンス内容 配列 シーケンス内容参照

3. シーケンス内容

シーケンス内容の詳細部分です。ここでLEDをどのように点灯させるかを指定します

項目 設定値 備考
LED個数 1-8 このシーケンスで点灯させるLEDの数です
人間にわかりやすいように付けているだけです。プログラムは無視します
シーケンス保持時間 10-4200000000 このシーケンスを何ミリ秒保持するかを指定します
10ミリ秒単位で指定します(1ms単位の数値は10msに切り上げられます
※1
LED動作情報 配列 LED動作情報参照

4. LED動作情報

LED動作情報の詳細部分です。ここでLEDの明度を指定します

項目 設定値 備考
LED番号 1-8 どのLEDを操作するかを指定します
1が一番左、8が一番右です
明度 0-100 LEDの明度を指定します
0が消灯、100が最大点灯です

※1

32ビットの符号なし整数(約42日)で保持しているのですが、実際のところ試したわけではないので
そんなデカい数値を入れて正常に動作するかわかりません

サンプル

このJSONファイルのサンプルはLEDを順番に1個ずつ点灯させていくパターンです

{
"ID": 2,
"タイトル": "流れるような動き1",
"シーケンスデータ": {
"シーケンス個数": 8,
"繰り返し処理": 1,
"シーケンス内容": [
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 1, "明度": 100 }, { "LED番号": 8, "明度": 0 } ]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 2, "明度": 100 }, { "LED番号": 1, "明度": 0 } ]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 3, "明度": 100 }, { "LED番号": 2, "明度": 0 } ]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 4, "明度": 100 }, { "LED番号": 3, "明度": 0 } ]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 5, "明度": 100 }, { "LED番号": 4, "明度": 0 } ]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 6, "明度": 100 }, { "LED番号": 5, "明度": 0 } ]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 7, "明度": 100 }, { "LED番号": 6, "明度": 0 } ]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [ { "LED番号": 8, "明度": 100 }, { "LED番号": 7, "明度": 0 } ]
}
]
}
}

上記のサンプルはLEDを以下のような順番で点灯・消灯させます。消灯も忘れないでください
各シーケンスでのLEDの明度(0〜100)を示します。
「-」は、そのシーケンスで明度の指定がないことを意味します。

シーケンス番号 保持時間 (ms) LED1 LED2 LED3 LED4 LED5 LED6 LED7 LED8
1 300 100 - - - - - - 0
2 300 0 100 - - - - - -
3 300 - 0 100 - - - - -
4 300 - - 0 100 - - - -
5 300 - - - 0 100 - - -
6 300 - - - - 0 100 - -
7 300 - - - - - 0 100 -
8 300 - - - - - - 0 100

実際の実行例

サンプルの一覧です

このページはえるいーだーで使用するJSONのサンプルを紹介します

01.点灯→消灯

1回だけ点灯して終了する基本的なパターンです

{
"ID": 1,
"タイトル": "見本",
"シーケンスデータ": {
"シーケンス個数": 2,
"繰り返し処理": 0,
"シーケンス内容": [
{
"LED個数": 1,
"シーケンス保持時間": 1000,
"LED動作情報": [{ "LED番号": 1, "明度": 100}]
},
{
"LED個数": 1,
"シーケンス保持時間": 1000,
"LED動作情報": [{ "LED番号": 1, "明度": 0}]
}
]
}
}

02.点灯→消灯 繰り返し

先ほどは1回点滅したらそのまま終了しましたが、繰り返し処理を指定するとずっと繰り返します 繰り返し処理1に変更しただけです

{
"ID": 2,
"タイトル": "見本_繰返し",
"シーケンスデータ": {
"シーケンス個数": 2,
"繰り返し処理": 1,
"シーケンス内容": [
{
"LED個数": 1,
"シーケンス保持時間": 1000,
"LED動作情報": [{ "LED番号": 1, "明度": 100}]
},
{
"LED個数": 1,
"シーケンス保持時間": 1000,
"LED動作情報": [{ "LED番号": 1, "明度": 0}]
}
]
}
}

03.LED2個

今度は2個のLEDを交互に点灯させます

{
"ID": 3,
"タイトル": "LED2個",
"シーケンスデータ": {
"シーケンス個数": 2,
"繰り返し処理": 1,
"シーケンス内容": [
{
"LED個数": 2,
"シーケンス保持時間": 1000,
"LED動作情報": [{"LED番号": 1,"明度": 100},{"LED番号": 2,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 500,
"LED動作情報": [{"LED番号": 1,"明度": 0},{"LED番号": 2,"明度": 100}]
}
]
}
}

04.回転させてから全点灯させて暗くなる

1-6のLEDをくるくる回らせてから、全点灯させて徐々に暗くするパターンです
1-3と4-6が対になっているので、わざわざこんなふうにしないで1-3だけ設定して、LEDは2個を二股にしてもいいかも

覚え書き
このサンプルで1-6までしか指定していませんが、7,8を個別に発光する機能を使って独立してスマホから制御出来ます
{
"ID": 0,
"タイトル": "回転からぱっ",
"シーケンスデータ": {
"シーケンス個数": 15,
"繰り返し処理": 1,
"シーケンス内容": [
{
"LED個数": 2,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 1,"明度": 100},{"LED番号": 4,"明度": 100}]
},
{
"LED個数": 4,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 1,"明度": 0},{"LED番号": 4,"明度": 0},{"LED番号": 2,"明度": 100},{"LED番号": 5,"明度": 100}]
},
{
"LED個数": 4,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 2,"明度": 0},{"LED番号": 5,"明度": 0},{"LED番号": 3,"明度": 100},{"LED番号": 6,"明度": 100}]
},
{
"LED個数": 4,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 3,"明度": 0},{"LED番号": 6,"明度": 0},{"LED番号": 1,"明度": 100},{"LED番号": 4,"明度": 100}]
},
{
"LED個数": 4,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 1,"明度": 0},{"LED番号": 4,"明度": 0},{"LED番号": 2,"明度": 100},{"LED番号": 5,"明度": 100}]
},
{
"LED個数": 4,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 2,"明度": 0},{"LED番号": 5,"明度": 0},{"LED番号": 3,"明度": 100},{"LED番号": 6,"明度": 100}]
},
{
"LED個数": 6,
"シーケンス保持時間": 100,
"LED動作情報": [{"LED番号": 1,"明度": 0},{"LED番号": 2,"明度": 0},{"LED番号": 3,"明度": 0},{"LED番号": 4,"明度": 0},{"LED番号": 5,"明度": 0},{"LED番号": 6,"明度": 0}]
},
{
"LED個数": 6,
"シーケンス保持時間": 100,
"LED動作情報": [{"LED番号": 1,"明度": 100},{"LED番号": 2,"明度": 100},{"LED番号": 3,"明度": 100},{"LED番号": 4,"明度": 100},{"LED番号": 5,"明度": 100},{"LED番号": 6,"明度": 100}]
},
{
"LED個数": 6,
"シーケンス保持時間": 100,
"LED動作情報": [{"LED番号": 1,"明度": 80},{"LED番号": 2,"明度": 80},{"LED番号": 3,"明度": 80},{"LED番号": 4,"明度": 80},{"LED番号": 5,"明度": 80},{"LED番号": 6,"明度": 80}]
},
{
"LED個数": 6,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 1,"明度": 70},{"LED番号": 2,"明度": 70},{"LED番号": 3,"明度": 70},{"LED番号": 4,"明度": 70},{"LED番号": 5,"明度": 70},{"LED番号": 6,"明度": 70}]
},
{
"LED個数": 6,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 1,"明度": 50},{"LED番号": 2,"明度": 50},{"LED番号": 3,"明度": 50},{"LED番号": 4,"明度": 50},{"LED番号": 5,"明度": 50},{"LED番号": 6,"明度": 50}]
},
{
"LED個数": 6,
"シーケンス保持時間": 150,
"LED動作情報": [{"LED番号": 1,"明度": 40},{"LED番号": 2,"明度": 40},{"LED番号": 3,"明度": 40},{"LED番号": 4,"明度": 40},{"LED番号": 5,"明度": 40},{"LED番号": 6,"明度": 40}]
},
{
"LED個数": 6,
"シーケンス保持時間": 100,
"LED動作情報": [{"LED番号": 1,"明度": 30},{"LED番号": 2,"明度": 30},{"LED番号": 3,"明度": 30},{"LED番号": 4,"明度": 30},{"LED番号": 5,"明度": 30},{"LED番号": 6,"明度": 30}]
},
{
"LED個数": 6,
"シーケンス保持時間": 100,
"LED動作情報": [{"LED番号": 1,"明度": 15},{"LED番号": 2,"明度": 15},{"LED番号": 3,"明度": 15},{"LED番号": 4,"明度": 15},{"LED番号": 5,"明度": 15},{"LED番号": 6,"明度": 15}]
},
{
"LED個数": 6,
"シーケンス保持時間": 500,
"LED動作情報": [{"LED番号": 1,"明度": 0},{"LED番号": 2,"明度": 0},{"LED番号": 3,"明度": 0},{"LED番号": 4,"明度": 0},{"LED番号": 5,"明度": 0},{"LED番号": 6,"明度": 0}]
}
]
}
}

05.流れるような動き

1から8のLEDを順番に点灯させていくパターンです
ついでに、徐々に明るさを落としていきます

{
"ID": 2,
"タイトル": "流れるような動き",
"シーケンスデータ": {
"シーケンス個数": 8,
"繰り返し処理": 1,
"シーケンス内容": [
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 1,"明度": 100},{"LED番号": 8,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 2,"明度": 90},{"LED番号": 1,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 3,"明度": 80},{"LED番号": 2,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 4,"明度": 70},{"LED番号": 3,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 5,"明度": 60},{"LED番号": 4,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 6,"明度": 50},{"LED番号": 5,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 7,"明度": 40},{"LED番号": 6,"明度": 0}]
},
{
"LED個数": 2,
"シーケンス保持時間": 300,
"LED動作情報": [{"LED番号": 8,"明度": 30},{"LED番号": 7,"明度": 0}]
}
]
}
}