以前、アナログタイプのホールセンサーは使ったことあるのですが今回はスイッチタイプのセンサーを使ってみました。
概要
▼今回入手したホールセンサーAH1815▼
AH1815は両極検知スイッチタイプのホールセンサーです。オープンドレイン出力で磁石を近づけると出力がON(LOW)となり、離すとOFF(HIGH)となります。
▼アナログタイプのホールセンサーはこちら▼
ピン配置と回路図
ホールセンサーのピン配置とArduinoとの接続図(結線図)です。
ピン配置(データシートより)
回路図
Arduino2番ピンでホールセンサーからの出力を読み取ってます。ホールセンサーの出力ピンがオープンドレインなのでプルアップ抵抗を付けてますが、Arduino側でINPUT_PULLUPにすれば外付けの抵抗は恐らく不要かと思います。
スケッチ(ソースコード)
void setup() { Serial.begin(9600); pinMode(2, INPUT); pinMode(13, OUTPUT); } void loop() { digitalWrite(13, digitalRead(2)); Serial.println(digitalRead(2)); }
2番ピンの状態をポーリングで監視、磁界の検出に応じてオンボード(13番ピン)LEDをON/OFF、またその値をシリアル出力だけの単純なスケッチです。
このスケッチを書き込んで動作確認を行ってみます。
動作確認
Arduinoにスケッチ書き込んでブレッドボードで配線してます。
磁石、磁束密度やセンサーにもよるのでしょうが反応が思ったよりもセンサーに近い位置です。使い方は簡単。
モーター回転数などの測定用にと思っていたのですが、高速な検出にはこのセンサーでは無理かもしれない。
コメント