Onion Omega2+ (5) Motion Sensor

モーションセンサーに関して、適当なプログラムが見つからないので、下記のURLを参考しながら自作する!

https://docs.onion.io/omega2-docs/gpio-python-module.html

https://github.com/OnionIoT/onion-gpio-sysfs/

まずPython moduleのインストール

opkg update
opkg install python-light pyOnionGpio

プログラムはこちら

#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import time
import onionGpio
from datetime import datetime

# LED GPIO
led_pin = 0
pir_pin = 9
sleeptime = 100000
led_light_up_time = 1

led = onionGpio.OnionGpio(led_pin)
pir = onionGpio.OnionGpio(pir_pin)

led.setOutputDirection(0)
pir.setInputDirection()

while True:
    value = pir.getValue().rstrip()

    if(value == "1"):
        print datetime.now(),
        print "motion_detected"
        led.setValue(1)
        time.sleep(led_light_up_time)
        led.setValue(0)

一応動作して、検出すると、LED点灯。

LEDをブザーに入れ替えると、検出すると、ブザー鳴る。Ctrl-Cで終了する。

しかし問題は、終了タイミングにより、GPIOが使用中のままになり、再度起動すると、異常終了になってしまう。

 

Leave a Reply

Your email address will not be published. Required fields are marked *