可変抵抗の使い方
配線
右から入って真ん中で抜ける
初めて見たときは左右に抜けるイメージだったけど実際は真ん中で抜ける
つまみと値の関係
水道 = 抵抗と考える
蛇口[1]をひねるほど抵抗値が大きくなる
LEDに反映させている場合は蛇口をひねるほど暗くなる
なぜ電源は右に繋ぐ?
右側に電源を繋ぐ人が多かったのと入門書がそうなっていたからそうした
ネットを見ると左に繋いでいる人もいた
電源を左に繋ぐとどうなる?
大小が反転する
そこだけ注意すればどっちに繋いでもいいっぽい
LEDに直接繋がっていて蛇口をひねるほどLEDを光らせたいときは左に電源を繋ぐとよさそう
Arduinoのアナログ入力経由の場合は値が反比例するので右側に繋いだままでいい
命綱とは?
可変抵抗内の接触がバカになったとき大きな電流が流れてしまうのを防ぐためにあるらしい
なので、なくてもよいが安全のためにつけるべしとされている
そういう意味で覚えやすいように命綱と勝手に命名した
単体でLEDの明るさ調整に使うと危険
(電源5V - LED2V) / 電流0.02A = 150Ω
なので蛇口を絞り切ると0Ω[2]になりLEDが死ぬというかいくつか死んだ
LEDの明るさ調整に使うには?
LED用の適正な抵抗を添えた上で可変抵抗を添える
これなら蛇口を止めても150Ω以下にはならない
Arduino側で受け取るには?
LEDに向かっていた線をArduino側に指せば1024段階の値として受け取れる
void setup() {
}
void loop() {
int value = analogRead(A0);
float volt = float(value) * 5 / 1024;
}
その値は電圧値なので抵抗値と反比例している
蛇口 | 抵抗値 | アナログ入力値 |
---|---|---|
開く | 増加 | 減少 |
絞る | 減少 | 増加 |
もし電圧値に変換するときは 1023 で割ってはいけない
1023 は 5V にもっとも近い 5V 未満の値なので 1024 で割るのが正しい
光センサは可変抵抗だった
光センサの場合もArduino側のコードは同じになる
Arduino側から見れば元が可変抵抗だったのか光センサだったのか区別できない
その点からも光センサは可変抵抗だったとわかる
圧電スピーカーのボリューム調整に使える
void setup() {
}
void loop() {
tone(8, 262, 500); // C
delay(1000);
}
コードはそのままで
GPIO 8
→ 圧電スピーカー
→ GND
だったのを
GPIO 8
→ 可変抵抗
→ 圧電スピーカー
→ GND
に変更する
最初は蛇口を最大まで開いておく
そうすると抵抗が最大になって音量が0になる ← 重要
そこから徐々に蛇口を絞れば音が聞こえ始める
Discussion