CAO-10: Medidores de PH para Arduino

Continuamos analizando sensores, y para medir PH he seleccionado tres opciones diferentes que me parecieron interesantes y que presento sin poder hacer una comparativa entre ellas, ya que solo probé el último que aquí describo.

No son los únicos sensores de PH que encontré para Arduino, pero son los que me parecieron que por su simplicidad se adaptaban mejor a las necesidades del proyecto CAO.

Os recuerdo que estos artículos están orientados a gente con poca experiencia como yo mismo. Por ello suelo acompañar de bastante información adicional cualquier nuevo concepto que se trate.

pHduino:

PHduino
PHduino

No he podido probar esta interesantísima opción cuya página de proyecto podéis visitar aquí. Se trata de un proyecto de Hardware abierto y Código abierto. Es decir, las especificaciones son tales que cualquiera puede construirlo.

Lo que me echó para atrás es que no encontré la forma de conseguir a un precio asequible una placa de circuito impreso (Printed Circuit Board PCB) o un kit de componentes que incluya la PCB.

 

Cómo construir una PCB:

El diseño de un PCB se suele hacer asistido por ordenador, y aunque es factible construirse una placa uno mismo.

El punto de partida de la fabricación de un PCB es un fichero en alguno de los siguientes formatos: gerber, power pcb, protel, orcad o eagle. Para ello hay  programas de diseño que facilitan mucho el proceso, puedes ver uno de ellos en pcb wizard como hacer una placa para imprimir.

Para Winows me han hablado de PCB123 o de FreePCB y para Linux acabo de instalar KiCad que tiene muy buena pinta. Un vistazo a KiCad EDA Software Suite sirve para comprobar que no es ningún juguete.

Si buscas el fichero Gerber para el diseño de PCB de pHduino, lo encontrarás en un sitio SolderPad dedicado a compartir proyectos de electrónica. Entre ellos puedes encontrar proyectos como el de Arduino o como el propio pHduino que estamos comentando. Concretamente para pHduino, encontraras toda la información en phduino solderpad (fichero gerber para fabricar la PCB, lista de componentes, etc).

Construir una PCB a partir del fichero del diseño, sospecho que tiene bastante trabajo y me supondría comprar material para este tipo de tareas. El proceso de producción de PCB está muy automatizado y puede merecer mucho la pena encargar su construcción.  En cualquier caso, si te atreves con ello consulta el Tutorial: Cómo hacer una placa PCB desde principio a fin.

Contratación de servicios de diseño de PCB y fabricación de PCB.

En Internet podrás encontratar servicios de construcción de PCBs incluso para pequeñas cantidades como una o dos placas. Ĺa razón es que en muchas ocasiones, antes de encargar cantidades importantes de una PCB, hay que comprobar que funcionan correctamente.

Hay sitios de Internet que permiten a los usuarios diseñar sus propias PCBs.

Si alguien tiene experiencia en estos temas, que comente su experiencia. Yo he localizado algunos sitios que ofrecen estos servicios:

Hablé por teléfono con ElectroPCB y me comentaron que pueden hacer diseños partiendo de las especificaciones. Más económico sería partir de un diseño ya realizado y aportarlo en forma de fichero Gerber. Hay diversas clases de PCBs en función de las separaciones entre pistas y cosas así, y para esta placa, que no es muy sofisticada, se podría usar clase 4. En el coste de una BCB me comentaron que siempre hay que considerar dos partes. Una, la más cara, que llaman GRP que es de preparación, y otra el coste unitario. La cantidad mínima que hacen son tres placas, y dicen que son muy competitivos en el precio de la GRP siendo este el que más influye en pequeñas cantidades.

Me comentó también que la PCB de pHduino a simple vista tiene algunos fallos de diseños tales como ángulos rectos, cosa que está fuera de normativa porque produce interferencias, y serigrafías que quedarían ocultas por algún componente, etc. Es decir, estaba demostrando su conocimiento para que me hiciera una idea de como trabajan ellos y se enrolló bastante proporcionandome un montón de información interesante ya que me declaré un completo ignorante en estos temas.

Yo nunca necesité usar ese tipo de servicios, si bien para CAO, más adelante podría venirme bien solicitar  alguna PCB, pero para ello tendría que aprender a usar KiCad y podríamos volver sobre este interesante asunto.

BNC Sensor Shield.

bnc-sensor-shield-assembled
bnc-sensor-shield-assembled

La PCB no se parece a la de pHduino. El circuito electrónico de ambos es diferente, pero comparando la lista de componentes veo muchas similitudes entre ambos.

Los circuitos integrados coinciden y en esencia comparten lo más importante.

No parece una mala opción, pero la versión montada me pareció algo cara y la PCB también.

Versión montada por $39.75  o la placa por $11.25.

Viene muy bien documentada con la lista de componentes para poderlo autoconstruir.

 

Ph-meter de Dormant-labs:

Arduino PH Shield de Dormant Labs
Arduino PH Shield de Dormant Labs

Este es el único sensor de PH para Arduino que yo he probado y esa es la razón por la cual voy a extenderme un poco. Estoy satisfecho con el resultado inicial pero me falta usarlo en un entorno real y hacer algunas pruebas más. Lamento no poder hacer comparaciones, aunque creo que todos ellos son circuitos bastante similares y varían principalmente en el diseño del sistema de calibración.

Me extenderé un poco más que con los anteriores para comentar esta primera impresión favorable.

Arduino PH Shield de Dormant Labs
Arduino PH Shield de Dormant Labs

Existen dos versiones muy parecidas. Una de ellas, la que puede verse en la imagen a la izquierda, es la versión económica de $21.00.  dormant-labs-ph-shield-no-headers.

Es idéntica a la versión de $25.00 con la única diferencia de que se vende sin los cabezales de los pines soldados, cosa que es fácil de hacer.

La versión económica me pareció la mejor opción y es la que he comprado y probado.

Incluye un sistema de calibrado muy cómodo, consistente en meter la sonda en una solución a PH=7.00 y pulsar un botón, luego la introduces en una solución a PH=4.00, pulsas de nuevo el botón y ya está finalizada la calibración.

Arduino PH Shield de Dormant Labs (versión económica sin pines soldados)
Arduino PH Shield de Dormant Labs (versión económica sin pines soldados)

La calibración así realizada ha consistido en memorizar dentro de una ROM los valores en voltios entregados por la sonda en cada caso. Muy sencillo y cómodo de usar.

Ello permite usar estos valores consultando la ROM donde fueron almacenados y así usarlos en el código para obtener el valor del PH.

Es el software el que calculará el PH en función de estos valores y de la temperatura. A tal efecto, la placa incluye en su seno un sensor de temperatura, pero en mi humilde opinión no resulta muy útil medir la temperatura ambiente cuando se trata de controlar acuarios tropicales ya que estos suelen estar a una temperatura constante regulada por un termostato y la temperatura ambiente podría confundir la lectura del PH. Por ello, sería mejor usar para esta compensación la temperatura del líquido medida con una sonda de temperatura apropiada o asumir una temperatura constante para nuestro acuario, cosa que se puede hacer.

La versión económica, sin cabezales de pines soldados puede resultar ventajosa cuando no queremos usar los pines establecidos que son:

  • A3 para la temperatura (sensor en la placa).
  • A2 para el valor obtenido por la sonda.
  • D8 para el pulsador de calibración.

Estos son los pines que se conectan a Arduino al pinchar la placa, pero podemos llevar cada uno de estos pines de nuestra PH Shield a los pines de Arduino que deseemos usar sin olvidar dos cosas:

  • Cambiar en nuestro programa estos valores para los pines A3, A2 y D8.
  • Conectar igualmente los pines +5Vcc y GND de arduino a sus respectivos pines en la placa PH Shied.

Existe un par de pines más JP2 para poder conectar un pulsador externo, (cosa que yo no he probado).

Arduino PH Shield de Dormant Labs
Detalle de Arduino PH Shield de Dormant Labs

En la foto a la izquierda se aprecia un detalle de Arduino PH Shield con una placa extra intercalada ella misma y Arduino. Esto lo hice así porque la disposición de los elementos en la placa con los cabezales soldados, es algo conflictiva en el caso de Arduino Mega 256 (que es el que yo uso). El problema consiste en que el conector coaxial para la sonda PH puede llegar a hacer contacto con los pines ICSP de la placa Artuino Mega que están situados junto al botón reset.

Puede usarse a modo de separador una placa vacía de las que se usan para prototipos de Shields Arduino.

Detalle de Arduino PH Shield de Dormant Labs
Detalle de Arduino PH Shield de Dormant Labs

Esta es la solución que acabo de improvisar para mis pruebas.

Un elemento que puede encarecer el conjunto del sensor será la sonda de PH. En principio este medidor de Dormant-labs puede usar cualquier tipo de sonda de PH.

Existe un artículo de  que explica detalladamente como calibrarlo y usarlo: Arduino Dormant Labs PH Shield Tutorial.

 

 

 

Share

17 opiniones en “CAO-10: Medidores de PH para Arduino”

  1. Hola Antonio,
    muy interesantaes los articulos sobre CAO, solo comentarte que yo utilizo KICAD en el trabajo ( sobre windows y linux ) y va de maravilla! he realizado varias PCB con el y es una herramienta ( mejor dicho herramientas) en la que se puede confiar 100%. es muy fácil crearte tus propios componentes y hay un montón de disponibles en la red. yo particularmente he realizado diseños SMD / TH hasta 4 capas y PCBs de 160×100 aproximadamente y no he tenido ningún problema con los ficheros generados en ninguno de los proveedores, tanto para los prototipos como en la serie de fabricación.
    Para fabricar las PCBs un proveedor me recomendó http://www.eurocircuits.com/ (elektor PCB) para la realización de prototipos y pequeñas series y funcionan de maravilla, en la web tienen una calculadora de precios en función del tamaño , numero de capas , plazo de entrega… a mi me parece bastante económico sobre todo viendo la calidad y el servicio que dan, también totalmente recomendable.
    un saludo,

  2. Martxel, te agradezco mucho esa información ya que yo no tengo ni idea en el manejo de estas herramientas. Hace un par de días intenté hacer un diseño sencillo y tuve bastantes problemillas. Me quedó a medio hacer. Hay muchas cosas que desconozco, por ejemplo no sé que componente hay que incluir para colocar una entrada de un pin o cosas así.

    Iré poco a poco, pero si conoces algún buen tutorial me vendría de perlas.

    Me pregunto si se puede tomar parte de un diseño y copiarlo en otro. Me vendría muy bien poder copiar el diseño de pHduino (que es libre) y copiarlo como parte de una placa controladora de acuarios. Creo que el pHduino está realizado con eagle.

  3. Hola Antonio, gracias a tí por este blog, encantado de poder poner mi pequeño grano de arena.
    hay muchos buenos tutorial es en la red. Uno que cubre todo el proceso es este http://sluc.org.ar/sites/default/files/KiCad-es.pdf
    pero como te digo y habrás comprobado hay miles. Este en concreto describe la estructura de módulos del KICAD Eeschema, CvPCB , PCBnew , Libedit… en los que vas trabajando según avanzas en el proceso de diseño y como se enlazan, es básico pero ilustrativo.
    No sé a que refieres exactamente con «tomar parte de un diseño y copiarlo en otro», yo lo que hecho ha sido crear partes del esquemático (creando y buscando los componentes ) basándome en diseños existentes o referencias de diseño y luego seguir el proceso hasta crear la PCB .
    Si te refieres a tomar parte de la PCB de un diseño e integrarlo en tu diseño lo veo complicado, siempre basándome en mi experiencia.
    Yo he utilizado scripts para eagle que convierten librerías de componentes de Eagle al formato lib/mod de KICAD, Para ello instalé la versión gratuita de eagle ( yo lo he probado en windows , aunque también hay versión para linux ) y ejecutas los scripts sobre las librerias Eagle.
    he realizado una pequeña búsqueda parece ser que hay un script que exporta los esquemas de eagle a kicad , aunque personalmente no lo he probado:
    http://www.circuitbee.com/help/eagleimport
    Una vez que tienes el esquema en formato kicad tienes diferentes opciones , una de ellas es utilizar las jerarquias ( hierarchy ) de Eeschema e integrarlo dentro de tu proyecto,
    o editarlo para añadir / quitar las partes que te interesen, pero eso depende mas de cuanto quieras reutilizar el proyecto de phduino.
    yo personalmente procuro dividir los diferentes bloques en diferentes esquemas ( alimentación , salidas , entradas …. ) para que sean mas fáciles de localizar y reutilizar.
    Luego puedes basarte en PHduino para la distribución de componentes y realizar la PCB.
    Saludos !

  4. Sin duda una información muy útil porque si bien hay muchos tutoriales dar con uno bueno puede no resultar tan fácil. Al final, se aprende cualquier cosa con la práctica pero al comienzo de todo proceso de aprendizaje se dan muchos palos de ciego.

    Creo que tienes razón y que los diferentes módulos separados tiene más ventajas que inconvenientes.

    Si pasado un tiempo continuo atascado en algún punto y si a ti no te importa, te contactaré.

    PD:
    La URL del PDF me está dando errores. Parece que tiene problemas con el caché.

  5. Tienes toda la razón, los comienzos pueden ser mucho mas duros dependiendo del camino que elijamos!
    Yo puedo abrir sin problemas los dos links desde diferentes ordenadores / ubicaciones , no sé que puede estar pasando.
    Por supuesto no hay problema en ayudarte, todo lo contrario!

  6. Antes que nada que buena referencia, gracias … Bueno estoy haciendo un proyecto y ocupo un sensor de PH todos lo que e visto son muy caros … me podrias decir el precio en pesos (Moneda nacional de Mexico) y donde lo puedo conseguir, resido en Guadalajara, Jalisco de antemano muchas gracias … Posdata : es algo urgente ;/

    1. Sigue los enlaces que he puesto en el artículo y accede directamente a la información sobre precios.

      Hace falta valor para pedir a otro que te haga la conversión de precios de artículos de terceras personas al valor de tu moneda. No pidas ayuda de las cosas que puedas hacer tú mismo. No soy tu secretario.

  7. no logro calibrar el ph de mi pecera cuento sensor de ph y adicional mente conecte 2 electrovalvulas una con base y la otra con acido no logro entenderle a la programación del arduino

  8. Mi proyecto CAO1 no está listo. Contempla la gestión de sensores para que actúen cobre un incrementador y un reductor del parámetro físico que están midiendo. En el caso de temperatura calefactor y refrigerador, en el caso del pH podría ser lo que tu tienes. Necesitaría mucha más información sobre tu proyecto para poder ayudarte.

  9. Muy buenas Antonio,

    Estoy empezando a montar un sistema para mi acuario siguiendo los pasos de tu libro, el caso es que estoy en este momento comprando los componentes y mi sorpresa ha sido ver que el medidor de PH de Dormant-labs viene sin sonda y sin líquidos , quisiera saber si cualquiera de las sondas de eBay es valida o mejor ir a por un modelo concreto al igual que los líquidos.

    Un saludo y muchas gracias.

      1. Gracias Antonio, por lo que veo esa sonda está siendo reemplazada por la Milwaukee SE220 (en vez de la Milwaukee MA911B), no daría problemas, no?
        Disculpa que sea tan pesado, pero al ser un tema en el que estoy muy pez procuro estar seguro antes de comprar nada.

  10. Yo aparte del precio lo único que suelo mirar es si la sonda es apta para trabajar sumergida permanentemente. Para asegurarme, o bien la compro en un establecimiento de acuariofilia, o bien pregunto al vendedor.

  11. Buenas tardes, necesito medir el pH en tubería, es decir una sonda la cual tenga rosca, es para un sistema de purificación de agua.
    Alguien tendrá idea de como hacer eso?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *