你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【更好用的单片机】【Stduino】Stduino学习(二十五)土壤湿...

[复制链接]
stduino 发布时间:2020-8-13 21:12
37种传感器(二十五)土壤湿度传感器模块+Stduino Nano&UNO
% j1 b! i2 k7 Q, g% ^
' m0 s1 y3 g0 i; K" \* T
% F) R9 ~8 u. j/ z' v0 G
关键词:
51;stm32;arduino;stduino单片机;stduino UNO&Nano;土壤湿度传感器模块

% q/ }" q# x) |7 N% E. [9 N2 {, Z% K说明:
% [& M) _2 z" T* E% F: Q/ \& I- U
土壤湿度传感器能够监测土壤的含水量。土壤湿度传感器包含两部分(如下图所示)。当土壤较为干燥时,土壤电阻趋于无穷大,而当土壤较为湿润时,电阻率将迅速降低。土壤湿度传感器依据土壤电阻的变化输出不同模拟信号值,来监测湿度的变化。同时可以通过电位器(图上蓝色部分)来设置土壤湿度阈值:当超过某一特定值时,输出高电平,反之输出低电平(数字信号)。
25-土壤湿度传感器.png
# u, p+ Y8 M" W/ n: S/ |4 W0 F' Q. _. y
在《工程勘察》2019年的一项研究中指出(孙旭,杨庆义,高兰,李振宇.湿度变化对土壤电阻率的影响研究[J].工程勘察,2019,47(01):35-40.),土壤电阻率与含水量之间的关系可以较好的拟合成指数函数关系,即
25-传感器公式4.png & t+ Q$ D: Q9 ]* y
两个金属片之间的距离约为1.5cm,面积为0.5cm×4.5cm,串联电阻为10KΩ。由该模块的电路,可知模拟信号输出值(AO)与电阻率之间的关系为:
25-传感器公式3.png
0 b& T% I1 C# v" z- Q
联立可得:
25-传感器公式1.png
(以上公式的基础,建立在模拟量读取12位数据,即AO范围为0~4095,如果是10位读取,则应当将以上公式中的4096改为1024,重新计算。)
值得提出的是,该函数两端值明显不符合常识,不能很好拟合,无实际意义。得出的土壤含水量也只有是定性价值,仅供学习。

7 T0 {' ^, K* n0 d
实验目的:
利用土壤湿度传感器,监测土壤含水量。

8 C8 t+ s, B4 v% q( O器材:
Stduino UNO/Nano;杜邦线;土壤湿度监测模块
9 F4 m2 D: P% p3 d+ f9 a
电路连接:
25-土壤湿度传感器电路图.png : O+ S0 K, h4 J* x. }
; s4 @, X+ F" V0 B% Z: u2 e. B4 W3 Q
代码展示:
  1. <font face="Arial" size="3">#define Moisture A0 //引脚A0& |% b" J/ m! a. L. n2 S
  2. #define DO 7        //引脚D71 L* U- p% x3 v9 L
  3. float value = .000;* o' A6 }5 q! O9 o
  4. " N0 c. U" g. B4 g
  5. void setup()
    % x1 i  F+ u& {9 L6 K" g
  6. {' I% n+ B- g+ N# n" ]
  7.     // put your setup code here, to run once:- _  U6 b; x# e
  8.     pinMode(Moisture, INPUT_ANALOG);//定义A0为输入模式6 M) H$ |. a8 l& O" m6 ]$ Z
  9.     pinMode(DO, INPUT);
    / H" b1 D" a* M9 v
  10.     Serial.begin(9600);
    - R  f5 \) l0 E3 M7 Y4 J: _* j
  11. }+ d/ }( O* H, w# x$ k
  12. void loop()" S0 Y3 W6 m2 V4 K: K' y
  13. </font><font face="Arial" size="3">{
    8 L$ c- t( X. D% O
  14.     // put your main code here, to run repeatedly:
    - r# e9 ~. s) H$ g
  15.     //串口返回测量数据
    5 F* E5 h  g7 C. b% P! G& B5 y. g( r
  16.     value = (6619.136/analogRead(Moisture))-2.203;
    6 U, o3 P5 `# P# F
  17.     Serial.print("当前含水量");& @9 F) W6 x* V. t
  18.     Serial.print(value);0 x  u: P6 n! Z( k
  19.     Serial.print("|DO=");
    ' v' _& y. X# }7 n
  20.     Serial.println(digitalRead(DO));//读取DO的数值
    5 l  w8 o$ k0 [" J
  21.     delay(1000);
    ; t4 V# |+ X6 A# |; ], [
  22. }</font>
复制代码

9 z, g) }+ x( K' o- M* n
/ l+ ]9 @3 p2 }4 k. G6 B3 e
实验效果:
25-土壤湿度传感器(1).png 6 k7 _/ ^4 U4 s, t* [
25-土壤湿度传感器效果图.png
1 B$ y+ ^! m( R7 Q

$ R' o7 O$ s- D  Y

Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。) \* }- _' g8 j* ]
IDE当前支持的功能有:

  • GDB调试
  • 封装库下载安装
  • 代码自动补全提示
  • 中英文模式
  • UTF-8\GBK编码格式
  • 代码快速格式化
  • SWD\串口程序下载&调试(已验证)
  • DFU程序下载方式(待验证)
  • USB HID程序下载方式(待验证)
  • maple DFU程序下载方式(待验证)
  • maple DFU2程序下载方式(待验证)
  • MassStorage程序下载方式(待验证)
    5 ~' k" t- T8 p" C
    ; J3 I( R  Y* h8 N& g
    # }+ ^( f6 d" S- F

更多功能细节请前往www.stduino.com进行了解

已经支持的芯片&板型列表:

  • Stduino UNO&Nano
  • Nucleo 144 boards
  • Nucleo 64 boards
  • Nucleo 32 boards
  • Discovery boards
  • Eval boards
  • STM32MP1 series coprocessor boards
  • Generic STM32F0 boards
  • Generic STM32F1 boards
  • Generic STM32F3 boards
  • Generic STM32F4 boards
  • Generic STM32H7 boards
  • Generic STM32L0 boards
  • 3D printer boards
  • LoRa boards
  • Electronic Speed Controller boards
  • Generic flight controllers
  • Garatronics boards
  • Midatronics boards
    ! Y2 w! O9 I$ ^; }. ^+ ^
    ; g5 o3 x+ N" l$ m

    . I6 B7 g$ ^# {) y( y

更多功能集成正在进行中~


5 F% C0 B. D7 `$ q
* W8 y3 f6 M8 P2 k8 F  o
赞 收藏 评论0 发布时间:2020-8-13 21:12

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版