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

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

[复制链接]
stduino 发布时间:2020-8-13 21:12
37种传感器(二十五)土壤湿度传感器模块+Stduino Nano&UNO
9 T: }& t; }% r8 t& \
1 H9 p3 C1 ~& g" M$ F
* x* l0 ~" ~. D$ r5 ?( d' L& g: M
关键词:
51;stm32;arduino;stduino单片机;stduino UNO&Nano;土壤湿度传感器模块

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

* ~9 v% O% K( i% u2 U8 |# j1 t1 V! T( r
实验目的:
利用土壤湿度传感器,监测土壤含水量。
1 t6 z3 G! Q; L7 N9 h$ \
器材:
Stduino UNO/Nano;杜邦线;土壤湿度监测模块
- `: R# e7 M7 o. d
电路连接:
25-土壤湿度传感器电路图.png
4 J2 f! K) {0 l  p/ Q0 ^$ t

  P2 R, Z1 H) k" k4 ?
代码展示:
  1. <font face="Arial" size="3">#define Moisture A0 //引脚A0; h0 ~% }' @' p
  2. #define DO 7        //引脚D76 c1 M$ L  }' O- R0 p' a1 D
  3. float value = .000;: q- u. p4 b6 C8 B

  4. 1 B* q6 |/ {/ B% P
  5. void setup()
    ) u6 Y# a+ i: Q) F9 c
  6. {& f( n: r$ L; c' K4 |
  7.     // put your setup code here, to run once:( [- m8 n2 O& V% |& ~, x  C# ^5 b& M
  8.     pinMode(Moisture, INPUT_ANALOG);//定义A0为输入模式
    ! i. [+ h2 A! e, p7 h' |% X
  9.     pinMode(DO, INPUT);) F7 m& [4 s/ Y' l' g/ I8 M6 [
  10.     Serial.begin(9600);
    2 C! T9 P0 w/ r& o" r
  11. }* t5 M/ R% a2 ^$ I
  12. void loop()! [) T3 g6 Q; b
  13. </font><font face="Arial" size="3">{2 p7 r& s- h  L6 P( v$ y8 W
  14.     // put your main code here, to run repeatedly:8 \) N- L( O: U) A6 a. N5 P
  15.     //串口返回测量数据
    5 z0 w) }  T: W
  16.     value = (6619.136/analogRead(Moisture))-2.203;
    & Y9 A& m4 m+ X9 ^3 w% R: Y2 }
  17.     Serial.print("当前含水量");/ h% X0 m7 A5 o: I" @
  18.     Serial.print(value);+ t, \8 ]7 m4 Z4 w! l5 b
  19.     Serial.print("|DO=");
    ) B6 S" V6 n4 \7 k- T
  20.     Serial.println(digitalRead(DO));//读取DO的数值  d7 T/ j4 F7 E: p9 K- O4 V1 O
  21.     delay(1000);. U; o  b. m4 p/ u1 b
  22. }</font>
复制代码

& f. _% I2 Q) N$ }' D1 \
2 _& H! l7 X, B4 Y1 @
实验效果:
25-土壤湿度传感器(1).png
9 w4 b2 m! c1 p& \  h9 d( L- b; h
25-土壤湿度传感器效果图.png " n- c; p1 V# I$ v# z

1 D* y% Y# X' _2 e

Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。
; _9 Z0 s% O/ LIDE当前支持的功能有:

  • GDB调试
  • 封装库下载安装
  • 代码自动补全提示
  • 中英文模式
  • UTF-8\GBK编码格式
  • 代码快速格式化
  • SWD\串口程序下载&调试(已验证)
  • DFU程序下载方式(待验证)
  • USB HID程序下载方式(待验证)
  • maple DFU程序下载方式(待验证)
  • maple DFU2程序下载方式(待验证)
  • MassStorage程序下载方式(待验证)
    , s3 n9 e! q# I' X' R9 c) C: ?! S

    9 Z4 R# y: k: ^/ Z5 m; ]4 x* j
    & T' z$ }6 y0 ?( W, k  n8 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 boards6 _" u/ |0 }8 B* ~
    ' j! p5 v/ t7 |
    ' @# N8 o1 F8 d9 m& P

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

; g5 z, U! t+ \& q
2 R  l: s/ f+ B. y
收藏 评论0 发布时间:2020-8-13 21:12

举报

0个回答

所属标签

相似分享

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