プロジェクト05:カー ダイヤル
1. 概要
このプロジェクトでは、調整可能なポテンショメータ、サーボ、美しいダイヤルカードを組み合わせて、シンプルなカー ダイヤルモデルを作ります。
2. 部品
|
|
|
|---|---|---|
micro:bit ボード *1 |
micro:bit T型拡張ボード *1 |
micro USB ケーブル *1 |
|
|
|
ポテンショメータ *1 |
サーボ *1 |
ジャンプワイヤー |
|
|
|
ブレッドボード *1 |
バッテリーホルダー *1 |
ポテンショメータカード *1 |
|
||
カーダイヤルカード*1 |
3. 部品の知識
ポテンショメータ

ポテンショメータは3つの接点を持つ抵抗素子で、その抵抗値はある規則に従って調整可能です。
形状、サイズ、値は様々ですが、共通点は以下の通りです:
① 3つの端子(または接続点)。
② 可動ノブまたはスライダーがあり、中間端子と任意の外部端子間の抵抗を変えられる。
③ ノブを動かすと、中間端子と任意の外部端子間の抵抗が0Ωから最大値まで変化する。
ポテンショメータの回路記号:

(1). 電圧分割器として
ポテンショメータは連続可変抵抗器です。スライダーを回転させると、可動接点が抵抗体上を移動します。この時、ポテンショメータにかかる電圧と可動スライダーの角度やストロークに応じて電圧を出力できます。
(2). 可変抵抗器として
ポテンショメータを可変抵抗器として使う場合、中間端子を回路内の2つの追加端子のいずれかに接続します。こうすることで、その範囲内で安定かつ連続的に変化する抵抗値を得られます。
(3). 電流制御器として
電流制御器として使う場合、可動接点を出力端子の一つとして接続します。
4. 配線図

サーボを使用する場合は、必ず外部電源を接続し、DIPスイッチをONにしてください。


5. コードの流れ

6. テストコード
コードファイルはフォルダ Project 05:Car Dial 内のファイル Project-05-Car-Dial.py にあります。

完成コード:
'''
Function: The potentiometer controls the servo to simulate the car dial
Compiling IDE: MU 1.2.0
Author: https://docs.keyestudio.com
'''
# import microbit related libraries
from microbit import *
display.show(Image.HAPPY) # LED matrix displays a smile face
pin0.write_analog(25.6) # set P0 pin analog to 25.6, servo initial angle to 0°
sleep(200)
# map function
def map(value,fromLow,fromHigh,toLow,toHigh):
return (toHigh-toLow)*(value-fromLow) / (fromHigh-fromLow) + toLow
while True:
value=pin2.read_analog() # Read the analog value of the potentiometer (ADC value)
pin0.set_analog_period(20) # set servo frequency
pin0.write_analog(map(value,0,1023,25.6,128)) # Map the analog value of the potentiometer to that of the servo
sleep(20)
7. テスト結果
「Flash」をクリックしてコードをmicro:bitボードに書き込みます。

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

ポテンショメータのノブを回すと、サーボがダイヤルのポインタを動かします。
注意: 配線が正しいのに動作しない場合は、ボード裏面のリセットボタンを押してください。









