ゴール
前回の続きで、今回Raspberry PiのGPIOをINとして、ドアセンサーを利用し、空くか閉めるかという判断(1か0)を取得する。
利用する環境
- Raspberry Pi 2 Model B
- 磁石スイーチ
- NodeJS
- NodeRED
磁石スイーチ
- リードスイーチも呼ばれて、磁石でドアが開閉しているかどうかをON/OFFスイーチとして電源が流れる。
- 色々書類があるが、今回秋月にはものがないので、車の開閉運動スイッチを利用します
準備
- 回路の準備:
以下のように回路を準備します。画像にはボタンスイッチと書かれているが、そちらは磁石スイッチとしてつながりました。
- 簡単に説明すると、ボタンが押されたら、信号は流れて、GPIO INの方で信号判断します。
- 利用するのはGPIO2
NodeJSから信号取得
こちらのnodeモジュールを利用します。
インストール:
npm install rpi-gpio
ソースコード
var gpio = require('rpi-gpio');
gpio.setup(2, gpio.DIR_IN, gpio.EDGE_BOTH);
gpio.on('change', function(channel, value) {
console.log('Channel ' + channel + ' value is now ' + value);
});
NodeRED
便利なノードがあるため、ノードをそのまま使うと実現できた。
また、こちらの記事でニフティクラウドmobile backendにデーター登録できるようになっていますので、組み合わせで試しました。
結果