■リードスイッチ形磁気形近接センサー
リードスイッチは下図のように2枚のニッケル合金(磁性体)リードの一部をオーバーラップさせ、ガラス管に封入したもので、 このオーバーラップ部分は表面に金、銀及びロジウムなどの接点処理が施されており、さらに接点の活性化を防ぐためにガラス管内に不活性ガスを封入している。
リードスイッチに電磁コイルまたは磁石によって磁界が作用するとリードが磁化され、磁界の2乗に比例したオーバーラップ部分の吸引力Fpが生じる。
この吸引力でリードがたわむと、リード自体の弾性により反発力Fsが生じる。
すなわち、Fp>Fsであるような磁界において接点は閉成される。
また、Fp<Fsとなるような磁界において接点は開放される。
磁気形近接スイッチでは、このようなリードスイッチの動作機構を利用し、磁石との組合せにおいて各種の機能を得ている。
■静電容量方式タッチセンサー
「タッチセンサー」の表面に指で触れると生じる静電容量(電荷)の変化を、「センサー」が感知することで位置を認識します。
「静電容量」とは、電気を蓄える能力であり、人体など、電気を通すものが近づいただけで変化します。
電気を蓄えられる時間の変化から「静電容量」の増減を調べられるので、人体の接近を検知することが出来ます。
この「センサー」は、指と「センサー」の間に遮蔽物があっても機能します。
■アクティブブザーモジュール
電気を流すだけでピーと音が鳴ります。digitalWrite() で ON/OFF して制御します。
■磁気検知機
磁気検知機が作成られると思って、下記機能を想定されています。
磁石を近くにより、磁気を感知され、アクティブブザーを発音します。タッチセンサーにタッチして、消音します。
見やすいために、赤LEDを追加し、アクティブブザーを発音/消音に従って、点灯/消灯します。
■配線図
※実物のアクティブブザーモジュールの「+」「S」ピンは間違いました。
正しい順番は「-」「+」「S」
■プログラム:
#define BUZZER 4 // D2
#define TOUCH_PIN 5 // D1
#define REED 2 // D4
#define LED_PIN 16 // D0
void setup() {
Serial.begin(115200);
pinMode(BUZZER, OUTPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(TOUCH_PIN, INPUT);
pinMode(REED, INPUT);
digitalWrite(BUZZER, LOW);
digitalWrite(LED_PIN, LOW);
}
void loop() {
int val = digitalRead(REED);
Serial.print("val=");
Serial.println(val);
if (val == LOW) {
// 磁気近くになる時
Serial.println("Scanned!");
digitalWrite(BUZZER, HIGH);
digitalWrite(LED_PIN, HIGH);
} else {
// 磁気が遠くになる時
digitalWrite(BUZZER, LOW);
digitalWrite(LED_PIN, LOW);
}
if (digitalRead(TOUCH_PIN) == HIGH) {
// タッチの時
Serial.println("Cleared!");
digitalWrite(BUZZER, LOW);
digitalWrite(LED_PIN, LOW);
}
delay(1000);
}
■実物イメージ
磁気近くなる時:
タッチセンサーにタッチする:予想通り :)




0 件のコメント:
コメントを投稿