第6弾プロジェクト「明るさに応じてLEDパネルを変化させよう」
![](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-22/3SVOdPjc_pPO93Ep5dV7T.jpg)
こんにちは!😊
スーパーブログ
「実際にプロジェクトを動かせる記事」の第6回目となります!
今回は明るさが分かるセンサーで点灯LEDパネルを変化させるプロジェクトになります。
皆さんがSPACEBLOCK(スペースブロック)でプログラミングされる際の参考になればと思います!😆
※CdSセルが手元にない方でも、PA8ボタンで代用できる関数を用意しているので、よければ試してみてください😄
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-23/lTZBFKWBbigTI9mWj6bZm.png)
今回のプロジェクト
今回はCdSセルという光に応じて抵抗値が変わるパーツを使用し、センサーの上で明るさを
変えるとLEDの絵が変わるプロジェクトになります!
![yKw2DDZTyi4rEaAtOLU31624320601-1624320614.gif yKw2DDZTyi4rEaAtOLU31624320601-1624320614.gif](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-22/sWWLYIo_i12YfZ-GDAyVT.gif)
- 明るいときはLEDに😀を表示させる
- センサーの上に手をかざすと月を表示させる
という流れで動作するプロジェクトとなります。
今回使用した電子部品等について
ECサイト等で扱っているものを使用しています。
- CdSセル
- 抵抗(330Ω)
- ジャンパーワイヤー(オス~オス型) 3本
- ブレッドボード
SPACEBLOCK(スペースブロック)専用マイコンボードには5Vと3.3Vの出力端子がありますが、今回は5Vを使用しています。
また、今回のプロジェクトでは、SPACEBLOCK(スペースブロック)専用マイコンボードのPB1でアナログ電圧を読み取っています。
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-21/BxDJWdC5zRag1qa3GUgDI.png)
接続方法
SPACEBLOCKの<5V> ーー CdSセルの片足
CdSセルの片足(330Ωの抵抗) ーー SPACEBLOCKの<GND>
CdSセルの片足(330Ωの抵抗) ーー SPACEBLOCKの<PB1>
![CdS接続方法_SB.jpg CdS接続方法_SB.jpg](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-22/gDkGGP-wbvt3ym2S9EVWt.jpg)
これからどのようなブロックを使って動かしているのか説明していきます。😌
プロジェクトの解説
①読み取った電圧の数値を調べる
まず、CdSセルで読み取った明るい時の電圧、暗い時の電圧を確認します。
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-21/63bPquH-gyZK70QPTX_uC.png)
SPACEBLOCK(スペースブロック)には電圧をアナログ読み取りというブロックがあるので、こちらを利用してコンソールに出力して確認します。
環境により違うとは思いますが、明るい時は150前後、センサーに手をかざして暗くした時は40付近の数字が確認できました。
(プロジェクトをコピーして動かしてみる際は、確認した数字を参考に、次に変数にセットする数字を変えてみてください。)
![スクリーンショット 2021-06-21 163922.png スクリーンショット 2021-06-21 163922.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-21/6UEZvMJb4_VZjJkiwV6fg.png)
また、画像の赤い部分でも電圧を確認することができます。
②変数をセットする
LEDパネルの絵を変更する境目となる明るさの数字をセットします。
今回は軽く手をかざしたら絵が変わるようにしたいので、
明るさが60以下の時にLEDの絵を変えるようにしたいと思います。
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-21/RiUuDCkYvKFpG_XlUkWi5.png)
③条件分岐で明るさに応じてLEDパネルの絵を変更
後は取得した電圧がセットした数字を下回った場合、LEDパネルの表示を変える処理を書くだけです!
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-06-21/RndfvoHYGBePLH3EomwRk.png)
皆さんもぜひSPACEBLOCK(スペースブロック)でプログラミングを楽しんでください!😊