ラズパイ3×ドアセンサーパート1 ~人感センサー編~
会議室利用状況を作ってみようとのことでラズパイとドアセンサーを使用ときのメモです。
脱コボラー+IoT初心者ですので、ご意見いただけると光栄です。
<パート1 ~人感センサー編~>
<パート2 ~リードセンサー編~>
<パート3 ~Lチカ編~>
各種パーツ
・ Raspberry Pi 3 Model B
・ 焦電型赤外線センサーモジュール
・ ジャンパーワイヤ(メス – メス)×3
・ USBアダプター(Micro-B)
事前準備
MicroSD(8GB以上推奨)にNOOBSをインストール
ラズパイの起動&設定
ネットワーク設定
Tera Termのダウンロード/ラズパイにSSHで接続
RPi.GPIO
Raspberry PiのGPIOを操作するために、インストールしておく
$ sudo pip install RPi.GPIO
GPIO.BOARD?GPIO.BCM?
GPIOのピン番号を指定する方法は2種類
* GPIO.BOARD: PIN番号
* GPIO.BCM: GPIO番号
例えば、GPIO.BOARD:PIN 12, GPIO.BCM:GPIO 18となる
回路作成
以下の通り回路を作成する
GND: 6番ピン
OUT: 12番ピン(GPIO18)
VCC: 4番ピン(5V)
OUTピンのGPIOはプログラム上で使用するため、メモしておく。
※3,5,8,10,19,21,23番ピンの使い方はいまだわからず…。
サンプルプログラム
python:humanSensor.py # coding: utf-8 import RPi.GPIO as GPIO import time from datetime import datetime GPIO.setmode(GPIO.BCM) # GPIO番号設定 GPIO.setup(18, GPIO.IN) # 入力設定 while True: nowTime = datetime.now().strftime('%Y/%m/%d %H:%M:%S') # 0 -> 人の気配なし, 1 -> 人の気配あり print(nowTime+' ['+str(GPIO.input(18))+']') time.sleep(1)
sudo python humanSensor.py
プログラムを実行すると、1秒間隔でセンサー値を返します。
所感
ラズパイでセンサー値を取得することができた。
次回のリードセンサーも同じようにセンサー値を取得する作業かなぁ。
あと、ピンの使い方がまだまだ不慣れ(´・ω・`)