Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Abro este nuevo hilo para ir separando las distintas partes del proyecto y no hacer un hilo enorme donde se mezcle todo.
Como hemos comentado en este hilo: http://foro.webdearde.com/viewtopic.php?f=6&t=4277 " onclick="window.open(this.href);return false; tenemos la idea de diseñar e implementar un huerto domótico trabajando juntos en el foro.
Entre los muchos componentes que vamos a necesitar diseñar para la realización uno de ellos es el sensor de humedad de la tierra donde se encuentran las plantas, y del diseño de éste va a tratar este hilo.
Paso a hacer un pequeño resumen sobre la información que he encontrado en el rato que he estado buscando en internet, si hay algún experto en el tema bienvenido sea 😀 .
Hay varias formas de implementar un sensor de suelo, lo más habituales que encontramos en los blogs de internet son sensores de suelo resistivos o capacitivos.
Es un sensor muy barato de realizar donde tenemos un par de conductores introducidos en el suelo y para conocer la humedad medimos la resistencia que hay entre esos dos conductores, si hay más agua en la tierra leeremos una resistencia menor que cuando la tierra está seca. Las desventajas de este sensor es que se va a degradar con el tiempo, el metal de sus contacos se va a oxidar en presencia de la tierra y el agua, por lo que según se vaya oxidando obtendremos lecturars erróneas.
El otro problema que presenta es que la resistencia de la tierra no depende solo de la humedad sino también del tipo de tierra y de su composición. Por lo que para una misma humedad la lectura va a ser distinta de una tipo de tierra a otra que contenga más sal o minerales.
Su método de lectura es muy sencillo, solo hay que medir la resistencia que presenta con un pin del ADC del microcontrolador.
Un sensor barato de implementar donde en el pcb diseñamos un condensador coplanar, el valor de la capacidad del condensador es función de su trazado en el pcb y del entorno, en presencia de móleculas de agua que interactuan con las líneas del campo eléctrico del condensador el condensador aumentará su capacidad, por lo que si estamos en un entorno seco el valor de capacidad del condensador será menor que si se encuentra en un entorno humedo.
Este diseño es más fiable que el sensor resistivo, ya que el metal no está en contacto con la humedad y por tanto no se va a oxidar, y no medimos la resistencia del suelo que es función de su composición. Aunque según leo además del agua la composición del suelo tambien influye en el valor de la capacidad del condensador, aunque hay métodos de lectura para minimizar este efecto.
El reto principal lo vamos a tener a la hora de leer el valor del condensador, el condensador que vamos a obtener en el pcb es un condensador muy pequeño, del orden de picofaradios, más o menos lo que viene siendo la capacitancia parásita de muchos componentes.
Por lo general en los blogs se ven 3 formas de hacerlo:
1. Se carga el condensador a través de un pin del microcontrolador y se pone el pin como entrada analógica, se mide el tiempo que el condensador tarda en descargarse hasta cierto valor para conocer su capacidad. Cuanta más agua haya en el entorno mayor será el tiempo obtenido.
2. Se usa el condensador como parte de un circuito de un oscilador que genera una señal con una frecuencia determinada. En función de la capacidad del condensador que es función de la humedad del entorno obtendremos una frecuencia de salida mayor o menor de ese oscilador. Midiendo esta frecuencia con el microcontrolador podemos conoceer la cantidad de agua en el entorno.
3. Se aplica una señal cuadrada a un circuito con el condensador y se mide la tensión que obtenemos en la salida de este circuito con un pin del ADC del micro. La tensión es función de la capacitancia del condensador y por tanto de la presencia de agua en el entorno. Este método puede ser mejor que los anteriores ya que usando una señal de frecuencia del orden de MHz vamos a minimizar el efecto producido por el tiepo de suelo que tengamos, cito el comentario en un blog:
Hi, I'm a soil science researcher (not an electrical engineer), and have long experience using soil moisture sensors. The reason why high frequency set up is best lays on the fact that the dielectric constant is a complex number, i.e. a real part + imaginary part. The real part is dependent on soil moisture (the one you are insterested on measuring) but the imaginary part is dependent on the conductivity of the media and it is inversely proportional to the frequency. By using high frequency sensors (on the MHz range) you get rid off the unwanted salinity contribution on the total dielectric constant. The whole picture is rather more complex due to the so called Maxwell- Wagner effect but this is basically the main reason why low frequency sensors are highly affected by soil salinity and therefore would give artifact changes in soil moisture that could be due to changes in soil salinity.
Aunque no sé si para un condensador coplanar como afectará el caso.
Evidentemente buscamos un sensor que varie lo mínimo posible con el tipo de suelo, ya que el usuario final puede que no tenga la capacidad de calibrarlo.
The frequency seems to be an important issue (cf.: http://www.google.com/patents?id=hR-tAA " onclick="window.open(this.href);return false; ... &q&f=false), because with higher the frequencies the influnce of soil texture and soil conductivity is reduced, which sould make the sensors easier to calibrate.
4. Todos los métodos e integrados especificos para la lectura de sensores capacitivos, ya que el principio de nuestro dedo sobre la pantalla táctil es el mismo que tenemos aquí, un condensador que cambia su capacidad en presencia del agua que contiene nuestro dedo. Por lo que habrá bastante literatura al respecto y opciones comerciales disponibles.
Buscando en internet he encontrado el siguiente diseño de sensor capacitivo_ http://wemakethings.net/chirp/ " onclick="window.open(this.href);return false;
https://www.tindie.com/products/miceuz/i2c-soil-moisture-sensor/ " onclick="window.open(this.href);return false;
La idea de sensor que tengo en mente disñar como primera idea va a tener un aspecto muy similar a ese, pero además de medir humedad medirá la tempertura de la tierra y puede llevar también un sensor de luz.
Para la medida del sensor capacitivo usa el método 3: http://wemakethings.net/2012/09/26/capacitance_measurement/ " onclick="window.open(this.href);return false; un método muy simple donde tiene un RC a modo de integrador con el sensor, un diodo de bloqueo y un condensador para mantener el valor de tensión y proporcionarselo al ADC del microcontrolador cuando éste quiera realizar la lectura. Se puede añadir un operacional a modo de seguidor antes del diodo si queremos que el tiempo de establecimiento de la señal sea menor.
Aunque si se meten operacionales hay que ver el ancho de banda del operacional/coste del operacional, ya que la señal de reloj que llevan los Arduino creo que es de 8 a 16 MHz y cuanta más alta va a ser mejor para nuestro propósito.
Para ello desde un pin del microcontrolador genera una señal de 1 MHz, saca la señal de reloj del microcontrolador por un pin. Esa señal de reloj la usa para alimentar un circuito donde se encuentra el condensador que nos da un valor de tensión en función de la tierra.
Los archivos de la placa están disponibles en internet y he simulado lo que tiene (componentes ideales), ha diseñado un condensador en el pcb cuyo valor oscila entre 7 pF cuando está seco y 42 pF cuando está humedo. Usa una señal de reloj de 1 MHz que saca del reloj del sistema del microcontrolador, la he puesto de 5V y duty del 50% tengo que ver cuál es el valor real de la señal de reloj interna del microcontrolador, de todas formas aunque la tensión sea menor se puede subir con un trigger schmitt, y el duty será 50% supongo, pero tengo que sacarla en el osciloscopio para verla.
Con una señal de reloj de 5V y 50% de ciclo de trabajo obtiene 0.95V entre el valor máximo y mínimo de condensador, por lo que es una resolución aceptable (pasos de 2% de humedad) para un ADC de 8 bits, y más que suficiente para el de 10 bits. Pero lo dicho tengo que mirar la señal interna de reloj de un AVR que sale por PBO para ver cómo es.
En la imagen superior se ve dos veces el circuito, uno con el valor mínimo del condensador en seco (C3 7pF) y el otro con el condensador en agua (C4 42 pF), de esta forma se puede ver la variación de tensión en la salida que tiene. (Los valores de los condensadores de 7 y 42 pF son los que decía que había medido).
Bueno esto es más o menos la primera idea que tengo para hacer la placa del sensor de humedad, la placa va a llevar lo siguiente:
- Sensor de humedad capacitivo en el pcb.
- Sonda de temperatura para meter en la tierra.
- Sensor de luz cableado que se pueda colocar a una distancia donde no lo tape la planta.
- Microcontrolador compatible con Arduino.
- Conector con la placa base, el conector llevará 5V, tierra, un pin para encender y apagar la placa y que no consuma cuando no estemos midiendo, y un protocolor serie (probablemente RS232 conectado a una UART del micro, donde irán todas las placas, solo va a haber una placa de sensor de humedad habilitada al mismo tiempo).
- Bajo coste de componentes.
Supongo que tendrémos entre 1 ó 2 metros de cable, por lo que hay que ver que protocolo serie va bien con esta longitud de cable, I2C que es el que usa en su versión del sensor pues no va a funciona con un metro de cable sin añadie electrónica adicional.
Pasos que voy a realizar:
- Diseñar el condensador en el pcb, pedir varios pcbs con distintos trazados para ver que condensador puedo conseguir.
- Una vez seleccionado el trazado del condensador diseñar la electrónica con un microcontrolador AVR que esté en una de las placas de Arduino, para que se pueda programar desde este entorno.
- Probar el sensor capacitivo con el método 3 y ver si los resultados que se obtienen son suficiente. Si no son suficientes seguir mirando.
- Seleccionar el sensor de temperatura, seleccionar el sensor de luz.
- Que además de un condensador no tengamos una buen antena con un reloj de MHz y sus armónicos, RF es lo que menos he tocado.
- No soy experto en el tema, cualquier comentario o corrección es bien recibida.
Pues más o menos ésta es la idea que tengo para trabajar en los ratos que saque e ir haciendo esta parte del proyecto. He cogido esta parte por empezar por algún sitio, pero si alguien también quiere hacerla pues que me diga, o haga la suya y se comparan resultados.
A continuación iré editando y añadiendo los enlaces de interés sobre este tema para tenerlos recogidos al principio del hilo (más adelante y si continuamos con el proyecto pues un blog en ARDE funcionando vendría bien..).
Enlaces de interés sobre sensores de humedad de suelo:
Tipos de sensores de humedad: http://www.garden-info.org/wiki/Measure_Soil_Moisture " onclick="window.open(this.href);return false;
Ejemplo de diseño de un sensor capacitivo: http://zerocharactersleft.blogspot.com.es/2011/11/pcb-as-capacitive-soil-moisture-sensor.html " onclick="window.open(this.href);return false;
Sensor capacitivo chirp: http://wemakethings.net/chirp/ " onclick="window.open(this.href);return false;
Medida simple de sensor capacitivo con señal de reloj: http://wemakethings.net/2012/09/26/capacitance_measurement/ " onclick="window.open(this.href);return false;
Podemos ver muhcas posibilidades, pero lo que no quiero es ponerme a diseñar las placas, pedirlas, montarlas, etc.. gastarme 200-300 euros en pedidos de pcbs y componentes (varios rediseños) y que luego nadie más se anime a participar en el desarrollo del resto de las placas, no sé a mi me gustaría que fuesemos más en la parte del hardware, ya que es bastante lo que hay que hacer y probar.
S2
Yo, como ya dije antes, en el desarrollo hardware poco puedo aportar por que no tengo la experiencia ni los conocimientos suficientes. Lo que no quiere decir que no siga todos los días la evolución de este hilo y lo que se va proponiendo, e intentar comprenderlo y razonarlo en la medida de lo posible.
Sobre los gastos, podríamos hacer un crowfunding y aportar entre todos un poco, sería lo mas lógico.
Placa de topos y arduino, yo no me pondría a diseñar el sistema hasta no tenerlo probado y medio funcionando.
S2
Ranganok Schahzaman
No lo sé, puede que la única forma de atraer a la gente sea empezar a hacer algo, este mes tengo que hacer unos pedidos a mouser para unas placas que estoy haciendo, cogeré unos cuantos ATtiny para probar. Las placas de topos e incluso los pcbs en casa yo he dejado de usarlos, en este caso no es viable ya que se tiene que diseñar el condensador en el pcb, pero con el bajo coste de los pcbs profesionales chinos dudo que vuelva a hacer un pcb en casa. Si lo necesito con urgencia los pido por mensajería y en menos de una semana llegan.