Bueno perfecto, el protocolo SDI12 es solo para algunos de estos sensores, pero tambien vienen RS-485 aca traduje una parte de la hoja de datos del sensor donde explica en buen detalle como manejar los comandos los voy a colocar a continucacion:
Apéndice B – Comunicación RS-485
La sonda Hydra RS-485 es también digital y usa formato de comunicación RS-485. La sonda Hydra RS-485 usa 4 cables: un cable de tierra, un cable de alimentación de 12V y dos cables de datos. LA sonda Hydra Rs-485 se comunica por 2 cables de dato y puede conectarse a un puerto RS485 en un Logger. Se puede conectar a un conjunto de terminales como la versión SDI-12, pero con 4 cables en vez de 2. La ventaja del RS485 sobre el SDI12 es que la versión RS485 puede trabajar a más de 3000 pies. La desventaja es que consume más potencia.
Requerimientos de potencia 9 a 20 VDC (12VDC ideal)
Cable rojo Tensión de alimentación
Cable negro Tierra
Cable azul Señal de datos A – señal no invertida
Cable verde Señal de datos B – señal invertida
Tasa de Baudios 9600 8N1
Consumo <10 mA Idle / 30 mA en modo Activo
Sonda Stevens Hydra RS485 Especificaciones de comando.
Formato de comandos
AAACC<CR><LF> Ejecutar
AAACC=?<CR><LF> Consulta la configuración actual
AAACC=XXX…<CR><LF> Asigna un nuevo valor
AAA: Dirección de 3byte
Caracteres ASCII, 0-9 A-Z a-z
Carácter comodín ‘/’
Dirección de transmisión ‘///’
CC: Comando de 2 bytes
XXX…: Comandos de datos. Ver información de comandos para requerimientos específicos
<CR> Retorno de carro ASCII 13
<LF> Carácter de retorno de línea ASCII 10
Otros Gramaticales
<d>: Dígitos, ASCII ‘0’ al ASCII ‘9’
<a>: ASCII ‘A’ al ASCII ‘D’, usado para la constante de agua personalizada
<serial>: Numero serial, 8 dígitos <d><d><d><d><d><d><d><d>
<soil>: Tipo de suelo, 1 carácter { ‘1’ |‘2’ |‘3’ |‘4’ |‘C’ |‘D’ }
<quick>: Modo Rápido, 1 carácter { ‘1’ - ‘6’, ‘X’ }
<warump>: tiempo de calentamiento, 1-5 dígitos, 0-65535
<bool>: Valor booleano, 1 carácter { ‘0’ | ‘1’ }
<firmware> Firmware, 3 o 4 bytes, formateado como “2.7” o “R.2.7” o “2S7”
<text>: Texto ASCII imprimible
<float>: Numero decimal, opcionalmente usado en forma de notación científica.
Ej. “+23.54, 0.001, -123.0E5, 45E-3”
<readings>: Cadena de flotantes, delimitadas por comas. Ej. “+23.54, -42.532, +2342.12”
Especificaciones Sonda Hydra comandos RS485
Información de comandos
Numero serial
Descripción: Retorna el número de serie de fábrica.
Nivel de acceso: Solo lectura.
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>SN=?<CR><LF>
Respuesta de lectura: <addr><serial><CR><LF>
Versión de Firmware
Descripción: Devuelve el número de versión de firmware.
Nivel de acceso: Solo lectura.
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>FV=?<CR><LF>
Respuesta de lectura: <addr><firmware><CR><LF>
Comandos de configuración Estándar
Dirección
Descripción: Captura y establece la dirección de la sonda
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>AD=?<CR><LF>
Respuesta de lectura: <addr><CR><LF>
Dirección de escritura: Exact
Comando de escritura: <addr>AD=<serial><new_addr><CR><LF>
Respuesta de escritura: <new_addr><CR><LF>
Tipo de suelo
Descripción: Captura y establece el tipo de suelo de la sonda
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>ST=?<CR><LF>
Respuesta de lectura: <addr><CR><LF>
Dirección de escritura: Broadcast, Exact , Wildcard
Comando de escritura: <addr>ST=<soil><CR><LF>
Respuesta de escritura: <soil><CR><LF> (no hay respuesta en la dirección comodín)
Comandos de configuración avanzada.
Ubicación
Descripción: Captura y establece la ubicación de la sonda
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>LO=?<CR><LF>
Respuesta de lectura: <addr><text><CR><LF>
Dirección de escritura: Exact
Comando de escritura: <addr>LO=<text><CR><LF>
Respuesta de escritura: <addr><text><CR><LF>
Descripción
Descripción: Captura y establece la descripción de sonda
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>DS=?<CR><LF>
Respuesta de lectura: <addr><text><CR><LF>
Dirección de escritura: Exact
Comando de escritura: <addr>DS=<text><CR><LF>
Respuesta de escritura: <addr><text><CR><LF>
Constante Hídrica personalizada
Descripción: Captura y establece la constante hídrica de la sonda
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>X<a>=?<CR><LF>
Respuesta de lectura: <addr><float><CR><LF>
Dirección de escritura: Exact
Comando de escritura: <addr>X<a>=<float><soil><CR><LF>
Respuesta de escritura: <addr><float><CR><LF>
Modo rápido
Descripción: Captura y establece la constante hídrica de la sonda
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>QM=?<CR><LF>
Respuesta de lectura: <addr><quick><CR><LF>
Dirección de escritura: Exact
Comando de escritura: <addr>QM=<quick><CR><LF>
Respuesta de escritura: <addr><float><CR><LF>
Comandos del Debug
Warmup time
Descripción: Captura y establece el tiempo de calentamiento
personalizado de la sonda
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>WT=?<CR><LF>
Respuesta de lectura: <addr><warump><CR><LF>
Dirección de escritura: Exact
Comando de escritura: <addr>WT=<warmup><CR><LF>
Respuesta de escritura: <addr><warmup><CR><LF>
Sonda habilitada
Descripción: Captura y establece si el circuito de la sonda está
habilitado
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>PE=?<CR><LF>
Respuesta de lectura: <addr><bool><CR><LF>
Dirección de escritura: Exact
Comando de escritura: <addr>PE=<bool><CR><LF>
Respuesta de escritura: <addr><bool><CR><LF>
Comandos de medición
//Comandos fundamentales para la lectura de la humedad de suelo
Tomar Lectura
Descripción: Indica a una sonda o un grupo de sondas tomar una lectura
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>TR<CR><LF>
Respuesta de lectura: (ninguna)
Transmitir Conjunto leído
Descripción: Indica a una sonda transmitir una lectura especifica
Nivel de acceso: Lectura/Escritura
Dirección de lectura: Broadcast, Exact
Comando de lectura: <addr>TR<CR><LF>
Respuesta de lectura: (ninguna)
RS485 Conjuntos Transmitidos
(tc) indica valores que deben ser corregidos por temperatura
T0 – Conjunto transmisión 0:
H) Humedad
J) Conductividad eléctrica del suelo (tc)
F) Temperatura °C
G) Temperatura °F
O) Conductividad eléctrica del suelo
K) Permitividad Dieléctrica real.
M) Permitividad Dieléctrica Imaginaria.
L) Permitividad Dieléctrica real (tc).
N) Permitividad Dieléctrica imaginaria (tc)
T1 – Conjunto de transmisión 1:
F) Temperatura °C
G) Temperatura °F
I) Tangente de perdida
T2 – Conjunto de transmisión 2:
F) Temperatura °C
G) Temperatura °F
H) Humedad
O) Conductividad eléctrica
J) Conductividad eléctrica (tc)
I) Tangente de perdida
T3 – Conjunto de transmisión 3:
F) Temperatura °C
G) Temperatura °F
H) Humedad
I) Tangente de perdida
J) Conductividad eléctrica del suelo (tc)
K) Permitividad dieléctrica real
L) Permitividad dieléctrica real (tc)
M) Permitividad dieléctrica imaginaria
N) Permitividad dieléctrica imaginaria (tc)
O) Conductividad eléctrica del suelo
P) Temperatura de diodo
Q) Vacío
T4 – Conjunto de transmisión 4:
A) V1 (Volts)
B) V2 (Volts)
C) V3 (Volts)
D) V4 (Volts)
E) V5 (Volts)
T5 – Conjunto de transmisión 5:
R) V1 ADC en bruto
S) V2 ADC en bruto
T) V3 ADC en bruto
U) V4 ADC en bruto
V) V5 ADC en bruto
Ahora comienzo con algunas simulaciones en proteus ocupando el hyperterminal para ver como mandar los comandos y armar la comunicacion propiamente dicha, el hardware es sencillo, ya que solo necesito un pic, un sn75175 y un lcd para visualizar las respuestas y configurar, como veran el hard es simple, mas aun cuando necesito hacer un dispositivo portatil. Saludos les voy contando como sale.