Sensor DHT22
Version 4 (Marina de Freitas, 06/10/2021 11:59)
1 | 1 | h1. Sensor DHT22 |
|
---|---|---|---|
2 | 1 | ||
3 | 1 | {{toc}} |
|
4 | 1 | ||
5 | 1 | h2. Especificações do fabricante |
|
6 | 1 | ||
7 | 1 | O DHT é um sensor digital que realiza medidas de temperatura e umidade relativa do ar. Por ser digital, a resposta enviada por ele já vem com as respectivas unidades. Quando o sensor não está devidamente conectado a resposta será "NA", de "not a number", que significa, do inglês, "não é um número". Para usar o DHT é necessário usar bibliotecas, como as encontradas no "repositório da adafruit":https://github.com/adafruit/DHT-sensor-library . Neste repositório também é encontrado _firmwares_ de teste que ajudam a compreender o funcionamento do DHT. |
|
8 | 1 | ||
9 | 1 | O "datasheet":https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT22.pdf disponibilizado pela SparkFun, também disponível "aqui":http://cta.if.ufrgs.br/attachments/4533/DHT22.pdf , descreve as seguintes especificações: |
|
10 | 1 | ||
11 | 1 | ||Umidade Relativa do Ar| Temperatura| |
|
12 | 1 | |Faixa de operação|0-100%|-40~80°C| |
|
13 | 3 | Marina de Freitas | |Exatidão/Accuracy |+-2%(Max +-5%) (25°C)| <+-0.5Celsius| |
14 | 1 | |Resolução ou sensividade|0.1%| 0.1°C| |
|
15 | 1 | |Repetibilidade| +-1%|+-0.2°C| |
|
16 | 1 | |Histerese da umidade|+-0.3%| |
|
17 | 1 | |Estabildiade a longo termo|+-0.5%/Ano| |
|
18 | 1 | ||
19 | 1 | ||
20 | 1 | O DHT também é nomeado AM2302. Segundo o _datasheet_, cada sensor deste modelo tem uma compensação e calibração de temperatura feita numa câmera de precisão. O coeficiente de calibração é salvo em uma programa na memória OTP, logo, não necessita de componentes extras.. Quando o sensor está em funcionamento, irá citar o coeficiente da memória. Ele mede umidade relativa e temperatura, por um sinal digital. O sensor de humidade é capacitivo. |
|
21 | 1 | Pode ser usado para transmissões de longa distância (20m) e possui um baixo consumo de potência, além de ser estável a longo termo. |
|
22 | 1 | Seus elementos sensitivos estão conectados com um chip de 8 bits, sua saída é um sinal digital single-bus. |
|
23 | 1 | O período de cada medição é, em média, 2 segundos. Após a tensão ser aplicado, é sugerir esperar 1 segundo para realizar a medição. É também sugerido colocar um capacitor de 100nF entre o VDD e o GND para filtrar. É sugerido não soldar o sensor em temperaturas maiores do que 260 celsius, o que provavelmente significa que a solda usada deve ser bem fina. |
|
24 | 1 | ||
25 | 3 | Marina de Freitas | A exatidão referente a umidade relativa do ar é valida para medidas a 25°C. A figura abaixo mostra o erro do sensor como uma função da faixa de operação. |
26 | 1 | ||
27 | 1 | ||
28 | 3 | Marina de Freitas | Para umidade, entre 0 e 10% Rh e entre 90 e 100% o erro sobe para 4%. Pra a temperatura, entre 0 e -120°C e entre 60 e 80°C o erro sobre para 0.4°C |
29 | 3 | Marina de Freitas | |
30 | 4 | Marina de Freitas | O sensor de temperatura do é o DS18B20 e o sensor de umidade é um elemento polimérico capacitivo. |
31 | 4 | Marina de Freitas | |
32 | 3 | Marina de Freitas | Recomendações de armazenamento: |
33 | 3 | Marina de Freitas | Temperatura: 10 ~ 40 °C |
34 | 3 | Marina de Freitas | Umidade: 60% RH ou menos |
35 | 3 | Marina de Freitas | |
36 | 3 | Marina de Freitas | Exposição prolongada a luz e radiação ultravioleta podem danificar o sensor. |
37 | 3 | Marina de Freitas | |
38 | 3 | Marina de Freitas | Fabricante: "Aosong":http://www.aosong.com/ |
39 | 3 | Marina de Freitas | |
40 | 1 | h2. Caracterização do sensor |
|
41 | 1 | ||
42 | 1 | Será que a exatidão e precisão informadas pelo fabricante refletem comportamento do DHT22? Motivadas por isso, foi feita uma caracterização do DHT analisando os dados de 10 dias de medida de 7 DHTs em equilíbrio térmico. O valor de referência, de comparação, usado como o valor "real" foi a média dos valores medidos pelo sensor. |
|
43 | 3 | Marina de Freitas | |
44 | 1 | Começamos olhando o comportamento dos sensores, segue a média por dia dos valores de temperatura e umidade relativa do ar. |
|
45 | 1 | ||
46 | 1 | !http://cta.if.ufrgs.br/attachments/5481/temp-med-dia-linha.jpeg! |
|
47 | 1 | ||
48 | 1 | !http://cta.if.ufrgs.br/attachments/5476/umirelar-med-dia-linha.jpeg! |
|
49 | 1 | ||
50 | 1 | Então surge o questionamento, qual a diferença entre o valor medida por cada sensor e o valor de referência? |
|
51 | 1 | ||
52 | 1 | !http://cta.if.ufrgs.br/attachments/5477/temp-dif-dia-linha.jpeg! |
|
53 | 1 | ||
54 | 1 | !http://cta.if.ufrgs.br/attachments/5476/umirelar-med-dia-linha.jpeg! |
|
55 | 1 | ||
56 | 1 | Esses gráficos apenas nos ajudam a entender o comportamento dos sensores. Para a caracterização, será analisado o comportamento destes sensores conjuntamente, sem distingui-los. Os histogramas abaixo mostram a frequência de cada valor de diferença entre quantidade medida e a quantidade real do mesmo instante. |
|
57 | 1 | ||
58 | 1 | !http://cta.if.ufrgs.br/attachments/5499/temp_hist_min_todos.jpeg! |
|
59 | 1 | ||
60 | 1 | !http://cta.if.ufrgs.br/attachments/5498/umirelar_hist_min_todos.jpeg! |
|
61 | 1 | ||
62 | 1 | Como essas distribuições não são gaussianas, o valor de desvio padrão mostrado na imagem não faz sentido, não é aplicável. É possível então comparar este comportamento com esperado. |
|
63 | 1 | ||
64 | 1 | h3. Exatidão |
|
65 | 1 | ||
66 | 1 | Exatidão, ou _accuracy_, é a capacidade medir uma quantidade próxima ao valor real, uma característica chamada de _"trueness"_. Efeitos estatísticos e aleatórios também influenciam na exatidão. |
|
67 | 2 | Marina de Freitas | Para temperatura, a exatidão/accuracy esperada é de +- 0.5°C. Isso significa que espera-se que os valores medidos se distanciem apenas 0.5°C do valor "real". No histograma é possível ver que todas as medidas se concentram na faixa de - 0.5°C e 0.5°C. Isso indica que a exatidão especificada está sendo reproduzida pelos DHTs analisados. |
68 | 2 | Marina de Freitas | No caso da umidade relativa do ar, a exatidão esperada é de +- 2%, com um alcance máximo de +- 5%. Pelo histograma é possível concluir que este comportamento não foi reproduzido pelos sensores analisados. Um parte significativa dos dados se concentram entre - 2% e 2%, mas outra parte significativa se concentram entre - 6% e - 2% e outra entre - 4% e - 8%. Este comportamento indica que os sensores analisados não seguem o comportamento especificado pelo fabricante. |
69 | 1 | ||
70 | 1 | h3. Repetibilidade |
|
71 | 1 | ||
72 | 1 | Precisão, ou repetibilidade, é capacidade de medir o mesmo valor em várias medidas. Está associada com efeitos aleatórios, estatísticos. Está mais associada a reprodutibilidade de uma medida. É o quanto medidas repetidas sobre as mesas condições resultam no mesmo valor. A precisão de uma média é igual ao desvio padrão dividido pela raiz quadrada do número de observações. |
|
73 | 2 | Marina de Freitas | É esperado que as medidas feitas sob as mesmas condições fiquem numa mesma faixa, de +- 0.2°C para temperatura, e +- 1% para umidade relativa do ar. É fácil concluir que esta condição não é satisfeita para o conjunto de sensores. Porém, se analisarmos o comportamento de cada sensor separadamente, a conclusão será diferente. |
74 | 1 | Como a distribuição de diferenças de cada sensor segue uma distribuição aproximadamente gaussiana, a medida do desvio padrão pode ser usada. Considerando que os valores de cada sensor caem, com 95% de confiança, dentro de um intervalo de +- 2 desvios padrões, espera-se que este valor seja próximo a repetibilidade especificada. |
|
75 | 1 | ||
76 | 1 | ||
77 | 1 | Para temperatura: |
|
78 | 1 | ||
79 | 1 | |-|A|B|C|D|E|F|G| |
|
80 | 1 | |Média (°C)| -0.03 |0.05|0.13 |-0.36 |0.30 | -0.25| 0.16| |
|
81 | 1 | |Desvio Padrão (°C)| 0.03 | 0.03 | 0.03 | 0.03 | 0.04 | 0.03 |0.03 | |
|
82 | 1 | |2*DP (°C)| 0.06 | 0.06 | 0.06 | 0.06 | 0.08 | 0.06 |0.06 | |
|
83 | 1 | ||
84 | 1 | !http://cta.if.ufrgs.br/attachments/5494/temp_hist_dif_min_transparencia.jpeg! |
|
85 | 1 | ||
86 | 1 | Para a umidade relativa d ar: |
|
87 | 1 | ||
88 | 1 | |-|A|B|C|D|E|F|G| |
|
89 | 1 | |Média (%)| -4.08 | 0.17 | 1.18 | 0.32 | 6.23 | -3.51 | -0.31 | |
|
90 | 1 | |Desvio Padrão -+(%)| 0.26 |0.23 |0.18 |0.28 | 0.32 | 0.42 | 0.30 | |
|
91 | 1 | |2*DP (%)| 0.52 |0.46 |0.36 |0.56 | 0.64 | 0.84 | 0.60 | |
|
92 | 1 | ||
93 | 1 | ||
94 | 1 | !http://cta.if.ufrgs.br/attachments/5495/umirelar_hist_dif_min_transparencia.jpeg! |
|
95 | 1 | ||
96 | 1 | Nos dois casos, todos os valores de 2 desvios padrões eram menores do que a repetibilidade especificada (+-0.2°C para temperatura, e +-1% para umidade relativa do ar). *Isso indica que os sensores DHT não apresentam a repetibilidade especificada entre si, mas que cada um apresenta a repetibilidade especificada.* |
|
97 | 1 | ||
98 | 1 | Importante atentar que o valor de referência usado é a médias dos valores desses DHTs, e que uma caracterização mais completa usaria um sensor padrão, de maior confiança, como referência. |
|
99 | 1 | ||
100 | 1 | h2. Calibração |
|
101 | 1 | ||
102 | 1 | Pode ser desejado que a exatidão do DHT seja melhorada, para isso, é necessário fazer uma calibração. No caso, será descrito a adição de um _offset_, um valor que vai deslocar os valores medidos para mais próximo do valor "real". Em 2018 a colaboradora Marina realizou diversas pesquisas sobre abrigos meteorológicos usando o DHT22, mais detalhes desta pesquisa podem ser encontrados na página sobre "Abrigos Meteorlógicos":http://cta.if.ufrgs.br/projects/estacao-meteorologica-modular/wiki/Abrigo_Meteorol%C3%B3gico . Durante esta pesquisa, realizou a calibração desse sensor. o caderno de laboratório desta pesquisa pode ser encontra nesta "tarefa":http://cta.if.ufrgs.br/issues/527 . |
|
103 | 1 | ||
104 | 1 | Alguém pode se perguntar: "Por que calibrar, se o DHT já vem calibrado?" Bom, veja os seguintes histogramas: |
|
105 | 1 | ||
106 | 1 | !http://cta.if.ufrgs.br/attachments/5499/temp_hist_min_todos.jpeg! |
|
107 | 1 | ||
108 | 1 | Ou, quem sabe, esse aqui: |
|
109 | 1 | ||
110 | 1 | !http://cta.if.ufrgs.br/attachments/5498/umirelar_hist_min_todos.jpeg! |
|
111 | 1 | ||
112 | 1 | Esses são histogramas das diferenças entre a medida realizada em cada minuto por um DHT e a medida de referência. Essas medidas foram realizadas num período de 10 dias, com 7 DHTs em equilíbrios térmico. Idealmente, o histograma deveria se concentrar em torno do zero, indicando que a diferença entre a medida de referencia, a medida "real", e a medida de cada sensor é próxima a zero. Ao invés, é possível notar que existem vários picos de medidas, existem "ilhas" de concentração - o desvio padrão mostrado na figura não faz sentido, já que os histogramas não seguem uma distribuição normal. Isso indica que existe uma diferença sistemática entre a medida de referência e a medida feita pelo sensor. |
|
113 | 1 | Nesta outra figura, é possível ver as mesmas medidas de temperatura, mas discriminadas por sensor e por hora (são a média por hora de todos os 10 dias). |
|
114 | 1 | ||
115 | 1 | !http://cta.if.ufrgs.br/attachments/5482/temp-med-hora-linha.jpeg! |
|
116 | 1 | ||
117 | 1 | Nesta é possível notar que os sensores apresentam o mesmo comportamento, mas estão deslocados uns dos outros de algumas dezenas de grau. Por isso, adicionar um _offset_ para cada sensor é importante para aproximar a medida da medida real. |
|
118 | 1 | ||
119 | 1 | Bom, mas qual é o _offset_ que deve ser aplicado? Nada mais é do que a média dessas diferenças. As tabelas abaixo mostram as médias de cada sensor, nomeados de A, B, C, D, E, F e G, e em seguida o histograma dessas diferenças, discriminando as diferenças entre a referência e as mediadas de cada sensor.. |
|
120 | 1 | ||
121 | 1 | Para temperatura: |
|
122 | 1 | ||
123 | 1 | |-|A|B|C|D|E|F|G| |
|
124 | 1 | |Média (°C)| -0.03 |0.05|0.13 |-0.36 |0.30 | -0.25| 0.16| |
|
125 | 1 | |Desvio Padrão (°C)| 0.03 | 0.03 | 0.03 | 0.03 | 0.04 | 0.03 |0.03 | |
|
126 | 1 | |2*DP (°C)| 0.06 | 0.06 | 0.06 | 0.06 | 0.08 | 0.06 |0.06 | |
|
127 | 1 | ||
128 | 1 | !http://cta.if.ufrgs.br/attachments/5494/temp_hist_dif_min_transparencia.jpeg! |
|
129 | 1 | ||
130 | 1 | ||
131 | 1 | Para a umidade relativa do ar: |
|
132 | 1 | ||
133 | 1 | |-|A|B|C|D|E|F|G| |
|
134 | 1 | |Média (%)| -4.08 | 0.17 | 1.18 | 0.32 | 6.23 | -3.51 | -0.31 | |
|
135 | 1 | |Desvio Padrão -+(%)| 0.26 |0.23 |0.18 |0.28 | 0.32 | 0.42 | 0.30 | |
|
136 | 1 | |2*DP (%)| 0.52 |0.46 |0.36 |0.56 | 0.64 | 0.84 | 0.60 | |
|
137 | 1 | ||
138 | 1 | ||
139 | 1 | !http://cta.if.ufrgs.br/attachments/5495/umirelar_hist_dif_min_transparencia.jpeg! |
|
140 | 1 | ||
141 | 1 | O _offset_ aplicado, as médias das diferenças, foi subtraído de todos as medidas de cada sensor. O resultado foi o esperado, histogramas centralizados em 0. |
|
142 | 1 | ||
143 | 1 | Temperatura: |
|
144 | 1 | ||
145 | 1 | ||
146 | 1 | | |Offset| Novas Médias |Novos DP| |
|
147 | 1 | |A |-0.03| -0.0032 |0.03| |
|
148 | 1 | |B |0.05 | -0.0015 |0.03| |
|
149 | 1 | |C |0.13 | 0.0029 | 0.03| |
|
150 | 1 | |D |-0.36 | 0.0007 | 0.03| |
|
151 | 1 | |E | 0.30 | 0.0041 | 0.04| |
|
152 | 1 | |F | -0.25 | -0.0033 | 0.03| |
|
153 | 1 | |G| 0.16 | 0.0004| 0.03| |
|
154 | 1 | ||
155 | 1 | !http://cta.if.ufrgs.br/attachments/5509/temp_offset_hist_dif_min.jpeg! |
|
156 | 1 | ||
157 | 1 | Todas as médias e desvio padrão estão bem abaixo da resolução do sensor, e também da repetibilidade, o que é o esperado. Inclusive, é bem tranquilo afirmar que essas médias são iguais a zero, já que estão muito atrás do último algoritmo significativo - a resolução do sensor é de 0.1°C e 0.1%. |
|
158 | 1 | Esses novo conjunto de dados está calibradíssimo. |
|
159 | 1 | ||
160 | 1 | Umidade Relativa do Ar: |
|
161 | 1 | ||
162 | 1 | | | Offset| Novas Médias| Novos DP| |
|
163 | 1 | |A| -4.08 |-0.0010| 0.26| |
|
164 | 1 | |B | 0.17 | -0.0043 | 0.23| |
|
165 | 1 | |C | 1.18 | 0.0007 | 0.18| |
|
166 | 1 | |D |0.32 | 0.0021 | 0.28| |
|
167 | 1 | |E| 6.23 | 0.0026 | 0.32| |
|
168 | 1 | |F | -3.51 | 0.0032 |0.42| |
|
169 | 1 | |G |-0.31| -0.0034 | 0.30| |
|
170 | 1 | ||
171 | 1 | !http://cta.if.ufrgs.br/attachments/5510/umirelar_offset_hist_dif_min.jpeg! |
|
172 | 1 | ||
173 | 1 | O mesmo já não pode ser afirmado sobre o a umidade relativa do ar. Um desvio padrão já é maior do que a resolução, dois então. . . Isso já era esperado, dado que a calibração, a adição de um _offset_, deveria melhorar a _accuracy_, não a precisão/repetibildade. |
|
174 | 1 | ||
175 | 1 | ||
176 | 1 | Note que esta calibração serve para os sensores testados, os valores de _offset_ usados não podem ser aplicados para qualquer DHT. É sugerido repetir este mesmo processo no caso de novos DHTs. Os códigos R usados para a calibração descrita se encontram no "repositório git":https://git.cta.if.ufrgs.br/mfreitas/AbrigoMeteorologico/tree/master/Aquisicao%20de%20dados/Calibra%C3%A7%C3%A3o |
|
177 | 1 | ||
178 | 1 | h2. Experiências e comentários de uso |
|
179 | 1 | ||
180 | 1 | Como descrito no _datasheet_, o DHT é sensível a temperaturas muito altas, por isso o solda deve ser feita com cuidado. Uma sugestão é soldar o fio a algum barramento, e encaixar o DHT no barramento. O DHT pode ser firmado ao barramento com fita isolante ou termoretrátil. |
|
181 | 3 | Marina de Freitas | Durante o desenvolvimento da germinadora/incubadora/estufa, a colaboradora Marina notou que a resposta do DHT a mudanças de temperatura é bem lenta. |
182 | 3 | Marina de Freitas | |
183 | 3 | Marina de Freitas | h2. Outras pesquisas |
184 | 3 | Marina de Freitas | |
185 | 3 | Marina de Freitas | O casal Kimberly e Robert andaram realizam boas caracterizações do sensor DHT22. |
186 | 3 | Marina de Freitas | |
187 | 3 | Marina de Freitas | * "Calibração do DHT22 e outros":http://www.kandrsmith.org/RJS/Misc/Hygrometers/calib_many.html |
188 | 3 | Marina de Freitas | |
189 | 3 | Marina de Freitas | * "Calibração do DHT22":http://www.kandrsmith.org/RJS/Misc/Hygrometers/calib_dht22.html |
190 | 3 | Marina de Freitas | |
191 | 3 | Marina de Freitas | A Marina registrou suas conclusões sobre estes trabalhos na tarefa #531 |