Cómo monitorear el pH del suelo y el nivel de humedad
Colaboración de Editores de DigiKey de América del Norte
2018-03-29
El mantenimiento de la humedad y el pH adecuado del suelo es un requisito fundamental para la salud de la planta, ya sea que se aplique en agricultura a gran escala o en simples huertos en el hogar. Sin embargo, para medir estas características del suelo, los desarrolladores necesitan diseñar cadenas de señales analógicas de precisión rentables capaces de convertir datos brutos en información útil requerida para aplicaciones de medición de suelos específicas.
Un enfoque para lograr estos objetivos de precisión es utilizar un diseño de referencia con un software apropiadamente flexible. Un buen ejemplo de una solución de este tipo es la placa EVAL-CN0398-ARDZ y el paquete de software de Analog Devices
Este artículo analiza las aplicaciones y los requisitos asociados con el monitoreo de la humedad y el pH del suelo antes de presentar la placa CN0398 de Analog Devices y el diseño de referencia. El artículo explica cómo los principales componentes utilizados en el diseño CN0398 abordan los requisitos más importantes de diseño y examina la función en la aplicación general. El artículo finaliza mostrando cómo los desarrolladores pueden utilizar la placa CN0398 y el paquete de software asociado para evaluar y personalizar rápido las aplicaciones de monitoreo de suelos.
La necesidad de una medición precisa del suelo
La necesidad de mantener el contenido de agua y el nivel de pH del suelo es un requisito fundamental para los productores de plantas en cualquier escala de producción. Las deficiencias en el agua del suelo llevan a una fotosíntesis reducida para cualquier planta, así como a una disminución en otros procesos biológicos como la fijación de nitrógeno en importantes cultivos de leguminosas, como la soja.
Del mismo modo, los cambios en el suelo por fertilización o fenómenos naturales pueden tener un impacto dramático en el pH, lo que lleva a una reducción de los microbios y los nutrientes del suelo esenciales. En algunos cultivos, el pH inadecuado del suelo en etapas tempranas de crecimiento lleva a tasas de crecimiento y rendimiento final más bajas.
Sin sistemas adecuados de monitoreo del suelo, la humedad del suelo y el pH pueden cambiar a valores desfavorables, lo que resulta en un eventual deterioro de la salud de la planta. Juntos, el tablero y el paquete de software EVAL-CN0398-ARDZ de Analog Devices brindan un diseño completo de monitoreo del suelo que los desarrolladores pueden emplear directamente o modificar para cumplir con los requisitos exclusivos.
La placa CN0398 y el diseño de referencia de Analog Devices fueron creados específicamente para el uso con sensores externos de humedad, pH y temperatura en aplicaciones de medición de suelos. Los circuitos incorporados comprenden un diseño completo de multisensor requerido para producir datos de salida de humedad y pH accesibles a través de la interfaz en serie. Incluso con la amplia funcionalidad, el diseño consume un máximo de solo 1.95 miliamperios (mA) y proporciona funciones de ahorro de energía, que incluyen el uso de la modulación por ancho de pulsos (PWM) para alimentar sensores externos.
Los desarrolladores pueden utilizar el CN0398 para hacer arrancar diseños de hardware personalizados o utilizar el tablero con la placa base de Analog Devices EVAL-ADICUP360 compatible con Arduino. Diseñado como un escudo Arduino, el CN0398 se conecta directo a la placa base, lo que brinda una plataforma para el rápido desarrollo de aplicaciones.
Para agilizar el desarrollo del software, los ingenieros pueden aprovechar el paquete de software de Analog Devices ADuCM360_demo_cn0398 de código abierto diseñado para la utilización con la placa del sensor CN0398, la placa base ADICUP360 y CrossCore Embedded Studio de Analog Devices. Junto con los controladores básicos y las utilidades de soporte del sistema, el paquete de software contiene archivos fuente y de cabecera completos de C ++, con una aplicación completa de software de medición de suelos.
La combinación del conjunto de placas y el paquete de software de Analog Devices brinda a los desarrolladores un diseño de hardware completo y una aplicación de software listos para el uso inmediato en aplicaciones de medición de suelos. Igualmente importante, el software de muestra y diseño de referencia de hardware CN0398 brinda el modelo para un desarrollo rápido de sistemas de medición de suelo personalizados que cumplan con los requisitos exclusivos de estas aplicaciones.
Procesamiento de señal de sensor
El diseño del hardware CN0398 incluye tres subcircuitos separados para sensores externos de humedad, pH y temperatura. Cada subcircuito proporciona toda la red de circuitos requeridos para interactuar con cada tipo de sensor. Como resultado, los desarrolladores solo necesitan enchufar cada sensor en el conector correspondiente en la placa CN0398 y proporcionar energía para comenzar las operaciones del sensor. Esta funcionalidad se basa en la interfaz de Analog Devices, AD7124-8, que combina una interfaz de acondicionamiento de señal extensivo con un convertidor analógico digital sigma-delta (Σ-Δ) de 24 bits (ADC) (Figura 1).

Figura 1: Con la cadena de señal integrada y ADC, AD7124-8 de Analog Devices simplifica el diseño de los sistemas multisensor requeridos para la medición del suelo. (Fuente de la imagen: Analog Devices)
El multiplexor de señal de AD7124-8 puede enrutar 8 entradas diferenciales o 15 de terminación única a través de la cadena de señal programable integrada al ADC Σ-Δ en chip y del filtro digital para conversión y acondicionamiento. Los desarrolladores utilizan la interfaz en serie de AD7124-8 para conectar el dispositivo a un host de MCU para el control del dispositivo y la conversión de datos.
Debido a la amplia funcionalidad, los desarrolladores pueden cumplir una amplia gama de requisitos de diseño con pocos componentes adicionales además de los circuitos del sensor y una fuente de voltaje estable. Para el diseño de referencia CN0398, Analog Devices usa la referencia de voltaje ADR3433 como suministro analógico (AVDD) y referencia de voltaje (REFIN1) (Figura 2). Como se describe a continuación, los diseños para cada uno de los tres circuitos de sensor solo requieren unos pocos componentes adicionales.

Figura 2: Con AD7124-8 de Analog Devices, los desarrolladores pueden implementar diseños de sensores con pocos componentes adicionales además de circuitos de entrada de sensores específicos y una referencia de voltaje de precisión como la ADR3433 de Analog Devices. (Fuente de la imagen: Analog Devices)
Medición de humedad
Los sistemas de humedad del suelo por lo general determinan el contenido de agua aprovechando la diferencia en la constante dieléctrica del agua (80) frente al aire (1). Para estos sistemas, los desarrolladores conducen un sensor simple de 3 hilos, como un sensor TE Connectivity Measurement Specialties HPP809A033 con un voltaje de excitación para generar un voltaje de salida proporcional al contenido de agua del suelo.
En el diseño CN0398, la interfaz de la humedad del suelo utiliza un regulador lineal ADP7118-2.5 de caída baja (LDO) de Analog Devices para proporcionar un voltaje de excitación estable (sensor V) para el sensor (Figura 3). Para suministrar LDO, los desarrolladores pueden obtener energía de la placa base ADICUP360 o de sus diseños personalizados.

Figura 3: El diseño CN0398 de Analog Devices utiliza el regulador de caída baja (LDO) ADP7118-2.5 de la compañía para proporcionar una fuente de voltaje de sensor V estable para un sensor de humedad capacitivo. (Fuente de la imagen: Analog Devices)
Aunque el ADP7118 puede proporcionar un nivel de voltaje de sensor continuo, las preocupaciones de consumo de energía y los requisitos específicos de algunos sensores de humedad obligan al uso de una fuente pulsada para controlar el sensor. Para hacer frente a estos requisitos, los desarrolladores pueden suministrar al sensor pulsos de voltaje activando el puerto de habilitación (EN) del LDO con una salida MCU PWM.
El uso del circuito de acondicionamiento de señales integrado y ADC permite que AD7124-8 pueda muestrear y convertir de manera confiable la salida de voltaje de un sensor de humedad. Sin embargo, para aplicaciones de medición de suelos, la relación entre los datos del sensor convertido y la humedad del suelo puede ser compleja.
Al evaluar la humedad del suelo, los expertos en sanidad del suelo suelen comparar los niveles de humedad en términos de contenido de agua volumétrica (VWC), que es la relación entre el volumen de agua y el volumen total del suelo. Los fabricantes de sensores de humedad suelen brindar ecuaciones para convertir la salida de los sensores a VWC. Aun así, las condiciones del suelo o la naturaleza de la aplicación en sí pueden requerir el uso de una ecuación de conversión más adecuada para cada situación particular.
Analog Devices exhibe el uso de cualquiera de los enfoques en el paquete de software de muestra. Al habilitar USE_MANUFACTURER_MOISTURE_EQ para definir en el archivo de cabecera CN0398.h, los desarrolladores pueden optar por utilizar las fórmulas de conversión por partes recomendadas por el fabricante o una ecuación de conversión estándar proporcionada en el software. A continuación, la rutina read_moisture() de muestra genera una salida de humedad dependiendo del rango de voltaje de salida del sensor si USE_MANUFACTURER_MOISTURE_EQ está definido (Listado 1). Si la definición está comentada en el encabezado CN0398, la rutina puede convertir el voltaje en humedad utilizando la expresión matemática dada.
float CN0398::read_moisture()
{
float moisture = 0;
#ifdef MOISTURE_SENSOR_PRESENT
DioSet (ADP7118_PORT, ADP7118_PIN);
set_digital_output(P3, true);
timer.sleep (SENSOR_SETTLING_TIME);
int32_t data = adcValue [MOISTURE_CHANNEL] = read_channel (MOISTURE_CHANNEL);
DioClr (ADP7118_PORT, ADP7118_PIN);
float volt = voltage [MOISTURE_CHANNEL - 1] = data_to_voltage_bipolar (data, 1, 3.3);
#ifdef USE_MANUFACTURER_MOISTURE_EQ
if (volt <= 1.1) {
moisture = 10 * volt - 1;
} else if (volt> 1.1 && volt <= 1.3) {
moisture = 25 * volt - 17.5;
} else if (volt> 1.3 && volt <= 1.82) {
moisture = 48.08 * volt - 47.5;
} else if (volt> 1.82) {
moisture = 26.32 * volt - 7.89;
}
#else
moisture = -1.18467 + 21.5371 * volt - 110.996 * (pow(volt, 2)) + 397.025 * (pow(volt, 3)) - 666.986 * (pow(volt, 4)) + 569.236 * (pow(volt, 5)) - 246.005 * (pow(volt, 6)) + 49.4867 * (pow(volt, 7)) - 3.37077 * (pow(volt, 8));
#endif
if(moisture > 100) moisture = 100;
if(moisture < 0 ) moisture = 0;
#endif
set_digital_output (P3, false);
return moisture;
}
Listado 1: El paquete de software CN0398 de Analog Devices brinda una rutina de muestra de humedad que exhibe cómo los desarrolladores pueden usar fórmulas de conversión del fabricante o ecuaciones para convertir el voltaje del sensor de humedad a datos de humedad útiles. (Fuente código: Analog Devices)
Medición de pH
Un sensor de pH normal como el del kit pH de SparkFun Electronics SEN-10972 exhibe un circuito equivalente caracterizado por una fuente de voltaje de alta impedancia. Incluso utilizando un ADC con un front end de acondicionamiento de señales integrado, los desarrolladores experimentados suelen agregar un búfer entre la salida del sensor y la entrada del ADC en estas situaciones.
En consecuencia, el circuito del sensor de pH en el diseño CN0398 incluye un amplificador operacional ADA4661-2 de Analog Devices (Figura 4). Adecuado para aplicaciones de baja potencia como circuitos de sensores, el ADA4661-2 es un amplificador operacional de precisión que ofrece operación de suministro único, bajo consumo de energía y bajo voltaje de compensación en todo su rango de voltaje operativo.

Figura 4: En el diseño CN0398 de Analog Devices, un amplificador operacional ADA4661-2 de Analog Devices brinda un búfer entre un sensor de pH normal de alta impedancia y la entrada analógica AD7124-8 de Analog Devices. (Fuente de la imagen: Analog Devices)
Aunque el diseño se basa en un solo voltaje de suministro, los sensores de pH suelen generar una salida de voltaje bipolar. En este caso, sin embargo, el AD7124-8 brinda una manera simple de polarizar el sensor a un nivel adecuado sobre el suelo. El AD7124-8 integra un generador de voltaje de polarización interno que establece el voltaje de modo común de un canal a AVDD/2. Como en este caso, los diseñadores pueden utilizar un pin de salida AD7124-8 para entregar este voltaje de polarización al lado bajo del sensor de pH (VBIAS en la Figura 4). Los desarrolladores pueden restaurar de una manera simple la entrada sesgada a un resultado digital bipolar en el software.
El paquete de software de código abierto ADuCM360_demo_cn0398 incluye una rutina read_ph() de muestra que ilustra el proceso de conversión del voltaje de salida del sensor de pH a valores de pH. Al igual que con la rutina de humedad del suelo, la rutina de muestra de pH demuestra el uso de dos enfoques diferentes para generar valores de pH (Listado 2).
float CN0398::read_ph(float temperature)
{
float ph = 0;
#ifdef PH_SENSOR_PRESENT
int32_t data;
set_digital_output(P2, true);
adcValue [PH_CHANNEL] = data = read_channel (PH_CHANNEL);
float volt = voltage[PH_CHANNEL - 1] = data_to_voltage_bipolar(data, 1, 3.3);
if(use_nernst)
{
ph = PH_ISO -((volt - ZERO_POINT_TOLERANCE) / ((2.303 * AVOGADRO * (temperature + KELVIN_OFFSET)) / FARADAY_CONSTANT) );
}
else
{
float m = (calibration_ph [1] [0] - calibration_ph [0] [0]) / (calibration_ph [1] [1] - calibration_ph [0] [1]);
ph = m * (volt - calibration_ph [1] [1] + offset_voltage) + calibration_ph [1] [0];
}
set_digital_output (P2, false);
#endif
return ph;
}
Listado 2: La rutina de muestra de Analog Devices para leer los valores del sensor de pH ilustra el uso de la ecuación estándar de Nernst o los valores de calibración incorporados para convertir la salida de voltaje del sensor de pH a valores de pH. (Fuente código: Analog Devices)
Al establecer una variable use_nernst como verdadera en el paquete de muestra, los desarrolladores pueden generar el pH utilizando la ecuación estándar de Nernst. Una vez establecida en falso, la variable hace que la rutina use los valores creados durante un procedimiento de calibración de dos puntos, que se suele realizar con soluciones de búfer de pH de referencia, como las del kit de pH SparkFun SEN-10972. Las rutinas de software de muestra vienen con valores de calibración predeterminados establecidos utilizando tablas de búsqueda NIST para diferentes soluciones de búfer de pH y valores de pH corregidos de temperatura que oscilan entre 0 °C y 95 °C. Los desarrolladores pueden reemplazar los valores predeterminados con sus datos de calibración personalizados, o modificar fácilmente el código para admitir valores predeterminados y personalizados.
Medición de temperatura
Como se ilustró anteriormente en el Listado 2, el pH depende de la temperatura, ya sea de manera explícita como en la ecuación de Nernst o implícita en los valores de calibración personalizados. Además, la temperatura afecta la sensibilidad del sensor y la cadena de señal. Aunque el sensor de temperatura integrado del AD7124-8 (vea la Figura 1 de nuevo) puede abordar algunos de estos inconvenientes, la medición confiable del suelo depende de lecturas de temperatura precisas. En consecuencia, el canal del sensor de temperatura CN0398 está diseñado para garantizar lecturas precisas de un detector de temperatura resistivo (RTD) PT100 de 3 hilos externo, como el Adafruit Industries 3290.
Al igual que con cualquier sensor resistivo, los RTD requieren una corriente de excitación para permitir la medición de los cambios de voltaje dependientes de la temperatura. Por lo general, los desarrolladores que utilizan sensores resistivos necesitan aumentar los diseños de sensores con controladores externos, reguladores y sensores de corriente para mantener la corriente de excitación a niveles precisos. Con el AD7124-8, sin embargo, los desarrolladores solo necesitan agregar las redes pasivas apropiadas necesarias para admitir una configuración de 3 cables (Figura 5).

Figura 5: Para conducir un detector de temperatura resistivo (RTD) de 3 hilos, el diseño CN0398 de Analog Devices utiliza fuentes de corriente constante programables integradas en AD7124-8 de Analog Devices. (Fuente de la imagen: Analog Devices)
Integrado en el AD7124-8, un par de generadores de corriente constante brindan excitación en varios niveles fijos de 50 a 1000 microamperios (μA), que incluyen el nivel de 500 μA utilizado en el diseño del CN0398. Los desarrolladores establecen el nivel de corriente y el pin de salida con la programación de los bits IOUTx e IOUTx_CH en el registro de configuración IO_CONTROL del dispositivo, respectivamente. Como parte de la rutina de inicialización, el paquete de software CN0398 establece los canales ADC AIN11 y AIN12 como pines de salida para dos corrientes de excitación de 500 μA, IOUT1 e IOUT2.
Aunque los generadores de corriente son suficientemente precisos para muchas aplicaciones, los desarrolladores pueden eliminar de manera fácil el impacto de la variación de corriente mediante el uso de una técnica de medición radiométrica. El circuito de sensor de temperatura del hardware CN0398 que se muestra en la Figura 5 usa este enfoque. A continuación, la misma corriente IOUT1 pasa a través del RTD y un resistor de referencia de precisión RREF, lo que da como resultado una medición radiométrica. Al mismo tiempo, IOUT2 produce una caída de voltaje a través de la resistencia del conductor RTD SENSE de RTD que cancela la caída de voltaje a través de la resistencia del cable RTD+.
Al igual que con los sensores de humedad y pH, la conversión de los valores de resistencia a la temperatura requiere una función de transferencia apropiada. Para un RTD normal, la relación entre la temperatura y la resistencia se puede expresar matemáticamente de manera confiable. Aun así, se necesitan dos expresiones matemáticas diferentes para temperaturas superiores e inferiores a 0 °C. El paquete de software de código abierto ADuCM360_demo_cn0398 admite ambos métodos, así como una conversión lineal simple (Listado 3).
float CN0398 :: read_rtd ()
{
float temperature = 0;
int32_t data;
adcValue [RTD_CHANNEL] = data = read_channel (RTD_CHANNEL);
float resistance = ((static_cast<float>(data) - _2_23) * RREF) / (TEMP_GAIN * _2_23);
#ifdef USE_LINEAR_TEMP_EQ
temperature = PT100_RESISTANCE_TO_TEMP(resistance);
#else
#define A (3.9083 * pow (10, -3))
#define B (-5.775 * pow (10, -7))
if(resistance < R0)
temperature = -242.02 + 2.228 * resistance + (2.5859 * pow(10, -3)) * pow(resistance, 2) - (48260.0 * pow(10, -6)) * pow(resistance, 3) - (2.8183 * pow(10, -3)) * pow(resistance, 4) + (1.5243 * pow(10, -10)) * pow(resistance, 5);
else
temperature = ((-A + sqrt(double(pow(A, 2) - 4 * B * (1 - resistance / R0))) ) / (2 * B));
#endif
return temperature;
}
Listado 3: Para convertir los valores de resistencia a la temperatura, una rutina de muestra de Analog Devices ilustra el patrón de diseño básico para seleccionar el método apropiado basado en definiciones estáticas (USE_LINEAR_TEMP_EQ) o valores dinámicos (resistencia <R0). (Fuente código: Analog Devices)
Como se muestra en el Listado 3, la rutina de muestra read_rtd() permite a los desarrolladores seleccionar una macro de conversión lineal simple, PT100_RESISTANCE_TO_TEMP, definida en el módulo CN0398.cpp. De manera alternativa, los desarrolladores pueden usar las expresiones matemáticas más complejas dadas en la rutina de muestra read_rtd (). En este caso, el punto de inflexión de 0 °C para elegir la expresión apropiada está implícito en R0, que es la resistencia de RTD a 0 °C.
Conclusión
Para construir sistemas de medición de suelos, los ingenieros se enfrentan a una serie de desafíos tanto en hardware como en software. Los diseños de hardware deben abordar los requisitos de la interfaz del sensor, mientras que el software debe adaptarse a diferentes enfoques para convertir datos sin procesar a información útil.
La placa CN0398 de Analog Devices y el paquete de software de código abierto ADuCM360_demo_cn0398 abordan ambos aspectos del diseño del sistema de medición del suelo. Utilizados en combinación con la placa base ADICUP360 compatible con Arduino de Analog Devices, la placa y el software CN0398 brindan una solución de medición de suelo completa.
Los desarrolladores pueden usar esta solución preconfigurada para crear aplicaciones de medición de suelo o ampliar el diseño de referencia asociado y el software de muestra para crear soluciones personalizadas.
Descargo de responsabilidad: Las opiniones, creencias y puntos de vista expresados por los autores o participantes del foro de este sitio web no reflejan necesariamente las opiniones, las creencias y los puntos de vista de DigiKey o de las políticas oficiales de DigiKey.




