プロジェクト01:ボタン付き小型ランプ

1. 概要

micro:bitボードの前面にはプログラム可能なボタンが2つ(AとB)あります。これらを赤色LEDとランプカードと組み合わせて、小さなデスクランプを作ります。ボタンAを押すと赤色LEDが点灯し、ボタンBを押すと消灯します。

2. 部品

Img

Img

Img

micro:bitボード *1

micro:bit T型拡張ボード *1

micro USBケーブル *1

Img

Img

Img

赤色LED *1

220Ω 抵抗 *1

ジャンプワイヤー *2

Img

Img

Img

ブレッドボード *1

電池ホルダー *1
(自前の単三電池 *2)

ランプカード *1

3. 部品の知識

ボタン

ボタンは回路のオン・オフを制御します。ボタンが回路に接続されている場合、ボタンが押されていないときは回路は開いており、ボタンを押すと回路が閉じます。

micro:bitボードには3つのボタンがあります:裏面のリセットボタンと、前面のプログラム可能な2つのボタン(AとB)です。

Img

抵抗

Img

抵抗は回路の分岐で電流を制限する電子部品です。固定抵抗の抵抗値は調整できませんが、ポテンショメーターや可変抵抗は調整可能です。

抵抗の回路記号は以下の2つが一般的です。回路図でこれらの記号を見たら抵抗を表しています。

Img

Ωは抵抗の単位で、Ω、KΩ、MΩなどがあります。1 MΩ=1000 KΩ、1 KΩ=1000 Ωと表せます。一般的に抵抗の表面に抵抗値が表示されています。

抵抗を使う際はまず抵抗値を知る必要があります。抵抗値を知る方法は2つあります:色帯を観察するか、マルチメーターで測定するかです。前者の方が便利で速いです。

Img

抵抗カードのように、色ごとに数字が割り当てられています。

Img

4バンド抵抗と5バンド抵抗がよく使われます。

抵抗を手にしたとき、どちらの端から色を読み始めるか迷うことがあります。

そのため、色帯の端の2つの間隔を観察してください。もしその間隔が他の間隔より広ければ、反対側から読み始めます。

5バンド抵抗(4バンド抵抗)では、4番目と5番目(3番目と4番目)の色帯の間隔が比較的広いことに注意してください。

以下は5バンド抵抗の読み方の例です:

Img

この抵抗は左から右に読みます。値は「1番目の色帯 2番目の色帯 3番目の色帯 × 10の乗数(Ω)、許容差%」です。

この抵抗の値は、2(赤) 2(赤) 0(黒) × 10^0(黒)Ω = 220Ω、許容差±1%(茶色)となります。詳しくは抵抗器 - Wikipediaを参照してください。

LED

LEDは「発光ダイオード」の略で、半導体材料(シリコン、セレン、ゲルマニウムなど)で作られた電子デバイスです。極性があり、正極は長いピンでVCC(Vまたは3.3V、5V、+)に接続し、負極は短いピンでGND(Gまたは-)に接続します。電流は正極から負極へ一方向に流れます。

LEDの電子記号と図形記号:

Img

様々なサイズと色のLED:

Img

赤、黄、青、緑、白が最も一般的なLEDの色で、見た目の色と同じです。透明LEDはあまり使われず、発光色は白とは限りません。LEDのサイズは3mm、5mm(最も一般的)、8mm、10mmの4種類があります。

Img

LEDを点灯させる際には順方向電圧が必要です。これはLED使用時に重要なパラメータで、消費電力や電流制限抵抗の大きさを決めます。赤、黄、オレンジ、薄緑のLEDは通常1.9Vから2.1Vの電圧を使います。

Img

オームの法則によれば、抵抗が大きくなると回路の電流は減り、LEDの明るさは暗くなります。

I = (VP - Vl) / R

LEDを安全に適切な明るさで使うために、回路にどれくらいの抵抗を使うべきでしょうか?

ほとんどの5mm LEDの推奨電流は20mAで、データシートの条件欄に記載されています:

Img

上記の式を変形すると:

R = (VP - Vl) / I

VP = 5V、Vl(順方向電圧)= 2V、I = 20mAの場合、抵抗は150Ωとなります。抵抗を小さくするとLEDは明るくなりますが、抵抗は150Ω以下にしないでください(LEDの種類によって異なる場合があります)。

異なる色のLEDの順方向電圧と波長は以下の通りです:

Img

非常に低い抵抗値の抵抗を電源の両極に直接接続しないでください。過電流により電子部品が損傷する恐れがあります。抵抗は極性がありません。

ブレッドボード

回路を完成させる前に、ブレッドボードを使って回路設計やテストを素早く行います。ブレッドボードには多くの穴があり、抵抗などの回路部品を差し込めます。典型的なブレッドボードは以下の通りです:

Img

ブレッドボードの下には多くの金属ストリップがあり、上部の穴同士を接続しています。配置は以下の通りです。

上部と下部の穴は横方向に接続されており、それ以外の穴は縦方向に接続されています。

Img

ブレッドボードの最初の2列(上部)と最後の2列(下部)はそれぞれ電源の正極(+)と負極(-)用です。導通レイアウトは以下の通りです:

Img

DIP(デュアルインラインパッケージ)部品、例えば集積回路、マイコン、チップなどを接続する場合、溝が2つの部分を隔離しています。したがって、DIP部品は以下のように接続できます:

Img

Img

ジャンプワイヤーとデュポン線

ジャンプワイヤーとデュポン線は2つの端子を接続します。種類はいろいろありますが、ここではブレッドボードで使うものに注目します。これらはブレッドボードの任意の場所からマイコンの入出力ピンへ電気信号を伝えます。

使用時はワイヤーの「両端のピン」をはんだ付けせずにブレッドボードに差し込みます。ブレッドボードの内部には複数の並列板があり、特定の穴に差し込むだけで接続できます。

デュポン線にはF-F、M-M、M-Fの3種類があります。ワイヤーのピンはオス端子(M)、穴はメス端子(F)と呼ばれます。

Img

複数の種類をプロジェクトで使うこともあります。色は異なっても役割は同じで、色は回路を区別するために使われます。

4. 配線図

注意:micro:bitボードは以下のようにT型拡張ボードに差し込む必要があります。micro:bitボードのLEDマトリクスは拡張ボードのロゴと同じ側にしてください。

Img

LEDの制御ピンはP0です(T型拡張ボードのピンはデジタル0)。

5. コードの流れ

Img

6. テストコード

コードファイルはフォルダ Project 01:Small Lamp with Button 内の Project-01-Small-Lamp-with-Button.py にあります。

Img

完成コード:

'''
Function: microbit on-board buttons A&B control LED
Compiling IDE: MU 1.2.0
Author: https://docs.keyestudio.com
'''
# import microbit related libraries
from microbit import *

display.show(Image.HEART) # LED matrix displays ❤
pin0.write_digital(0) # set P0 pin to low

while True:
    if button_a.is_pressed():     # if A is pressed
        pin0.write_digital(1)     # P0 is high
        display.show(Image.HAPPY) # LED matrix displays a smile face
    elif button_b.is_pressed():   # or else B is pressed
        pin0.write_digital(0)     # P0 is low
        display.show(Image.SAD)   # LED matrix displays a crying face

7. テスト結果

Flash」をクリックしてコードをmicro:bitボードに書き込みます。

Img

コードをボードにダウンロードした後、micro USBケーブルまたは外部電源で電源を入れ(DIPスイッチをONにする)、ボードのリセットボタンを押します。

Img

現象は以下の通りです:5x5 LEDマトリクスに Img が表示されます。ボタンAを押すと5x5 LEDマトリクスに Img が表示され、LEDが点灯します。ボタンBを押すと5x5 LEDマトリクスに Img が表示され、LEDが消灯します。ミニランプのように見えますか?

注意:配線が正しいのに結果が見えない場合は、ボード裏面のリセットボタンをもう一度押してください。

Img

外部電源で電源を入れる場合は、DIPスイッチをONにしてください。

Img