Node-REDでIoTにチャレンジ② LEDの明るさを変えてみる

 子供の科学2024年1月号2月号の「はじめようジブン専用パソコン」では、「Node-RED(ノードレッド)」というプログラミングツールを使ってIoTにチャレンジしている。記事では、2023年12月号で紹介した、「光と音の電子工作プログラミングキット」でつくった「光センサーとLEDで明るさに反応するしくみ」を操作するプログラムをつくっているよ。

 2月号の記事では、スマホやタブレットから操作できるようにしている。2月号の記事では、LEDをオン/オフをするボタンと、光センサーの値を表示できるようにしたけど、この記事では、それに加えてLEDの明るさを変えられるようにするよ。記事ではLEDをオン/オフをするボタンのプログラムに追加している。
 ノードレッドの使い方がわからない場合は、2024年1月号と2024年2月号の「はじめようジブン専用パソコン」の記事を読んでね。
※「はじめようジブン専用パソコン」のバックナンバーの記事は、こちらから読むことができる(コカネット無料会員の登録が必要)

 ラズパイのGPIO出力は、通常は0Vか3.3Vのデジタル出力だけど、PWM(Pulse Width Modulation パルス幅変調)というしくみを使って、疑似的にアナログの電圧を出力することもできる。このしくみでLEDの明るさを変えてみよう。

 LEDにつながった「PIN: 13」ノードをダブルクリックしてプロパティを開き、下にスクロールして「出力形式」の「デジタル出力 v」をクリックし、メニューから「PWM出力」を選ぶ。できたら「完了」ボタンを押してプロパティを閉じよう。ノードの名前が「PWM: 13」に変わったね。

 PWMの電圧は0から100の範囲で表される。0が0Vで100が3.3Vだ。それなので、「1」ノードのプロパティで「msg.payload」を「100」に、「オン」ノードのプロパティで「Payload」を「100」に変えておく。

「1」ノードのプロパティ
「オン」ノードのプロパティ

 ダッシュボードからはスライダーで値を変えられるといいかな。パレットの「slider」ノードをドラッグ&ドロップして下に並べよう。

「slider」ノードをダブルクリックで開き、プロパティの「Label」を「明るさ」、「Range」の「max」を「100」に変えてから、「完了」ボタンを押して閉じよう。数字は半角にすることを忘れずに。

 ノードの名前が「明るさ」に変わったね。「明るさ」ノードの出力を「PWM: 13」ノードの入力をワイヤーでつなごう。

 ここまでできたら、「デプロイ」ボタンを押そう。スマホなどのWebブラウザーで見るとスライダーが追加されているはずだ。スライダーを動かすとLEDの明るさが変わることを確かめてみよう。

監修

阿部和広 著者の記事一覧

青山学院大学大学院 特任教授

最新号好評発売中!

子供の科学 2024年 12月号

CTR IMG