スイッチ(操作用)の使い方。身近にあるスイッチについて詳しく紹介

ボタンスイッチ準備するもの
スポンサーリンク

スイッチとは日本語では「開閉器」と呼ばれ電気の通り道をつないだり開いたりするものです。
スイッチには人が操作することで動作する「操作スイッチ」と、状態や状況によって動作する「検知スイッチ(センサー)」があります。

ここでは人が操作する「操作スイッチ」について詳しく紹介します。


1.スイッチ接点動作の種類

スイッチの接点には動作した時の接点状態の変化によって下画像のような種類があります。

スイッチの接点の種類


2.「押しボタンスイッチ」の紹介

「操作用スイッチ」として一般的な「押しボタンスイッチ」について紹介します。
下画像のスイッチは2つの「押しボタンスイッチ」がケースに収められていて、汎用性の高い「コネクタ(Grove)」がついているものです。
これは「M5Stackテクノロジー社」製の「デュアルボタンユニット」で「スイッチサイエンス」さんで購入できます。(M5Stack用デュアルボタンユニット:407円(送料200円))

2つのボタン(a接点)がはんだ付けなしで使えて、コネクタ付きで使いまわしもできて便利です。

ボタンスイッチ
ボタンスイッチ
ボタンスイッチ配線付き
ボタンスイッチ裏側

青ボタンを押すと「A(白線)」と「GND(黒線)」がつながります。
赤ボタンを押すと「B(黄線)」と「GND(黒線)」がつながります。

付属の「Groveコネクタ用ケーブル」の配線は4本あって赤線は「5V」用として使われることが多いですが、この「デュアルボタンユニット」では内部でどこにもつながっていないため使用されません。


3.スイッチの使い方

スイッチの使い方を回路図を使って紹介します。

・単純なON/OFFの場合

スイッチの基本的な使い方

電源につないだランプを点灯させたいときは電源とランプを繋ぐ配線の間にスイッチを入れるだけです。
これでスイッチがONするとランプが点灯し、スイッチがOFFするとランプが消灯します。

人が操作するスイッチの場合はそれ自体にON/OFFの状態が目で見てわかるようになっているものがほとんどですが、遠くにあるスイッチや状況よって変化するスイッチ(センサ)のON/OFFを知りたい場合もあります。
この「ON/OFFの状態を検知する」方法も紹介します。

・ON/OFFの状態を検知する方法

スイッチの回路図

スイッチのON/OFF状態を知るためにはいろいろな方法がありますが、マイコン(マイクロコンピュータ)等を使った電子回路では上画像のように行います。
マイコンの制御用電源(今回は3.3V)と0Vの間に抵抗(R1)経由でスイッチ(SW1)を繋ぎます。
こうすることで抵抗とスイッチの間の電圧はスイッチ「OFF」のとき制御用電源の3.3Vに、スイッチ「ON」のとき0Vになります。
この電圧をマイコン側で確認することで3.3Vの時はスイッチが「OFF」で0Vの時は「ON」になっていることを検知することができます。

ここで使用した抵抗(R1)は電圧を電源電圧に引き上げるために使用されているため「プルアップ(PULL UP)抵抗」と呼ばれます。

4.プルアップ抵抗について

マイコン(マイクロコンピュータ)内でのON/OFFの判断は入力端子の電圧が高い「HIGH」か低い「LOW」で判断しています。
「HIGH」か「LOW」かは入力端子の「電圧の範囲(しきい値)」によって判断されていてマイコンごとに異なりますが、例えば以下のようなものです。
 HIGH:2.5V~3.6V
 LOW:0V~0.8V
 ※0.8Vを超えて2.5Vより小さい電圧のときは「HIGH」か「LOW」の判断ができません。
入力端子を「LOW」にしたいときは直接0Vに接続すればよいですが「HIGH」にしたいときに直接「制御用電圧(3.3V等)」に接続すると大きな電流が流れてマイコンが壊れます。
このため「HIGH」と判断される電圧を加えつつ、マイコンが壊れないように電流を制限するための抵抗が必要で、この抵抗を「プルアップ抵抗」と呼びます。

「プルアップ抵抗」は使用するスイッチや用途に応じて選定しますが、多くのマイコンでは端子ごとに「プルアップ抵抗」が内蔵されており、プログラムで有効にして使うことができるため動作確認程度であれば非常に便利です。


「プルアップ抵抗」の動作について、マイコンに内蔵の「プルアップ抵抗」を「有効」にした場合と「無効」にした場合で紹介します。(外付け「プルアップ抵抗」無しの場合)

・内蔵のプルアップ抵抗を「有効」にしたとき

プルアップ抵抗の説明

マイコンの入力端子のスイッチが「OFF」のとき、入力端子の電圧はプルアップ抵抗経由で制御用電源の3.3Vに繋がっているため「3.3V(HIGH)」になり、スイッチが「OFF」であることがわかります。
スイッチが「ON」のとき、入力端子の電圧はスイッチ経由で0Vに繋がっているため「0V(LOW)」になり、スイッチが「ON」であることがわかります。

・内蔵のプルアップ抵抗を「無効」にした場合

プルアップ抵抗の説明

マイコンの入力端子のスイッチが「ON」のときは入力端子が「0V(LOW)」になりますが、スイッチが「OFF」のときには入力端子はどこにも繋がっていないため、入力端子の電圧はノイズレベルで安定せず何Vになっているかがわかりません。このためマイコン側では「HIGH」と「LOW」の判断が出来ず、スイッチのON/OFFがわかりません。

このように、マイコンの入力端子でスイッチのON/OFFを検知するためには「プルアップ抵抗」が必要となります。


5.スイッチ使用時の注意(チャタリング)について

スイッチの接点が物理的(機械的)に動作するものは「チャタリング」という現象に注意が必要です。
機械式接点の場合「ON」した時に接点が「ピタッ」とつながらず、接点同士がぶつかった衝撃で「バウンド」して下画像のように短時間でON/OFFを繰り返します。

この現象は数μ秒~数十m秒間続きます。
ランプを点灯させる程度では問題ありませんが、高速で処理を行うマイコンの場合にはスイッチを1回押したつもりが複数回押したことになってしまいます。

スイッチのチャタリング説明

このための対策としてはスイッチが動作した時にマイコンの入力端子への電圧の変化を外部の電子回路で遅延させる方法と、入力端子の状態が変化した時にプログラムで電圧の安定を待ってから処理をさせる方法があります。

チャタリング対策についてはプログラムでの対策方法を紹介する予定ですが、用途や効果よっていろんな方法があり、ちょっと奥が深いです。これに関してはまた別記事で紹介したいと思います。

コメント

タイトルとURLをコピーしました