Introducción
Anteriormente, aprendimos a conectar nuestro sensor Dallas a un PLC Raspberry utilizando el protocolo 1-Wire.
Luego, aprendimos a obtener la temperatura de nuestro sensor Dallas desde Linux.
Después, aprendimos a interpretar la temperatura y a obtenerla desde Node-RED.
En este post vamos a aprender a mostrar esta información de forma amigable, con una Touchberry Pi.
Enlaces relacionados
Explicación
Uso del panel Touchberry Pi para mostrar información
Para este ejemplo usaremos el nuevo Touchberry Pi, un panel que será muy útil para ver directamente los datos obtenidos. (El sensor debe conectarse a un pin con GPIO directo, como el pin CS1 del Touchberry, que se conecta al GPIO 7; así solo tendremos que hacer la configuración igual que en el Raspberry PLC, pero con el pin gpio 7 en lugar del 25).

Si usas un Raspberry PLC, no necesitarás configurar nada adicional.
Con el sensor bien conectado y con Node-RED obteniendo los datos pertinentes, ya podemos crear la interfaz que prefiramos; aquí te dejamos un ejemplo.
EJEMPLO
Así se vería el ejemplo que proponemos.

Para ello, debemos añadir algunos bloques:

Como podemos ver, hemos añadido algunos bloques de función para transformar los grados Celsius a los distintos tipos de unidades de medida de temperatura. Además, hemos añadido los bloques necesarios para mostrar los datos en formato de indicador (gauge).
Aquí te dejamos el código para que lo importes en tus proyectos.
Recuerda que, en el bloque de ejecución, debes sustituir el nombre del directorio, ya que tendrá otro nombre.
CÓDIGO:
Para obtener este ejemplo solo tienes que copiar el JSON que te dejamos a continuación, e importarlo en Node-RED pegando el código.
[{"id":"711d6d4e196989c7","type":"tab","label":"Flow 1","disabled":false,"info":"","env":[]},{"id":"e9eb17d866a83f7a","type":"inject","z":"711d6d4e196989c7","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"0.5","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":130,"y":200,"wires":[["9ead71aef2ae83f5"]]},{"id":"9ead71aef2ae83f5","type":"exec","z":"711d6d4e196989c7","command":"sudo cat /sys/bus/w1/devices/28-01204f9f82f6/w1_slave | sed -e 's/.*t=//' | sed '1d'","addpay":"","append":"","useSpawn":"false","timer":"","winHide":false,"oldrc":false,"name":"","x":510,"y":200,"wires":[["5bf1762b8f47306c","cdd59e7e050bedea"],[],[]]},{"id":"5bf1762b8f47306c","type":"function","z":"711d6d4e196989c7","name":"get_temp","func":"msg.payload = parseFloat((msg.payload / 1000).toFixed(3));\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":900,"y":200,"wires":[["6306d3e51cb99169","fbe6da72b9906651","28e9622a81066ade"]]},{"id":"6306d3e51cb99169","type":"ui_gauge","z":"711d6d4e196989c7","name":"","group":"3d1764834ab89c7d","order":2,"width":10,"height":6,"gtype":"gage","title":"Celsius","label":"","format":"{{value}} ºC","min":"-50","max":"100","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","diff":false,"className":"","x":1340,"y":220,"wires":[]},{"id":"dda3aa2879ccde60","type":"ui_gauge","z":"711d6d4e196989c7","name":"","group":"3d1764834ab89c7d","order":4,"width":10,"height":6,"gtype":"gage","title":"Fahrenheit","label":"","format":"{{value}} ºF","min":"-58","max":"212","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","diff":false,"className":"","x":1350,"y":160,"wires":[]},{"id":"fbe6da72b9906651","type":"function","z":"711d6d4e196989c7","name":"Celsius2Fahrenheit","func":"msg.payload = (9/5 * msg.payload + 32).toFixed(3)\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1110,"y":160,"wires":[["dda3aa2879ccde60"]]},{"id":"8802b29b44a16a36","type":"ui_gauge","z":"711d6d4e196989c7","name":"","group":"3d1764834ab89c7d","order":3,"width":10,"height":6,"gtype":"gage","title":"Kelvin","label":"","format":"{{value}} K","min":"224","max":"374","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","diff":false,"className":"","x":1330,"y":100,"wires":[]},{"id":"28e9622a81066ade","type":"function","z":"711d6d4e196989c7","name":"Celsius2Kelvin","func":"msg.payload = (msg.payload + 273.15).toFixed(3)\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1100,"y":100,"wires":[["8802b29b44a16a36"]]},{"id":"0e6277e00911b3e5","type":"ui_text","z":"711d6d4e196989c7","group":"3d1764834ab89c7d","order":1,"width":0,"height":0,"name":"","label":"Temperature measured from the Dallas DS18B20 sensor","format":"{{msg.payload}}","layout":"col-center","className":"","style":true,"font":"Arial Black,Arial Black,Gadget,sans-serif","fontSize":"30","color":"#000000","x":1490,"y":40,"wires":[]},{"id":"cdd59e7e050bedea","type":"debug","z":"711d6d4e196989c7","name":"debug","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":890,"y":240,"wires":[]},{"id":"3d1764834ab89c7d","type":"ui_group","name":"Dashboard","tab":"ebd052791c5bf967","order":1,"disp":true,"width":"30","collapse":false,"className":""},{"id":"ebd052791c5bf967","type":"ui_tab","name":"Home","icon":"dashboard","disabled":false,"hidden":false}]