デザイン演習Ⅲ・Ⅳ第一回

Arduino(アルディーノ)を使い、LEDを点滅させる「Lチカ」と、明るさセンサーを用いて 暗いところでLEDが光る仕組みを作った。

Arduinoは、2005年にイタリアで生まれた、初心者でも電子工作とプログラミングを学びやすい オープンソースのプラットフォームであり、マイコンボード本体と統合開発環境(IDE)から成り立っている。

Lチカ

使用するもの

基本構造

基本コード

pinMode(13, OUTPUT); digitalWrite(13, HIGH); digitalWrite(13, LOW); delay(1000);
命令 意味
pinMode(13, OUTPUT) 13番ピンを出力として使う
digitalWrite(13, HIGH) 電気を流してLEDを点灯させる
digitalWrite(13, LOW) 電気を止めてLEDを消灯させる
delay(1000) 1秒待つ

デジタル出力の特徴

状態 意味
HIGH ON(電気あり)
LOW OFF(電気なし)

Arduinoのデジタル出力は、0か1かの2択で制御するシンプルな仕組み。

動作の流れ

  1. setup でピンを設定する
  2. loop でONとOFFを繰り返す
  3. その結果、LEDが点滅する

明るさセンサー

使用部品

プログラムの要点

val = analogRead(A1); Serial.println(val);
命令 意味
analogRead(A1) A1ピンの電圧を読み取る
Serial.println(val) 読み取った値をPCに表示する

Arduinoのアナログ入力では、0Vから5Vまでの電圧を0から1023までの数値に変換して扱うことができる。 デジタルのように0か1だけではなく、連続した値を読み取れることが特徴。

電圧
0V 0
5V 1023

今回の明るさセンサーでは、明るいと値が小さくなり、暗いと値が大きくなる。

この変化を利用することで、暗い場所でLEDが光る仕組みを作ることができた。

この学習を通して、Arduinoではデジタル出力による単純なON/OFF制御だけでなく、 アナログ入力を使って周囲の環境に応じた動作も実現できることが分かった。