如何监测土壤pH值和水分含量

  保持适当的土壤湿度和ph值是植物健康的基本要求,无论是大规模农业还是简单的家庭菜园。然而,为了测量这些土壤特性,开发人员需要设计成本效益高的精密模拟信 链,能够将原始数据转换成特定土壤测量应用所需的有用信息。

  实现这些精度目标的一种方法是使用适当灵活的软件进行参考设计。该解决方案是一个很好的例子eval-cn0398-ardz板和软件模拟装置包。


  准确测量土壤的必要性

  保持适当的土壤含水量和ph值是植物种植者在任何生产规模中的基本要求。土壤水分不足直接转化为任何植物的光合作用下降,以及其他重要的豆科作物如大豆的固氮等生物过程的下降。

  同样,施肥或自然现象对土壤的影响会极大地影响土壤酸碱度,从而导致基本微生物和土壤养分的减少。在一些作物中,早期生长阶段土壤酸碱度的不当导致生长速率和最终产量下降。

  如果没有合适的土壤监测系统,土壤水分和pH值会转移到不利的值,从而导致植物健康的最终恶化。在一起,模拟设备eval-cn0398-ardz板和软件包提供了一个完整的土壤监测设计,开发者可以直接使用或修改以满足他们的独特需求。

  模拟装置的cn0398板和参考设计是专门用于外部水分、pH值、温度传感器和土壤测量的应用。它的车载电路包括一个完整的多传感器设计,需要通过串行接口访问湿度和ph输出数据。即使有广泛的功能,设计最大功耗只有1.95毫安(mA)和提供了省电功能,包括使用脉冲宽度调制(PWM)为外部传感器。

  开发人员可以使用cn0398启动自定义硬件设计或使用板与模拟设备eval-adicup360 Arduino兼容基板。设计为一个Arduino盾的cn0398直接插入基板提供一个快速的应用程序开发平台。

  为了加快软件开发,工程师可以利用模拟装置的aducm360_demo_cn0398开源软件包的设计与cn0398传感器板,adicup360脚板和模拟装置的crosscore嵌入式工作室。除了基本的驱动程序和系统的支持工具,该软件包包括完整的C++源文件和头文件,包括一个完整的土壤测量软件的应用。

  模拟设备板集和软件包的结合为开发人员提供了一个完整的硬件设计和软件应用程序,可以立即在土壤测量应用中使用。同样重要的是,这cn0398硬件参考设计和样本软件提供了自定义的土壤测量系统能够满足这些应用的独特要求快速发展的蓝图。


  传感器的信 处理

  的cn0398硬件设计包括外在水分三个独立的子电路,pH和温度传感器。每个子电路提供所需的所有不同类型的传感器接口电路。因此,开发人员只需要插上每个传感器到其相应的连接器上的cn0398板和传感器提供电源,开始行动。这个功能是建立在模拟设备ad7124-8,将一个24位∑-Δ广泛的信 调理前端(Σ-Δ)模数转换器(ADC)(图1)。

  模拟设备ad7124-8 ADC图

  图2:使用模拟设备ad7124-8,开发者可以使用一些额外的元件超出特定的传感器输入电路和精密电压参考如模拟设备adr3433实现传感器的设计。(图像源:凯利讯半导体)


  水分测量

  土壤水分系统通常利用水的介电常数(80)与空气(1)的差别来确定水分含量。对于这些系统,开发一个简单的3线传感器驱动如与激励电压产生的土壤水分含量成比例的输出电压TE连接测量专业hpp809a033传感器。

  在cn0398设计、土壤水分的前端使用模拟设备adp7118-2.5低压降(LDO)线性稳压器提供稳定的励磁电压(vsensor)的传感器(图3)。供应LDO,开发商可以从adicup360踢脚线或从他们的定制设计中汲取力量。

  模拟设备cn0398设计图

  图4:在模拟设备cn0398设计,模拟设备ada4661-2运算放大器提供了一个典型的高阻抗pH传感器和模拟设备ad7124-8模拟输入之间的缓冲。(图像源:凯利讯半导体)

  虽然设计依赖于单一的电源电压,pH传感器通常产生双极性电压输出。然而在这种情况下,这提供了一个简单的方法,ad7124-8偏置传感器到一个合适的水平地面。的ad7124-8集成了一个内部偏置电压发生器,设置一个AVDD / 2通道的共模电压。在这种情况下,设计师可以使用一个ad7124-8输出引脚提供偏置电压的pH传感器的低侧(Vbias图4)。开发人员可以轻松地将有偏见的输入恢复到软件中的双极数字结果。

  的aducm360_demo_cn0398开源软件包包括了一个样本read_ph()例程说明将pH传感器输出电压值的过程。与土壤水分常规一样,ph采样程序演示了使用两种不同方法产生pH值(清单2)。

  浮cn0398::read_ph(浮动温度)

  {

  漂浮PH值=0;

  # ifdef ph_sensor_present

  int32_t数据;

  set_digital_output(P2,真的);

  ADC值[ ph_channel ] =数据= read_channel(ph_channel);

  浮动电压=电压[ 1 ] ph_channel = data_to_voltage_bipolar(数据,1,3.3);

  如果(use_nernst)

  {

  pH = ph_iso -((伏zero_point_tolerance)/((2.303×阿伏伽德罗*(温度+ kelvin_offset))/ faraday_constant));

  }

  其他的

  {

  浮M =(calibration_ph [ 1 ] [ 0 ] – calibration_ph [ 0 ] [ 0 ])/(calibration_ph [ 1 ] [ 1 ] – calibration_ph [ 0 ] [ 1 ]);

  pH = m *(伏calibration_ph [ 1 ] [ 1 ] + offset_voltage)+ calibration_ph [ 1 ] [ 0 ];

  }

  set_digital_output(P2,假);

  # endif

  返回值;

  }

  通过设置一个变量use_nernst样品中包真的,开发者可以使用标准的能斯特方程产生的pH值。设置为false,变导致日常使用两点校准过程中创造的价值,以参考pH缓冲液如SparkFun sen-10972 pH试剂盒通常。示例软件例程使用设置的默认校准值,使用NIST查找表,用于不同的pH缓冲溶液和温度校正的pH值,范围从0°C到95°C.开发人员可以用自己定制的校准数据替换默认值,或者轻松修改代码以支持默认值和自定义值。


  温度测量

  如上图所示在清单2中,pH值对温度的依赖关系,明确在能斯特方程,或隐含在自定义校准值。此外,温度会影响传感器的灵敏度和信 链。虽然ad7124-8集成温度传感器(又见图1)可以解决这些问题,可靠的土壤测量依赖于精确的温度读数。因此,该cn0398温度传感器通道的目的是确保准确的读数从外部线PT100铂电阻温度检测器(RTD)如Adafruit产业3290。

  正如任何电阻式传感器,RTDs需要一个励磁电流允许的电压变化测量的温度依赖性。通常,使用电阻传感器的开发人员需要增加外部驱动、调节器和电流传感器的传感器设计,以维持精确水平的励磁电流。与ad7124-8,然而,开发人员只需要添加所需的支持线配置相应的无源 络(图5)。

  模拟设备cn0398设计图

   如何监测土壤pH值和水分含量

  图5:驱动线电阻温度检测器(RTD),模拟设备cn0398设计采用可编程恒流源集成在模拟设备ad7124-8。(图像源:凯利讯半导体)

  集成在ad7124-8,对恒流发生器提供了从50到1000微安在各种固定水平激励(μ一),包括500μ用于cn0398设计水平。开发商设置的当前水平和设备的io_control配置登记通过编程ioutx和ioutx_ch比特输出引脚,分别。作为其初始化例程的一部分,该cn0398软件包组ADC通道ain11和ain12作为500个μ励磁电流输出引脚,IOUT1和IOUT2。

  虽然目前发电机的许多应用是足够准确的,开发人员可以很容易地通过使用比率测量技术消除电流变化的影响。cn0398温度传感器的硬件电路如图5所示使用这种方法。在这里,同样的IOUT1电流通过热电阻与精密参考电阻RREF,导致比例测量。同时,IOUT2产生一个压降RTD的RTD感铅性取消压降RTD +引线电阻。

  与湿度和pH传感器一样,电阻值转换为温度需要适当的传递函数。对于典型的RTD,温度和电阻之间的关系可以可靠地用数学表示。即便如此,两种不同的数学表达式需要用上面和下面的0°C. aducm360_demo_cn0398开源软件包支持方法的温度,以及一个简单的线性转换(清单3)。

  浮cn0398::read_rtd()

  {

  浮子温度=0;

  int32_t数据;

  ADC值[ rtd_channel ] =数据= read_channel(rtd_channel);

  抗浮=((static_cast (数据)- _2_23)* RREF)/(temp_gain * _2_23);

  # ifdef use_linear_temp_eq

  温度= pt100_resistance_to_temp(电阻);

  其他#

  #定义(3.9083×pow(10,3))

  #定义B(5.775×pow(10,7))

  如果(电阻

  温度= -242.02 + 2.228 *电阻+(2.5859×pow(10,3))*战俘(电阻,2)-(48260×pow(10,6))*战俘(电阻,3)-(2.8183×pow(10,3))*战俘(电阻,4)+(1.5243×pow(10,10))*战俘(电阻,5);

  其他的

  温度=((- + sqrt(双(战俘(一、2)- 4 * b *(1 -抗性/ R0))))/(2×B));

  # endif

  回水温度;

  }

  清单3:将电阻值的温度,模拟设备样品常规说明选择基于静态定义的适当方法的基本设计模式(use_linear_temp_eq)或动态值(电阻

  如清单3所示,样品read_rtd()例程允许开发者选择一个简单的线性转换宏,pt100_resistance_to_temp,在cn0398.cpp模块定义。另外,开发人员可以使用在read_rtd()例程提供的更复杂的数学表达式。在这种情况下,0°C拐点选择合适的表达是隐含在R0,这是在0°C. RTD电阻。


  结论

  为了建立土壤测量系统,工程师们在硬件和软件方面都面临着一系列挑战。硬件设计必须解决传感器接口的要求,而软件必须适应不同的方法,将原始数据转换成有用的信息。

  模拟设备cn0398板和aducm360_demo_cn0398开源软件包解决土壤测量系统设计方面。用于模拟装置的Arduino兼容adicup360踢脚线的组合,cn0398板和软件提供一个完整的土壤测量解决方案。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年2月27日
下一篇 2018年2月27日

相关推荐