我正在建立一个使用树莓派的自动浇水系统,我面临着一些问题,当我在IDE中运行它运行无限时间的代码时,我想在某个时间后停止它,如果你能建议我如何使用web服务器自动运行它。这是我的脚本。
import RPi.GPIO as GPIO
import time
timeout = time.time() + 60*1
water_pump = 20
moisture_sensor = 21
GPIO.setmode(GPIO.BCM)
GPIO.setup(moisture_sensor, GPIO.IN)
GPIO.setup(water_pump,GPIO.OUT)
def callback(moisture_sensor):
if GPIO.input(moisture_sensor):
GPIO.output(water_pump, GPIO.LOW)
else:
GPIO.output(water_pump, GPIO.HIGH)
GPIO.add_event_detect(moisture_sensor, GPIO.BOTH, bouncetime=300)
GPIO.add_event_callback(moisture_sensor, callback)发布于 2018-11-20 13:41:12
我正在使用Flask框架通过WEB控制GPIO。下面是一个小示例:
import RPi.GPIO as GPIO
import time
from flask import Flask
timeout = time.time() + 60*1
app = Flask(__name__)
water_pump = 20
moisture_sensor = 21
GPIO.setmode(GPIO.BCM)
GPIO.setup(moisture_sensor, GPIO.IN)
GPIO.setup(water_pump,GPIO.OUT)
def callback(moisture_sensor):
if GPIO.input(moisture_sensor):
GPIO.output(water_pump, GPIO.LOW)
else:
GPIO.output(water_pump, GPIO.HIGH)
@app.route('/start')
def start():
GPIO.output(water_pump, GPIO.HIGH)
@app.route('/stop')
def stop():
GPIO.output(water_pump, GPIO.LOW)
GPIO.add_event_detect(moisture_sensor, GPIO.BOTH, bouncetime=300)
GPIO.add_event_callback(moisture_sensor, callback)
app.run()https://stackoverflow.com/questions/53378024
复制相似问题