Grove:ボリューム(パネルタイプ)連携

Grove:ボリューム(パネルタイプ)

Groveのボリューム(パネルタイプ)を接続し、Tibbo-Piのアナログ入力機能を使って、ボリュームの位置を電圧値として取得します。

(Groveデバイスの詳細は上記リンクから参照願います。)

Tibbitの配置

Tibbit #00-3 と Groveデバイスを接続したTPbit #02を挿入します。

ノードの配置

chを指定するために、changeノードを使用します。

以下のようにフローを配置します。

changeノードのプロパティを開き、アナログ値を取得したいchを指定するために、以下のように設定します。

Tibbit#00ノードの設定を開き、以下のようにスロットとIN_Analogを選択します。

Node-REDデプロイ後、injectノードをクリックすると値を取得することができます。

ボリュームつまみの左端で0、右端で255に近い値が取得できます。

※Tibbo-Piのアナログ入力機能は0~5Vを0~255の値として取得しますが、#00-3内部の回路の影響で、最大255ではなく250付近の値が取得されます。

サンプルフロー

電圧値(V)に変換

取得した値を電圧値(V)に変換する方法です。

変換のために、rangeノードを使用します。

先程のフローに以下のようにrangeノードを追加します。

rangeノードのプロパティを開き、以下のように設定します。0~255の取得値を0~5Vの電圧に変換する設定です。

Node-REDデプロイ後、injectノードをクリックすると電圧値(V)を取得することができます。

サンプルフロー

電圧値(V)の小数桁の四捨五入

このままでは、小数の桁数が多すぎて見づらいので、小数点2桁より下を四捨五入します。

四捨五入は、changeノードの「JSONate式」を使用します。

先程のフローに以下のようにchangeノードを追加します。

changeノードのプロパティを開き、対象の値の種類から「JSONate式」を選択します。

その後、以下のように設定します。

Node-REDデプロイ後、injectノードをクリックすると小数2桁までの電圧値(V)を取得することができます。

サンプルフロー