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)

运行结果:

时间: 2024-10-15 20:15:32

Raspberry Pi开发之旅-土壤湿度检测的相关文章

Raspberry Pi开发之旅-发送邮件记录时间及IP

由于我使用树莓派的场景大多数是在没有显示器.只用terminal连接它的情况下,所以,它的IP地址有时会在重启之后变掉(DHCP的),导致我无法通过terminal连接上它.然后我又要很麻烦地登录路由器的管理界面里,去看它被分配到的新IP是什么,然后用terminal重连,太麻烦了,不是么?作为一个树莓派玩家,这种麻烦简直是无法接受的! 为了解决这个问题,我让Pi开机的时候,自动向我指定的Email发送一封邮件,告诉我它此次开机时的IP地址. 步骤: 开机时执行一个脚本,检测网络可用性→网络通畅

Raspberry Pi开发之旅-同步时间

使用htpdate同步时间 由于树莓派板子上没有 RTC 硬件和电池,因此树莓派上的系统时间重启是保存不了的.网上已经有人想到应对 NTP 被防火墙封掉类似的需求了,开源的 htpdate 命令直接使用 HTTP 协议来进行系统时间同步,项目主页在这里: https://github.com/iridium77/htpdate htpdate 的原理也非常简单,直接解析 HTTP 协议头中的服务器时间信息,然后设置本地时间,我们来看百度返回的 HTTP 头: HTTP/1.1 200 OK Da

Raspberry Pi开发之旅-空气温湿度检测(DHT11)

一.首先,简单介绍下DHT11: DHT11是一个温湿度传感器,分为3个接口,分别为:VCC, DATA, GND  引脚号 名称 类型 说明 1 VCC 电源 +级,输入3V-5.5V 2 DATA 数据输出 输出引脚 3 GND 接地 接地引脚 之前看网上说,需要在DHT11VCC和DATA之间加一个电阻,经试验完全不需要. 二.引脚连接: 1.VCC接上3V,可以选择1口或者17口 2.DATA接上GPIO口,我选的是GPIO4,第7口 3.GND接上接地口,我选的是第14口 三.Pyth

Raspberry Pi开发之旅-WIFI遥控小车

一.简单介绍树莓派的GPIO口 上图是树莓派2代的接口(不同型号接口会有差异),我们就以此为例来说下这些接口. 1.GPIO介绍 GPIO 英文全称是:General-purpose input/output 通用型之输入输出的简称,其接脚可以供使用者由程控自由使用,PIN脚依现实考量可作为通用输入(GPI)或通用输出(GPO)或通用输入与输出(GPIO).通过这些GPIO口,我们可以控制很多第三方的寄存器设备,简单来说我们可以通过这些I/O口控制一些芯片的电路.读取传感器的数值等. 2.所需材

Raspberry Pi开发之旅-实现云平台监控

一.基本设置 1 sudo raspi-config 移动到第五项"Enable Camera",回车进入,按tab键切换到"Enable"回车确认.回到主菜单,tab键切换到"Finish"回车确认.树莓派会自动重启. 或者执行命令手动关机 1 sudo shutdown -h now 警告!!!!!!!!!!!!!!!!!!!!!!!!!绝对不可以带着电源的情况下插入摄像头,如果带电操作,十之八九你的摄像头会GG,博主血泪教训.而且摄像头GG

Raspberry Pi开发之旅-远程监控

1.安装辅助工具 1 2 sudo apt-get install libjpeg8-dev sudo apt-get install cmake 2.编辑源文件 1 2 sudo git clone <a href="https://github.com/jacksonliam/mjpg-streamer" target="_blank">https://github.com/jacksonliam/mjpg-streamer<br><

基于树莓派(Raspberry Pi)平台的MQ-2烟雾报警系统以及结合Zabbix监控的实现(一)

一.前期准备 达成目标:   利用Rapberry Pi 驱动MQ-2烟雾报警模块,对信息进行采集和提取,而后Zabbix监控系统来收集和处理信息采集到的信息.  1.准备树莓派(Raspberry Pi)一个 2.MQ-2有害气体检测模块 3.杜邦线若干 4.SD卡一张以及一个读卡器 二.各个器件介绍 1.树莓派(Raspberry Pi) ??Raspberry Pi是一个英国小型组织慈善组织The Raspberry Pi Foundation发行的一款针对电脑业余爱好者,学生,以及小型企

Raspberry Pi 4B C和Python开发环境安装

C编译环境wiringPi安装 安装步骤参照 wiringPi官网 目前针对Raspberry Pi 4B的版本是2.5.2 cd /tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb 检查版本 gpio -v Python环境安装 sudo apt-get update sudo apt-get install idle-python2.7 原文地址

常用Raspberry Pi周边传感器的使用教程(转)

转:http://bbs.xiaomi.cn/thread-7797152-1-1.html 在Raspberry Pi 的使用和开发过程中,你可能时常需要一些硬件和传感器等来支持你的开发工作,例如,加入一个超声波测距的模块来让你的Raspberry Pi具备测距功能,加入一个测温模块以实现测温功能.今天我们为你准备了10款最常用的传感器与Raspberry Pi 结合使用的例程,你可以在你的开发工作中直接使用这些例程,也可以稍做更改以接入更多的传感器至你的Raspberry Pi项目当中. 本