首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要使用增量设置上下限变量的帮助

需要使用增量设置上下限变量的帮助
EN

Stack Overflow用户
提问于 2019-02-07 13:14:35
回答 1查看 13关注 0票数 0

这应该很容易,但是,我就是想不通。我需要设置一个达到上限或下限的变量,但是,我想在设置变量之前添加一个增量。

我正在构建一个水族馆控制器与树莓派和编写的代码在python中。这个特殊的功能,我想在76.0度打开加热器,在78度关闭它。

但是,我不想让加热器在极限时跳动,因此,一旦我打开加热器,我希望它加热到78度,但在它达到下限之前不要再次打开。

反之亦然,当达到下限时,我想让它加热到更高的极限。

主要目标是不让gpio引脚在上限和下限的边缘反弹。

代码中的gpio引脚控制继电器打开/关闭加热器。

热开=1....-> 78度

热开=0 ................76度<

代码语言:javascript
复制
def heater(SW_TEMP):
    if SW_TEMP < 76.0:
            heatON = 1
            print "heatON = ", heatON
            GPIO.output(HTR_Ch2, GPIO.LOW)

    elif (SW_TEMP > 78.00):
            heatON = 0
            print "heatON = ", heatON
            GPIO.output(HTR_Ch2, GPIO.HIGH)

    else:
            GPIO.output(HTR_Ch2, GPIO.HIGH)
            heatON = 0
            print "heatON = ", heatON

这是一个基本的功能和工作,但是,它仍然将反弹在极限,因为温度波动在极限。

任何想法都是值得感谢的。

EN

回答 1

Stack Overflow用户

发布于 2019-02-07 13:23:20

您需要考虑heatON的当前状态,例如:

代码语言:javascript
复制
def heater(SW_TEMP):
    if SW_TEMP < 76.0 and not heatON:
            heatON = 1
            print "heatON = ", heatON
            GPIO.output(HTR_Ch2, GPIO.LOW)

    elif SW_TEMP > 78.00 and heatON:
            heatON = 0
            print "heatON = ", heatON
            GPIO.output(HTR_Ch2, GPIO.HIGH)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54566698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档