博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Raspberry Pi开发之旅-土壤湿度检测
阅读量:5133 次
发布时间:2019-06-13

本文共 950 字,大约阅读时间需要 3 分钟。

一、土壤传感器

传感器四个针脚:

 

 针脚 含义
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
)

运行结果:

转载于:https://www.cnblogs.com/Pond-ZZC/p/6678629.html

你可能感兴趣的文章
java可重入锁reentrantlock
查看>>
浅谈卷积神经网络及matlab实现
查看>>
struts2学习(9)struts标签2(界面标签、其他标签)
查看>>
Android 导入jar包 so模块--导入放置的目录
查看>>
解决ajax请求cors跨域问题
查看>>
Android Studio
查看>>
zz 圣诞丨太阁所有的免费算法视频资料整理
查看>>
【大数模板】C++大数类 大数模板
查看>>
【123】
查看>>
《收获,不止Oracle》pdf
查看>>
用户权限设置
查看>>
java 之equals与"=="的区别
查看>>
LinkedList<E>源码分析
查看>>
学习微软 Excel 2002 VBA 编程和XML,ASP技术
查看>>
游戏开发常用算法
查看>>
Real-Time Rendering 笔记
查看>>
如何理解HTML结构的语义化
查看>>
Intellij IDEA(eclipse设置)常用快捷键
查看>>
learning express step(五)
查看>>
推荐2013年最新的10款jquery插件
查看>>