1W 커패시터를 통해 내 Raspberry PI에 Photoresistor를 연결하고 간단한 프로그램을 실행하여 값을 확인했습니다. 주로 가지고있는 다른 프로그램의 스크립트를 병합했기 때문에 버그가있을 수 있습니다. 나는이 물건에 새로운 사람이야. 나는 2 개의 변수를 설정했다. 포토 레지스터의 값이 1000 미만이면 True, 그렇지 않으면 False입니다. 내 LED의 물마루 JSON 명령을 Openhab 서버로 제어 할 필요가 없습니다. Photoresistor가 True가되면 Openhab 명령에 "ON"명령을 보내고 그렇지 않으면 명령을 "OFF"로 보냅니다. 한 가지는 제외하고 모두 괜찮습니다. Photoresistor 가치의 모든 측정과 Openhab에 명령을 보내는 스크립트. 1000 이하의 값이 감지되면 (True) 명령을 "ON"으로 보내고, 포토 레지스터가 1000 이상 (False) 이상의 출력을주는 순간 Openhab에 명령을 보내지 말고 다른 방법으로 명령을 보내길 원합니다. 주된 목적은 메인 조명이 켜졌을 때 LED의 색상을 변경하고, 메인 조명이 꺼져있을 때 다시 변경하는 것입니다. 나는 그것을 설명하기를 바란다. 도와주세요.광 센서 값에 따라 Openhab에 명령 보내기 Python Raspberry Pi
나의 현재 프로그램 :
#!/usr/local/bin/python
import RPi.GPIO as GPIO, time
import urllib
import urllib2
import requests
GPIO.setmode(GPIO.BCM)
def RCtime (PiPin):
measurement = 0
# Discharge capacitor
GPIO.setup(PiPin, GPIO.OUT)
GPIO.output(PiPin, GPIO.LOW)
time.sleep(0.1)
GPIO.setup(PiPin, GPIO.IN)
# Count loops until voltage across
# capacitor reads high on GPIO
while (GPIO.input(PiPin) == GPIO.LOW):
measurement += 1
return measurement
def LIGHTcheck():
if RCtime(27)<1000:
LIGHT = True
print LIGHT
return LIGHT
if RCtime(27)>1000:
LIGHT = False
print LIGHT
return LIGHT
def LightON():
url = 'http://openhab-server:8080/CMD?switch2=ON'
postdata = {"ON"}
print(postdata)
resp = requests.get(url=url)
def LightOFF():
url = 'http://openhab-server:8080/CMD?switch2=OFF'
postdata = {"OFF"}
print(postdata)
resp = requests.get(url=url)
while True:
if LIGHTcheck() == True:
LightON()
elif LIGHTcheck() == False:
LightOFF()