# 2.4 ワールド オブ モジュールのメイクコード(MakeCode)専用ブロックについて
# 拡張機能(パッケージ)について
MakeCodeでは、利用するセンサー・モジュールや製品に応じて、拡張機能(パッケージ)を追加することが可能です。 全てのセンサー・モジュールや製品にパッケージがあるわけではありません。パッケージはメーカーや有識者等によって作成されるモノです。
予め各メーカーにて、各自の製品のパッケージを作成することで、ユーザーはそのパッケージをMackCodeの該当プロジェクトに追加(インポート)することが可能です。 そうすることで、用意された専用ブロックを利用して、より簡単にそのセンサー・モジュールや製品のコントロールが可能です。
中上級者においては、パッケージがなくても、それぞれのセンサー・モジュールの動作原理が理解できれば、それに合わせてコントロールすることも可能です。 パッケージはあくまで、そのコントロールをより簡単にしてくれるツールです。
# 拡張機能の追加方法
※パッケージのインポート方法
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | Google Chromeを開き、https://makecode.microbit.org/ (opens new window)にアクセス。 | makecodeのmicro:bit用画面が表示される。 | |
02 | 新しいプロジェクトをクリック。 | プロジェクトの名前を入力するウィンドウが表示される。 | |
03 | プロジェクトの名前に「iftiny-inport-library」を入力し、「作成」ボタンをクリック。 | プロジェクトを作成。 | |
04 | ブロックエリアの「高度なブロック」をクリック。 | 非表示のブロックが表示される。 | |
05 | 「拡張機能」をクリック。 | ー | |
06 | 拡張機能のページが表示される。検索バーで必要なパッケージを検索するか、表示されているよく使われるパッケージを選ぶことが可能。 | 今回は、検索バーで指定のURLを入力する。 | |
07 | 検索バーで「https://github.com/YahboomTechnology/Module-World」を入力し、検索する。 | ー | |
08 | 該当パッケージの内容が表示される。クリックしてインポートを行う。 | 必要としているパッケージであることを確認。 | |
09 | ー | パッケージをインポート。 | |
10 | ブロックエリアに該当ブロックが追加される。 | ー | |
11 | 「ModuleWorld_Digatal」をクリックし、該当モジュール用ブロックを表示。 | ー | |
12 | 「ModuleWorld_Analog」をクリックし、該当用ブロックを表示。 | ー | |
13 | 「ModuleWorld_PWM」をクリックし、該当モジュール用ブロックを表示。 | ー |
参考:本製品は、イフティニー ストアでお買い求めいただけます
当社はmicro:bitの公認正規販売店です。国内のmicro:bit利用推進を行っております。
micro:bit専門ストア「イフティニー ストア(iftiny store)」 (opens new window)にて、各種micro:bit関連製品の販売をしております。
# 温度湿度センサーモジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | デジタル |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
OUT | シングルバスのデジタルシグナルを出力 |
NC | 接続不要 |
VCC | 電源 3.3V / 5V |
測定範囲 | 温度:0〜50℃ 湿度:20-90%RH |
精度 | 温度:±2℃ 湿度:2±5%RH |
分解能 | 温度:1℃ 湿度:1%RH |
# MakeCodeブロックの利用方法
温度・湿度センサーモジュールをmicro:bitのPO,P1の該当ポートに接続し、以下のブロックを使って、 温度・湿度を取得することが可能です。
以下のプログラムを利用すると、常に現在の温度・湿度をmicro:bitのディスプレイに表示します。
※ micro:bitにプログラムを書き込んでも、測定値が表示されない場合、micro:bit背面のリセットボタンにて、リセットをしてください。
測定する対象を温度(摂氏、華氏)、湿度から選択することが可能です。
選択 | 内容 |
---|---|
temperature(℃) | 温度(摂氏、華氏) |
temperature(°F) | 温度(摂氏、華氏) |
humidity(0-100) | 湿度 |
接続するポートを選択することが可能です。
# 超音波距離センサーモジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | デジタル |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
ECHO | 受信信号 |
TRIG | 送信信号 |
VCC | 電源 3.3V / 5V |
検出距離 | 2cm〜500cm |
精度 | 0.5cm |
# MakeCodeブロックの利用方法
超音波距離センサーモジュールをmicro:bitのPO,P1の該当ポートに接続し、以下のブロックを使って、 障害物までの距離を取得することが可能です。
以下のブロックを利用すると、常に現在の計測距離をmicro:bitのディスプレイに表示します。
接続するポートを選択することが可能です。
# 赤外線人感センサーモジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | デジタル |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
NC | 接続不要 |
OUT | シングルバス デジタル信号出力 |
VCC | 電源 3.3V / 5V |
# MakeCodeブロックの利用方法
赤外線人感センサーモジュールをmicro:bitのPO,P1の該当ポートに接続し、以下のブロックを使って、 人が近くにいるかどうかを検知することが可能です。
以下のプログラムを利用すると、人がいる時にmicro:bitのディスプレイに「1」表示し、いない時に「0」表示します。
ブロックには、人がいる・人がいないことを設定することが可能です。
選択 | 内容 |
---|---|
NoPIR | 非検知 |
OPIR | 検知 |
接続するポートを選択することが可能です。
# 赤外線モジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | デジタル |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
NC | 接続不要 |
OUT | デジタル信号出力 |
VCC | 電源 3.3V / 5V |
# MakeCodeブロックの利用方法
赤外線モジュールをmicro:bitのPO,P1の該当ポートに接続し、以下のブロックを使って、 センサーの前方近距離に障害物があるかどうかを検知することが可能です。
以下のブロックを利用すると、障害物がある時にmicro:bitのディスプレイに「1」表示し、ない時に「0」表示します。
ブロックには、障害物がある・ないことを設定することが可能です。
選択 | 内容 |
---|---|
Obstacle | 障害物あり |
NoObstacle | 障害物なし |
接続するポートを選択することが可能です。
# ボタンモジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | デジタル |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
NC | 接続不要 |
OUT | ボタンを押すとローレベル(Low level)が出力される 離すとハイレベル(High level)が出力される |
VCC | 電源 3.3V / 5V |
# MakeCodeブロックの利用方法
ボタンモジュールをmicro:bitのPO,P1の該当ポートに接続し、以下のブロックを使って、 ボタンを利用することが可能です。
以下のプログラムを利用すると、ボタンを押した時にmicro:bitのディスプレイに「1」表示し、離した時に「0」表示します。
ブロックには、ボタンを押した・離した動作を設定することが可能です。
選択 | 内容 |
---|---|
Press | 障害物あり |
Release | 障害物なし |
接続するポートを選択することが可能です。
# 環境光センサーモジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | デジタル |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
NC | 接続不要 |
OUT | ボタンを押すとローレベル(Low level)が出力される 離すとハイレベル(High level)が出力される |
VCC | 電源 3.3V / 5V |
# MakeCodeブロックの利用方法
環境光センサーモジュールをmicro:bitのPO,P1の該当ポートに接続し、以下のブロックを使って、 光の強度を返します。戻り値は0から1024です。光の強度が大きいほど、戻り値は大きくなります。
以下のプログラムを利用すると、環境の光の強度をmicro:bitのディスプレイに数値で表示します。
接続するポートを選択することが可能です。
# ロッカーモジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | アナログ |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
Y | Y軸方向の座標アナログ値を出力 |
X | X軸方向に座標アナログ値を出力 |
VCC | 電源 3.3V / 5V |
ロッカーモジュールは、X軸とY軸のアナログ値を出力できる2つのチャネルを備えたポテンショメータと見なすことができます。
初期出力のX値とY値は512です。
各ロッカーの違いにより、初期化値が少し異なる場合があります。
ロッカーモジュールの値はX軸の左から右に向かって増加し、ロッカーモジュールの値はY軸の下から上に向かって減少します。(X軸とY軸の出力アナログ値の範囲:0〜1023)
ケーブルポートの方向は、Y方向の下方向です。これを目印として、X方向とY方向を認識しやすいです。
X軸方向が左に移動すると、出力X値は小さくなります。
X軸方向が右に移動すると、出力X値が大きくなります。
Y軸方向が上に移動すると、出力Y値が大きくなります。
Y軸方向が下に移動すると、出力Y値が小さくなります。
左 (最小値) | X軸中央 | 右 (最大値) |
---|---|---|
0 | 512 | 1023 |
上 (最大値) | Y軸中央 | 下 (最小値) (ケーブルポート方向) |
---|---|---|
1023 | 512 | 0 |
# MakeCodeブロックの利用方法
ロッカーモジュールをmicro:bitのPO,P1の該当ポートに接続し、以下のブロックを使って、 ジョイスティックとして利用することが可能です。
以下のプログラムを利用すると、ジョイスティックを動かす方向に対応した矢印が表示されます。
ブロックには、ボタンを押した・離した動作を設定することが可能です。
選択 | 内容 |
---|---|
NoState | 動かしていない状態 |
Up | 上 |
Down | 下 |
Left | 左 |
Right | 右 |
接続するポートを選択することが可能です。
# サーボ
# 仕様
項目 | 詳細 |
---|---|
種類 | PWM |
名称 | Gray Servo (B02) |
動作電圧 | 4.8 - 6V |
無負荷回転速度 | 0.12 ± 0.01 sec/60° |
無負荷電流 | 90 ± 20mA |
停止トルク | 2 ± 0.2kg-cm |
最大トルク | 2000g * cm |
角度の範囲 | 0 - 360° |
パルス幅 | パルス幅は角度値(0 - 360°)に応じて(500-2500us) |
黒(濃茶)ケーブル | GND |
赤ケーブル | VCC |
黄ケーブル | 信号 |
# MakeCodeブロックの利用方法
付属のサーボ(グレー)を拡張ボードのサーボ専用のP1ポートに接続し、以下のブロックを使って、 サーボを0°の位置に回転させます。
以下のプログラムを利用すると、360°対応サーボが(「Geekservo」の印を前面にした場合)、0°の位置に回転し、時計回りの回転を始めます。1秒間隔で、90°を回転します。360°に達すると、反時計回りに回転します。1秒間隔で、90°を回転します。それを繰り返します。
回転する角度を指定することが可能です。
接続するポートを選択することが可能です。
# 色認識モジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | I2C (IIC) |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
SDA | I2Cデータ送信インターフェイス |
SCL | I2Cタイミング伝送インターフェース |
VCC | 電源 3.3V / 5V |
注意:このモジュールを接続できるのは、IICのポートのみです。
# MakeCodeブロックの利用方法
色認識モジュールは、個別のパッケージとして用意されていますので、個別でインポートする必要があります。
※ パッケージのURL: https://github.com/YahboomTechnology/module_world_color
※ インポート方法は、上記拡張機能の追加方法をご参考ください。
パッケージをインポート(機能の追加)すると、以下のブロックが使えるようになります。
このブロックは、認識した色を、R値(Red:赤)、G値(Green:緑)、B値(Blue:青)の三つの数値に分けて値を取得します。
(R値、G値、B値の3つの戻り値があります。)
この三つの数値で、認識した色を判定できるようになります。
以下のプログラムを利用すると、認識した色のR値、G値、B値を表示できます。
わかりやすくするため、Rの文字をディスプレイに表示した後に、R値を表示しています。
G値、B値も同様です。
R値、G値、B値の選択は以下で行うことが可能です。
# デジタルチューブモジュール
# 仕様
項目 | 詳細 |
---|---|
種類 | I2C (IIC) |
動作電圧 | 3.3V / 5V |
GND | グランド(Ground) |
SDA | I2C データ送信インターフェース |
SCL | I2C タイミング送信インターフェース |
VCC | 電源 3.3V / 5V |
デジタル I2C ベース アドレス | 0x34 |
デジタル レジスター I2C ベース アドレス | 0x24 |
ドライバーチップ | TM1650 |
デジタル チューブ モデル | 0.36インチ 4桁 ネガティブ デジタル チューブ |
注意:このモジュールを接続できるのは、IICのポートのみです。
# MakeCodeブロックの利用方法
デジタルチューブモジュールは、個別のパッケージとして用意されていますので、個別でインポートする必要があります。
※ パッケージのURL: https://github.com/YahboomTechnology/tm1650
※ インポート方法は、上記拡張機能の追加方法をご参考ください。
パッケージをインポート(機能の追加)すると、以下のブロックが使えるようになります。
デジタルチューブモジュールは、文字と数字の表示を選択できます。 下記のプログラムでは、数字1234を表示します。