Cómo reemplazo un sensor I2C DS18B20 ?

#1
Estimados amigos, cordial saludo.

Estoy diseñando un sistema donde lee 2 sensores DS18b20 que trabajan por i2c usando un arduino uno, ya lo hice, sin embargo tengo una duda y es que pasa si se daña uno de los sensores y toque reemplazarlo por uno nuevo ? ...mi duda es debido a que al programar el arduino me toco conocer previamente la direccion de fabrica que tiene cada uno de los sensores i2c, entonces como se hace un reemplazo facilmente sin tener que modificar la programacion del micro ?.

Agradecería realmente una ayuda pronta. Gracias !!
 

Dr. Zoidberg

Well-known-Papá Pitufo
#2
Todos los dispositivos I2C de un mismo tipo tienen la misma direccion, aunque algunos pueden permitir cambios mediante lineas de hardware....a menos que sean programables.
 
#3
El DS18B20 no es un dispositivo I2C, es serial. (1 Wire)
Y sí, cada uno de ellos cuenta con un identificador único de fábrica que consta de 64 bits.
Eso es lo que permite que varios puedan leerse por una sola línea de comunicación.
Lo que se hace es una búsqueda de X dispositivos, se lee su identificador, se guarda y ya con eso se pueden separar.
Así que no hay necesidad de cambiar el código, pues mientras se cumpla lo anterior, no habrá problema
Todo eso viene explicado en la hoja de datos.
 
#5
Pues haces una rutina de servicio que se active de algún modo, escanee todas las direcciones y las guarde en la EEPROM.
Eso o hacer el escaneo cada vez.

Lo que pasa es que no sabes que sensor está en el punto A y cuál en el B.
 

Arriba