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

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

[复制链接]
stduino 发布时间:2020-8-13 21:12
37种传感器(二十五)土壤湿度传感器模块+Stduino Nano&UNO" X5 i- j5 j! U
& g! c+ F: u# k" e
+ K  X  I9 D) _$ h6 K
关键词:
51;stm32;arduino;stduino单片机;stduino UNO&Nano;土壤湿度传感器模块
# X  a9 B4 M1 K6 ^- F0 W
说明:
, ^0 V7 _3 d- N" B
土壤湿度传感器能够监测土壤的含水量。土壤湿度传感器包含两部分(如下图所示)。当土壤较为干燥时,土壤电阻趋于无穷大,而当土壤较为湿润时,电阻率将迅速降低。土壤湿度传感器依据土壤电阻的变化输出不同模拟信号值,来监测湿度的变化。同时可以通过电位器(图上蓝色部分)来设置土壤湿度阈值:当超过某一特定值时,输出高电平,反之输出低电平(数字信号)。
25-土壤湿度传感器.png
0 ^" `1 q% J6 v7 a7 r- A, ?
在《工程勘察》2019年的一项研究中指出(孙旭,杨庆义,高兰,李振宇.湿度变化对土壤电阻率的影响研究[J].工程勘察,2019,47(01):35-40.),土壤电阻率与含水量之间的关系可以较好的拟合成指数函数关系,即
25-传感器公式4.png
$ T9 |4 Q- u6 M9 H4 Q; _: b
两个金属片之间的距离约为1.5cm,面积为0.5cm×4.5cm,串联电阻为10KΩ。由该模块的电路,可知模拟信号输出值(AO)与电阻率之间的关系为:
25-传感器公式3.png
  h" M* E: R8 u( F: Z9 c' t) ^8 m) H
联立可得:
25-传感器公式1.png
(以上公式的基础,建立在模拟量读取12位数据,即AO范围为0~4095,如果是10位读取,则应当将以上公式中的4096改为1024,重新计算。)
值得提出的是,该函数两端值明显不符合常识,不能很好拟合,无实际意义。得出的土壤含水量也只有是定性价值,仅供学习。

, A+ E) a# k6 |! s" i* f
实验目的:
利用土壤湿度传感器,监测土壤含水量。
& k8 z& w% a# v0 D3 t
器材:
Stduino UNO/Nano;杜邦线;土壤湿度监测模块
+ I, L; x5 N5 j: p7 o
电路连接:
25-土壤湿度传感器电路图.png 1 Y, q8 t2 p+ g; z* i* D

$ U5 h6 k8 c) ]: I+ Y! s
代码展示:
  1. <font face="Arial" size="3">#define Moisture A0 //引脚A0
    * h: Y( B! y9 _
  2. #define DO 7        //引脚D7
    3 T8 `% l4 A# X* S  X
  3. float value = .000;. }& |" }: t* L6 Z# @) I! ^

  4. + A7 X- t, W" w* K  w! O
  5. void setup()
    # z3 J6 g( f5 ?$ F, h! n$ }8 o! H
  6. {
      T9 e" d7 w: h7 m* Z$ k
  7.     // put your setup code here, to run once:
    % t: j8 o4 t! f3 ]$ h% p0 U+ J
  8.     pinMode(Moisture, INPUT_ANALOG);//定义A0为输入模式9 J# D  b0 m$ i2 j8 j
  9.     pinMode(DO, INPUT);
    9 N1 s7 ^. w5 O9 ^! Q$ R
  10.     Serial.begin(9600);
    0 g' \/ w2 d5 g
  11. }: @5 G" o5 R1 N! ?# F- R' p' G
  12. void loop(): L+ O1 _. X. N7 P
  13. </font><font face="Arial" size="3">{
    & Q9 x+ B! `, K! ?5 J+ O
  14.     // put your main code here, to run repeatedly:9 W8 n3 ~+ I5 t; A+ e
  15.     //串口返回测量数据
    8 l& _. N6 z. h4 z# U5 f
  16.     value = (6619.136/analogRead(Moisture))-2.203;! z# c6 _1 m! w# N/ i6 W* N
  17.     Serial.print("当前含水量");+ N- w# R' ^2 i# g& \7 }( _- y
  18.     Serial.print(value);3 l0 _+ x& |/ a! e& h' r& R
  19.     Serial.print("|DO=");1 s* m  R% |  S
  20.     Serial.println(digitalRead(DO));//读取DO的数值; }) f  {* u7 U' q
  21.     delay(1000);0 O& E3 _" c2 ^7 o" _* _6 V
  22. }</font>
复制代码

% x3 w/ R3 _: e; y) `/ _! r3 X
2 m( |! ^" `$ N9 K3 V
实验效果:
25-土壤湿度传感器(1).png
& N. [# q' R- {8 M+ I7 Z) L
25-土壤湿度传感器效果图.png : c) Q9 O* n: p  P9 O6 b

2 ]' B  C7 F. X- X6 D

Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。
( G! |- G: `+ NIDE当前支持的功能有:

  • GDB调试
  • 封装库下载安装
  • 代码自动补全提示
  • 中英文模式
  • UTF-8\GBK编码格式
  • 代码快速格式化
  • SWD\串口程序下载&调试(已验证)
  • DFU程序下载方式(待验证)
  • USB HID程序下载方式(待验证)
  • maple DFU程序下载方式(待验证)
  • maple DFU2程序下载方式(待验证)
  • MassStorage程序下载方式(待验证)
    4 M. f  N. O$ T/ B4 S0 N
    & K; o- q8 B' f, w! z0 l
    " N1 x- j& j. y, D

更多功能细节请前往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
    , @1 N5 T* ~. |

    ' f* r) S) c4 Q# t
    1 a: t$ G: v5 r7 v

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


$ j* w7 X  X5 A+ H! p

: Z9 H3 C- `+ j) K+ ]
收藏 评论0 发布时间:2020-8-13 21:12

举报

0个回答

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版