Tras haber realizado numerosas pruebas con las versiones iniciales del código, se procede a implementar algunos cambios. Lo primero es fijar la referencia en 1,1V, dado que se logra un notable incremento de la precisión, y además, se ha logrado una mejora de la estabilidad al realizar múltiples lecturas de cada señal. En segundo lugar, los sensores de temperatura que se van a emplear a partir de ahora son los LM35, que dada su calibración para grados centígrados facilitan el trabajo. Se seguirá incluyendo el código (comentado) para los otros circuitos MCP9700, pero se utilizará por defecto el LM35. Además, se incluye una primera versión de la consulta mediante página Web, empleando el módulo ethernet de Arduino. Esta versión se someterá a pruebas de funcionamiento en un entorno real para comprobar la validez de las mediciones.
Licenciado bajo Creative Commons CC-BY 3.0.
Cambios en el código
Aparte de la fijación de la señal de referencia, que ya se se implementó en las versiones iniciales, las modificaciones afectan a la estabilidad de lecturas y salida por web.
En las versiones iniciales se tomaba una sola lectura de cada valor antes de procesarlo. Esto provocaba una enorme inestabilidad en las lecturas, con cambios muy grandes de valores entre lectura y lectura sin que se produjeran cambios apreciables en el entorno. Una forma de mejorar esto es realizar varias lecturas de cada sensor, y obtener la media de las mismas antes de procesarlas.
Por otro lado, la salida web utiliza el módulo ethernet de Arduino junto con su librería asociada. Es una versión muy sencilla, que tiene algunas limitaciones.
Dado que el código se ha comentado completamente y no supone excesivas diferencias respecto a la versión inicial, no es necesario explicar las modificaciones aparte. Puedes descargar el fichero con el programa al final del post.

Sensor Arduino: Código inicial by Hector Fiel is licensed under a Creative Commons Attribution 3.0 Spain License.

