{"id":493,"date":"2017-05-05T20:01:32","date_gmt":"2017-05-05T18:01:32","guid":{"rendered":"http:\/\/www.joanillo.org\/?p=493"},"modified":"2020-09-24T20:02:54","modified_gmt":"2020-09-24T18:02:54","slug":"calibracio-del-sensor-de-temperatura-ds18b20","status":"publish","type":"post","link":"https:\/\/www.joanillo.org\/?p=493","title":{"rendered":"Calibraci\u00f3 del sensor de temperatura DS18B20"},"content":{"rendered":"<p><a href=\"http:\/\/www.joanillo.org\/wp-content\/uploads\/2017\/05\/calibracio_DS18B20_2-4mai.png\"><img loading=\"lazy\" src=\"http:\/\/www.joanillo.org\/wp-content\/uploads\/2017\/05\/calibracio_DS18B20_2-4mai-300x235.png\" alt=\"\" title=\"calibracio_DS18B20_2-4mai\" width=\"300\" height=\"235\" class=\"alignright size-medium wp-image-1460\"><\/a>Ja tinc pr\u00e0cticament enllestit el projecte <strong>IoT<\/strong> amb una <strong>REST Api<\/strong> [3][4] per llegir la temperatura d&#8217;un sensor DS18B20.<\/p>\n<p>El problema (i greu) \u00e9s que les temperatures que estic agafant del sensor s\u00f3n err\u00f2nies. Per saber quina \u00e9s la temperatura real en el meu barri (Gr\u00e0cia-Barcelona) agafo com a refer\u00e8ncia la web de <a href=\"http:\/\/www.meteo.cat\/\" title=\"meteo.cat\">meteo.cat<\/a>. L&#8217;estaci\u00f3 meteorol\u00f2gica autom\u00e0tica m\u00e9s propera \u00e9s la de Zona Universit\u00e0ria, tot i que en realitat la temperatura no ser\u00e0 la mateixa ben b\u00e9. El carrer Joan Blanques, on tinc el sensor,  \u00e9s estret i enmig de la ciutat i el barri; la Zona Universit\u00e0ria \u00e9s un espai m\u00e9s ample i obert, possiblement les temperatures m\u00ednimes tendeixen a ser m\u00e9s baixes&#8230;<\/p>\n<p>Calibrar el sensor DS18B20 pot ser una tasca dif\u00edcil. Aqu\u00ed tenim un <a href=\"https:\/\/edwardmallon.wordpress.com\/2015\/03\/30\/using-ds18b20-one-wire-sensors-to-make-a-diy-thermistor-string-pt-2-calibration\/\" title=\"DS18B20 calibration\">article<\/a> [1] molt interessant sobre com procedir per la calibraci\u00f3. L&#8217;article \u00e9s realment interessant, per\u00f2 no tinc el temps (ni les ganes) d&#8217;implementar-ho. El que s\u00ed que hauria d&#8217;haver fet, i aix\u00f2 era f\u00e0cil, era adquirir 10 sensors DS18B20 (s\u00f3n baratos), descartar aquells que es desvien bastant de la temperatura real, i fer que les meves mostres siguin una mitjana dels altres sensors no-descartats, per exemple 5. Aix\u00f2 no \u00e9s cap problema, a la RPi tinc molts pins GPIO disponibles.<\/p>\n<p>Una altra possibiltiat \u00e9s utilitzar un altre sensor de temperatura. Per exemple, utilitizar el <strong>BMP280<\/strong>, que a m\u00e9s de la temperatura tamb\u00e9 tinc la pressi\u00f3 i la humitat relativa (i \u00e9s barato). \u00c9s molt interessant aquest <a href=\"http:\/\/www.instructables.com\/id\/Solar-Powered-WiFi-Weather-Station\/\" title=\"using BMP280\">article<\/a> [2] on s&#8217;utilitza el BMP280 per construir una estaci\u00f3 meteorol\u00f2gica alimentada per penell solar.<\/p>\n<p>La conclusi\u00f3 \u00e9s que confiar en qu\u00e8 el sensor que tinc doni la temperatura correcta \u00e9s un greu error. L&#8217;objectiu del projecte \u00e9s fer un exemple did\u00e0ctic de IoT, RestFul API, i gr\u00e0fiques com a frontend. Aix\u00f2 s&#8217;ha acomplert, ara nom\u00e9s falta que la temperatura que llegeixo sigui real. Per tant, el que far\u00e9 \u00e9s mirar de fer una recta de regressi\u00f3 per aproximar-me a la temperatura real a partir de les dades que em d\u00f3na el meu sensor, suposant que la millor aproximaci\u00f3 \u00e9s una recta.<\/p>\n<p>En la imatge es poden veure dues gr\u00e0fiques. En la de dalt es veu la difer\u00e8ncia entre la temperatura real i la del meu sensor. En la de baix es pot deduir la recta de regressi\u00f3 per convertir les dades del sensor a dades reals. De totes maneres, aquestes dades es corresponen a dos dies i mig. Esperar\u00e9 una setmana m\u00e9s (i que pugin les temperatures del mes de maig, i aix\u00ed tenir m\u00e9s rang) per poder fer una recta de regressi\u00f3.<\/p>\n<p>Enlla\u00e7os:<\/p>\n<ul>\n<li>[1]. <a href=\"https:\/\/edwardmallon.wordpress.com\/2015\/03\/30\/using-ds18b20-one-wire-sensors-to-make-a-diy-thermistor-string-pt-2-calibration\/\">https:\/\/edwardmallon.wordpress.com\/2015\/03\/30\/using-ds18b20-one-wire-sensors-to-make-a-diy-thermistor-string-pt-2-calibration\/<\/a><\/li>\n<li>[2]. <a href=\"http:\/\/www.instructables.com\/id\/Solar-Powered-WiFi-Weather-Station\/\">http:\/\/www.instructables.com\/id\/Solar-Powered-WiFi-Weather-Station\/<\/a><\/li>\n<li>[3]. Projecte Joanillo Temperatura Restful API: <a href=\"http:\/\/wiki.joanillo.org\/index.php\/IoT,_Raspberry_Pi,_RESTful_web_services\">http:\/\/wiki.joanillo.org\/index.php\/IoT,_Raspberry_Pi,_RESTful_web_services<\/a><\/li>\n<li>[4]. Documentaci\u00f3 de la API p\u00fablica: <a href=\"http:\/\/wiki.joanillo.org\/index.php\/Rest_API-IoT-Raspberry:_joanillo_temperatura_restapi\">http:\/\/wiki.joanillo.org\/index.php\/Rest_API-IoT-Raspberry:_joanillo_temperatura_restapi<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Ja tinc pr\u00e0cticament enllestit el projecte IoT amb una REST Api [3][4] per llegir la temperatura d&#8217;un sensor DS18B20. El problema (i greu) \u00e9s que les temperatures que estic agafant del sensor s\u00f3n err\u00f2nies. Per saber quina \u00e9s la temperatura real en el meu barri (Gr\u00e0cia-Barcelona) agafo com a refer\u00e8ncia la web de meteo.cat. L&#8217;estaci\u00f3 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[18,30,35,16,12,10],"tags":[],"_links":{"self":[{"href":"https:\/\/www.joanillo.org\/index.php?rest_route=\/wp\/v2\/posts\/493"}],"collection":[{"href":"https:\/\/www.joanillo.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.joanillo.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.joanillo.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.joanillo.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=493"}],"version-history":[{"count":1,"href":"https:\/\/www.joanillo.org\/index.php?rest_route=\/wp\/v2\/posts\/493\/revisions"}],"predecessor-version":[{"id":494,"href":"https:\/\/www.joanillo.org\/index.php?rest_route=\/wp\/v2\/posts\/493\/revisions\/494"}],"wp:attachment":[{"href":"https:\/\/www.joanillo.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=493"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.joanillo.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=493"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.joanillo.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=493"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}