• Raspberry Pi开发之旅-土壤湿度检测


    一、土壤传感器

    传感器四个针脚:

     针脚 含义
    AO 模拟信号输出
    DO 数字信号输出
    GND 电源负极
    VCC 电源正极

    二、接线

    YL-38和YL69 之间直接用2根母对母线连接。

    YL-38和树莓派之间VCC接1号针脚,GND接6号针脚,DO接11号针脚。

    我们把VCC接到树莓派的DC3.3v输出上,我用的是PIN 01,GND接在任何一个接地端口上,我用的是PIN 06,DO输出接任何一个空闲的GPIO端口,我用的是11。如果不清楚树莓派端口布局的朋友可以参考这张图:

    电源连通之后,电源灯会亮起:

    调节传感器上的十字旋钮,这个是灵敏度的校准,也是个阈值,直到在干燥空气中不让DO-LED亮起。

    倒一杯水,或者没有水的话,舔一下传感器的触角,DO-LED应该会亮起,这时候就校准好了。

    三、编写代码

    这个传感器在干燥时候输出的是高电平,遇到水输出低电平。根据这个原理:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    #!/usr/bin/python
    #coding=utf-8
    import RPi.GPIO as GPIO
    import time
     
    #回调函数
    def callback(channel):
        if GPIO.input(channel):
            print u'土壤有点干'
        else:
            print u'土壤太湿了'
     
    #定义针脚排序为BOARD形式
    GPIO.setmode(GPIO.BOARD)
     
    #针脚
    channel = 11
    #定义针脚为input口
    GPIO.setup(channel, GPIO.IN)
     
    #添加简单事件
    GPIO.add_event_detect(channel, GPIO.BOTH, bouncetime=200)
    #添加时间触发的回调函数
    GPIO.add_event_callback(channel, callback)
     
    #保持主进程不退出
    while True:
      time.sleep(0.1)

    运行结果:

  • 相关阅读:
    仿美团pc,koa+ssr(四)
    基本的数据库操作脚本
    jQuery选择器总结
    经常学习参考网站
    WebAPI
    Sqlserver 基本面试题
    truncate和delete的区别
    Webservice,WCF,WebAPI 之间的区别
    WCF 学习
    学习angularJs(1)--引用文件
  • 原文地址:https://www.cnblogs.com/Pond-ZZC/p/6678629.html
Copyright © 2020-2023  润新知