プログラミングを子供に教えたいけど、わたしが分からない。
パソコンのプログラミングは、すぐに飽きてしまう。
電気の知識を学んだことがあるけど、イメージがわかない。
こんな疑問に、Arduinoのスタートキットを使って、初心者や子供わかる買いr構成とプログラミング内容について紹介します。
ELEGOO社製のArduino互換品は非常に安価で製品も多数入っているため、初心者が最初に学ぶ際には非常におすすめです。
準備するもの
基本的にはスタートキットに入っていると思いますが、ない場合は部品単体でも購入できますので、準備してください。
・Arduino Uno
・ブレッドボード
・LED
・タクトスイッチ
・ジャンパ線
・抵抗(330Ω)
タクトスイッチの構造を理解する
今回使用するタクトスイッチの構造について説明いたします。
タクトスイッチは一般的に使用されており、カバー・プランジャ・反転ばね・ベース・4本の端子で構成されています。端子間はA-C間、B-D間で導通されており、スイッチを押すことで、A-CとB-Dの端子が導通し、すべての端子が導通します。
今回はこのスイッチを使用して、LEDの点灯・消灯を操作します。
スイッチで点灯する回路を製作してみる
では電子回路を製作しましょう。
今回作る回路はこのようになります。
LEDには極性があるので注意しましょう。今回はスイッチを2つ設置し、片側がLED点灯(ON)、2つ目がLED消灯(OFF)の役割となります。
上記の通り接続するとこのようになります。
プログラム製作してみる
ではプログラムの内容を説明します。プログラム全文はこちらになります。
int ledPin = 5;
int buttonApin = 9;
int buttonBpin = 8;
byte leds = 0;
void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(buttonApin, INPUT_PULLUP);
pinMode(buttonBpin, INPUT_PULLUP);
}
void loop()
{
if (digitalRead(buttonApin) == LOW)
{
digitalWrite(ledPin, HIGH);
}
if (digitalRead(buttonBpin) == LOW)
{
digitalWrite(ledPin, LOW);
}
}
今回使用する関数は下記になります。頻繁に使うコマンドなので、ぜひ覚えていきましょう。
pinMode(pin, mode)
ピンの動作を入力が出力に設定する。今回はINPUT_PULLUPを指定することで、内部プルアップ抵抗を有効にしております。
digitalRead(pin)
指定したピンの入力をHighかLOWを読み取ります。
今回はタクトスイッチ(buttonApin)がLOWの場合、LEDを点灯。(PULLUP設定としているため、常に5Vが印加されており、タクトスイッチを押すと0Vとなる)
タクトスイッチ(buttonBpin)がLOWの場合、LEDを消灯となります。
digitalWrite(pin, value)
HIGHまたはLOWを、指定したピンに出力します。
指定したピンがpinMode()関数でOUTPUTに設定されている場合は、次の電圧にセットされます。
HIGH = 5V (3.3Vのボードでは3.3V)
LOW = 0V(GND)
プログラムの中身を理解しましたら、実際にコンパイルして、マイコンボードに書き込みを行いましょう。
回路製作内容と動作確認を動画で解説
実際に動かした動画がこちらになります。回路製作からプログラム内容を紹介しておりますので、ぜひ見てください。