[ESP32]ホール効果磁気センサー(KY-003/3144) with Arduino IDE
はじめに
KY-003 は、ホール効果磁気センサーです。
ホール効果磁気センサー(3144)と抵抗・LEDが基板上に接続されています。
ホール効果を利用した磁気センサーです。
ホール効果とは、電流が流れているところに磁場をかけると、それと垂直な方向に電圧が生じる現象です。
データシート(3144)👇
https://aitendo3.sakura.ne.jp/aitendo_data/product_img/sensor/hall/A3144.pdf
KY-003 は、こちらのスターターキットの一部です。
開発環境
OS : Windows 11 Pro
ESP32:ESP-WROOM-32
統合開発環境 : Arduino IDE 2.3.2
Arduino core for the ESP32:2.0.17
使用ライブラリ:なし
使用パーツ
ESP32開発ボード(38Pin)
電子工作ステーション https://electronicwork.shop/items/64134541d91711003035a5a6
ホール効果磁気センサー (KY-003)
ジャンパーワイヤー(メスーメス)
センサーについている場合は、必要ありません。
電子工作ステーション https://electronicwork.shop/items/637f92415988dc5175f8a9ec
作業内容
配線図
KY-003 とは GPIO 23 を使用して接続します。
KY-003 | ESP32開発ボード(38Pin) |
– | GND |
3.3V or 5V | |
S | GPIO 23 |
ライブラリインストール
なし
スケッチ作成
#define MAGNETIC_SENSOR 23
void setup() {
Serial.begin(115200);
pinMode(MAGNETIC_SENSOR, INPUT);
}
void loop() {
if (digitalRead(MAGNETIC_SENSOR) == LOW) {
Serial.println("Magnetic detected !!");
delay(1000);
}
}
コード説明
使用するGPIOピンを設定します。
#define MAGNETIC_SENSOR 23
使用するGPIOピンをインプットに設定します。
pinMode(MAGNETIC_SENSOR, INPUT);
HIGH,LOWを読み取ります。
if (digitalRead(MAGNETIC_SENSOR) == LOW) {
磁気を検知した場合に LOW となります。
動作確認
KY-003 に磁石を近づけてみてください。
LEDが点灯し、シリアルモニタに「Magnetic detected !!」と表示されれば、成功です。
片極の磁界のみを検知しているようなので、反応しない場合は磁石を裏返してみてください。
コメント