マイクロビットでキッチンタイマーを作るために押しボタンスイッチとLEDを追加したのですが・・・
押しボタンスイッチの回路に電流が流れるとか、流れないとか・・・そもそも僕はトマトなのでよく分からないです。
今回は、赤トマト君の疑問に答えることにしよう。頑張って説明するので、何とかついてきてくれたまえ。
ちなみに本文はこちらを見てください。
【マイクロビット応用】[8] キッチンタイマー(2)スイッチとLEDを追加、プログラムの動きを考える、ポケプラ「ゲンガー」の製作
押しボタンスイッチ回路についての疑問
押しボタンスイッチ回路の復習
押しボタンスイッチ回路について、復習してみよう。追加した回路は下のような回路だったね。マイクロビットの3Vのピンが、電池のプラス極(3V)につながっている点に注意してくれたまえ。
ボタンを押していないときは、0ピンが「ON」、押すと0ピンが「OFF」になるのでしたね。
押しボタンスイッチ | 0ピンの電圧 | 0ピンのON/OFF状態 | 4.7kΩの抵抗の電流 |
押していない | 3V | ON | 流れない |
押している | 0V | OFF | 流れる |
その通りだ。よく覚えていたね。で、どこが分からないのかな?
疑問(1)電流が流れるってどういうこと?
まず、表の中に電流が流れるとか、流れないとかあるのですが・・・電流が流れる、とはどういうことなんですか?
そうだね、例えば乾電池に、ソケットに取り付けた豆電球をつないだ場合を考えてみる。乾電池のプラス極の電圧は1.5V、マイナス極の電圧は0Vだ。
すると、豆電球が光る。電圧の高いプラス極と低いマイナス極がつながることで起きる現象を流れにたとえたものが電流なのだ。
ムムムム、いったいどういうことなんですか?
プラス極とマイナス極の電圧を高さに例えてみよう。高さ1.5の場所と0の場所に水槽を置き、水槽の間に水路と水車を置く。すると、水路に水が流れて水車が回る。これは分かるね。
水の流れの力で水車が回りますね。
これを豆電球の回路に置き換えてみる。電圧1.5Vと0Vの電極(乾電池のプラス極とマイナス極)を置き、電極の間に導線で豆電球をつなぐ。すると、導線に電流が流れて豆電球が光る。
電圧が高さで、水の流れが電流、そして、水車が回る代わりに豆電球が光るという訳ですね。
ちなみに電圧の単位は「V」、抵抗の単位は「Ω」で、電流の単位は「A」だ。
分かりました。覚えておきます!
疑問(2)グランドってどういうことですか?
豆電球は回路図では「〇」の中に「X」を描いた記号であらわす。そして、乾電池と豆電球の回路は下のようにあらわされるのだ。
豆電球が乾電池のプラス極とマイナス極につながっているのですね。・・・あれ、なんかおかしいぞ。
ムム、この回路はとてもシンプルな回路なのだが、一体なにがおかしいのかな?
豆電球の回路は良いのですが、マイクロビットの押しボタンスイッチの回路がおかしいです。
押しボタンスイッチが「グランド」というところにはつながっているのですが、その先がどこにもつながっていないのはおかしくないですか?
おお、確かにそう見えてしまうね。実は、回路図の「グランド」は、全て乾電池のマイナス極につながっている、というルールなのだ。
そ、そんなルールがあるのですか?ちゃんとつなげて描いてくれないと、分からないじゃないですか!
いや、もっと複雑な回路の場合、全ての「グランド」をつなげて描くと、回路図がごちゃごちゃして見づらくなってしまうのだョ。ちょっと説明不足だったね。申し訳ない。
はい、分かりました。「グランド」は全部乾電池のマイナス極につながっているのですね。
ウム。乾電池のマイナス極につながっているので、電圧は0Vと覚えておいてくれたまえ。
疑問(3)ボタンを押していないときは、なぜ電流が流れないのですか?
あと、押しボタンスイッチを押していないときは4.7kΩの抵抗に電流が流れない、ということでしたが、3Vにつながっているから、電流も流れるのではないですか?
なるほど、もっともな質問だね。確かに、4.7kΩの抵抗は3Vにつながっている。では、抵抗のもう一方の端子はどこにつながっているかな?
マイクロビットの0ピンにつながっていますね。ボタンは押されていないので、グランドにはつながっていないです。ということは・・・どうなるのですか?
実は、ボタンが押されていないときは、抵抗のもう一方の端子も3Vの電圧になるのだ。なぜそうなるかは後で説明しよう。
ということは、抵抗の端子は両方とも3V、ということですね?
ウム。両方とも3Vということは、先ほどの水槽の例えで考えると、2つの水槽が、両方とも同じ高さのところに置いてある、ということになる。
水槽の高さが同じなら、水路に水は流れないですね。ということは、電圧が同じなら、導線に電流が流れないってことですか?
イェ~ス!その通りだ!回路の中に抵抗があったとして、その両端の電圧が同じなら、この抵抗には電流は流れない。
抵抗の両側の電圧の差が、その抵抗にかかる電圧、ということになるのだ。上の図の場合は、両端とも3Vがかかっているので、3V-3V=0Vで0Vがかかる、ということだ。
でも、なんで抵抗のもう一方の端子も3Vになるのですか?
疑問(4) ボタンを押していないときは、なぜ0ピンが3Vになるの?
これを説明するためには、いくつか知っておいてもらわないといけないことがある。
なんだか難しそうですね?ちゃんと理解できるかな?
順を追って説明していくので、ついてきてくれたまえ。初めに、次の三つのことを説明しておく。
- 「オームの法則」とは?
- 「抵抗分圧」とは?
- マイクロビットの0ピンの中はどうなっている?
そして、これらの知識を使って、「なぜボタンを押していないときに0ピンが3Vとなるか?」を説明しようと思う。
分かりました。頑張ってついていきます!
では初めに、「オームの法則」を説明しよう。
オームの法則とは?
「オームの法則」?オウムは言われたことをそのままマネする、ということですか?
それは鳥のオウムの話だね。「オームの法則」は、回路の中の「電圧」、「抵抗」そして回路を流れる「電流」の関係を表す法則なのだ。下のような回路について考えてみる。
抵抗が乾電池につながっている回路ですね。乾電池で1.5Vの「電圧」がかかって、「抵抗」に「電流」が流れるのですね。
この回路で、抵抗の大きさが大きくなれば、電流は少し流れる。抵抗が小さくなれば、電流はたくさん流れる。
「抵抗の大きさ」というのは、前に出てきた「4.7kΩ」などの数字の大きさですね?
そうなのだ。「オームの法則」を式で表すと・・・
[電圧] = [抵抗] × [電流]
となる。上の回路では、電圧が1.5Vなので、抵抗が大きくなると電流が、電流が大きくなると抵抗が小さくなるのだ。
電圧が大きくなるとどうなるのですか?
先ほどの図の回路で電圧を大きくするには、例えば乾電池をもう一つ持ってきて、直列につなげばよい。乾電池を2個直列にすると、電圧が1.5Vの2倍の3Vになる。
「直列」というのは、図のように乾電池と回路を一直線につなぐのですね?
その通り。そして、電圧が2倍になった場合、抵抗の値が変わらなければ、電流が2倍に大きくなる。電流を変えたくない場合は、抵抗の値を2倍にしなければならないのだ。
なんとなくわかったような気がしてきました。
抵抗分圧について
次は、抵抗を2つ直列につないでみる。二つの抵抗を一直線につなぐのだ。抵抗を直列につないだ場合は、それぞれの抵抗には同じ電流が流れる、という性質がある。
抵抗1と抵抗2に同じ値の電流が流れるのですね。ところで、図の中にPというのがありますが?
ウム。二つの抵抗の値を変えた場合に、Pでの電圧がどうなるかを調べてみようと思うのだ。ところで、先ほど「抵抗にかかる電圧は、両端の電圧の差」という話をしたが、覚えているかい?
はい、今思い出しました!
Pでの電圧をPVとする。すると、抵抗1と抵抗2にかかる電圧は・・・
両端の電圧 | 抵抗にかかる電圧 | |
抵抗1 | 3V と PV | 3VーPV |
抵抗2 | PV と 0V | PV |
となるのだ。抵抗1と抵抗2で、電圧3Vを分けているようなイメージだ。
フムフム。抵抗1にかかる電圧が「3V-PV」で、抵抗2にかかる電圧が「PV」なので、足すと3Vになりますね。
ウム、良いところに気が付いたね。ここで、「オームの法則」の式を思い出してみよう。
[電圧] = [抵抗] × [電流]
上の図の「3V-PV」は抵抗1に、「PV」は抵抗2にかかる電圧なので、上の図は・・・
というように考えることもできるのだ。
これは一体、どういうことなのですか???
例えばここで、抵抗1と抵抗2に、抵抗値が同じ抵抗を持ってくるとどうなるかな?
抵抗1と抵抗2に同じ電圧がかかる、とか・・・
大正解じゃ!抵抗1と抵抗2にかかる電圧が同じで、両方を足すと3Vになるので、抵抗2にかかる電圧は1.5Vということになる。
お、おおぉ
抵抗1を1kΩ、抵抗2を2kΩとするとどうなるかな?
ええと、抵抗2にかかる電圧が抵抗1にかかる電圧の2倍で・・・両方を足すと3V・・・
抵抗1に1V、抵抗2には2Vがかかるのですか?
よく分かったね!今度も大正解じゃ!抵抗1と抵抗2の抵抗値の比率によって、Pの電圧を調節することができる、ということなのよ。
このように、抵抗を直列につないだ回路で、抵抗値の組み合わせを変えれば、電圧をお望みの配分で分けることができるのだ。これを、「抵抗分圧」というのだ。
マイクロビットの0ピンは大きな抵抗につながっている?
次は、マイクロビットの0ピンの中がどうなっているかについてだ。
それ、めちゃくちゃ難しいのでは?ハードル上げ過ぎじゃないですか??
ウム。なので、簡略化して、0ピンの内部は仮に値が大きな抵抗でグランドにつながっている、と考える。
実際にはもっと複雑なのだが、今回の押しボタンスイッチ回路のような外につないだ回路の動きを考えるには役立つのだ。
なんだか、まだごちゃごちゃしていてわかりづらいような気がするのですが・・・
では、この図をさらに整理してみよう。まず、「GND」端子が「グランド」につながっているが、「グランド」はすべてつながっているので、省略してもよい。
「GND」端子も0Vで、他の「グランド」も0Vなので、省略してもよい、ということですね。
また、「マイクロビット」の枠は回路そのものではないので省略する。すると、このような図になるのだ。
大分スッキリしましたね。でも、「抵抗値が大きな抵抗」というのは、少しあいまいな気がしますが・・・
その通りだね。この抵抗の値は、「4.7kΩ」に対してとても大きな値とすればよい。仮に10MΩとしよう。
10MΩって、どのぐらい大きいのですか?
「4.7kΩ」の「k」は1000、「10MΩ」の「M」は1000000を表している。すなわち・・・
4.7kΩ = 4700Ω
10MΩ = 10000000Ω
なので、およそ2000倍なのだ。
おぉ、確かに、とても大きいですね。
押しボタンスイッチが押されていない場合
次に、押しボタンスイッチが押されていない状態について考えてみよう。この場合は、押しボタンスイッチの先はグランドにはつながらない。従って、この回路は下の図の回路と同じ動きをする。
「抵抗分圧」の時に見たのと同じような回路になりましたね!
気が付いたね!二つの抵抗にかかる電圧は、「抵抗分圧」のところで説明した抵抗値の比率で求まるので・・・
抵抗値 | 抵抗にかかる電圧 | |
抵抗1 | 4700Ω | 0.001409V |
抵抗2 | 10000000Ω | 2.998591V |
となるのだ。
ということは、0ピンの電圧が2.998591Vで、ほぼ3Vになる、という訳なのですね。
ウイ。 そして、「抵抗1」すなわち「4.7kΩの抵抗」の両側の間にかかる電圧の大きさは0.001409Vでほとんど0Vなので、電流はほとんど流れない、ということになるのよ。
「流れない」と言っていたのは、全く流れないわけではなくて、「ほとんど」流れないということだったのですね。なんかごまかされたような・・・
そうなのです。まぁ、大目に見てやってくれ。
押しボタンスイッチを押すとどうなるか?
最後に、押しボタンスイッチを押すとどうなるのかを見ておこう。押しボタンスイッチを押すと、4.7kΩの抵抗が押しボタンスイッチを介して0Vにつながる。
と、いうことは、下の回路と同じ働きをするようになる、という訳ですね。
ウム。分かってきたようだね。この状態では、4.7kΩの抵抗の両側の間の電圧が3Vになるので、この抵抗に電流が流れることとなる。
電流の値は「オームの法則」で分かるのでしたね。この回路で、電流の値は・・・
[電圧] = [抵抗] × [電流]
の式に当てはめると・・・
3V = 4700Ω × [電流]
なので、3Vを4700オームで割って、0.000638A・・・って、めっちゃ小さいですね!
0.001は単位に「m」、0.000001は単位に「μ」を付けて表す。なので、 0.000638A は638μAということになる。
そういうふうに言えば良いんだ・・・
一方、10MΩの抵抗は両側が0Vにつながる。10MΩのグランドとは反対側はマイクロビットの0ピンなので、0ピンの電圧が0Vとなり、ON/OFF状態はOFFとなるのだ。
一件落着ですね。
関連記事
【マイクロビット応用】[8] キッチンタイマー(2)押しボタンスイッチとLEDを追加、プログラムの動きを考える、ポケプラ「ゲンガー」の製作
コメント