amc2022:grouph:dht22_humidity_temperature_sensor
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
amc2022:grouph:dht22_humidity_temperature_sensor [2022/08/24 19:00] – gustavo001 | amc2022:grouph:dht22_humidity_temperature_sensor [2022/08/30 18:16] – gustavo001 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | dhtww | + | =====DHT22===== |
- | | + | The DHT22 sensor is composed of two parts, the temperature and the humidity as shown in Figure #. The connection to the MCU is done using the Digital pins, because the sensor’s circuit converts analog signals to digital, and with the integration of the DHT.h library, found here((https:// |
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | {{ : | ||
+ | |**//Figure #//** DHT22 Humidity sensing component. Source: https:// | ||
+ | |||
+ | === Temperature === | ||
+ | |||
+ | A thermistor is a semiconductor device that changes its resistance when the ambient temperature changes. The term is a conjunction of thermal and resistor, and while most resistors are subject to slight changes due to temperature variations, these devices are purposely engineered so that they are very susceptible to minimal temperature fluctuations. There are 1 type of thermistors, | ||
+ | The design and performance of the thermistor is selected by the manufacturer, | ||
+ | Therefore the coefficient B which defines the behavior | ||
+ | |||
+ | $$ Beta_{T1\over T2} = {T2 \cdot T1\over T2-T1} \cdot ln {R1 \over R2 }$$ | ||
+ | |||
+ | |||
+ | |||
+ | B = Material resistive value between two predetermined temperatures\\ | ||
+ | T1 = Base point temperature, | ||
+ | T2 = Second temperature point, for example 100o C, and in Kelvin 100o C + 273.15 = 373.15K\\ | ||
+ | R1 = Thermistors resistance at temperature T1 in Ohms\\ | ||
+ | R1 = Thermistors resistance at temperature T2 in Ohms\\ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | {{ : | ||
+ | |**//Figure #//** Graph showing the Relationship between resistance and temperature. Source : https:// | ||
+ | |||
+ | |||
+ | ===Humidity=== | ||
+ | |||
+ | |||
+ | {{ : | ||
+ | |**//Figure #//** DHT22 sensing components. Source: https:// | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== Specifications ==== | ||
+ | |||
+ | |||
+ | ^**//Table 2//** Table describing DHT-22 Specifications ^^ | ||
+ | ^ Description | ||
+ | | Operating Voltage | ||
+ | | Data Protocol | ||
+ | | Operating Temperature | ||
+ | | Temperature Accuracy | ||
+ | | Humidity Range | 0 to 100 % | | ||
+ | | Humidity Accuracy | ||
+ | | Sampling Rate | 0.5 Hz - Once every 2 sec | | ||
+ | | Humidity Accuracy | ||
+ | |Output Signal | ||
+ | |||
+ | |**//Table 2//** Source: https:// | ||
+ | |||
+ | |||
+ | ==== Schematics==== | ||
+ | |||
+ | {{ : | ||
+ | |**//Figure #//** DHT22 Schematics. Source: https:// | ||
+ | |||
+ | |||
+ | |||
+ | ====Signal ==== | ||
+ | |||
+ | To read the data obtained by the module a protocol has to be observed. This protocol will function as an activation key that initiative the module, to send the information back to MCU and finalize the process. | ||
+ | |||
+ | - The micro controller sends a start signal for 500 microseconds | ||
+ | - The micro controller sends a HIGH logic 1 Signal | ||
+ | - DHT22 responds by pulling the bus low for 80 microseconds | ||
+ | - DHT22 pulls the bus HIGH for 80 microseconds. | ||
+ | - DHT22 pulls the bus LOW again. | ||
+ | |||
+ | |||
+ | Once the right sequence of the signal has been completed then DHT22 will start sending the information regarding both Temperature and Humidity. | ||
+ | Transmission of information is done through two set-ups called Logics. | ||
+ | |||
+ | - Logic 1 is a 48 to 55 microsecond LOW pulse followed by a 68 to 75 microsecond HIGH pulse. | ||
+ | - Logic 0 is a 48 to 55 microsecond LOW pulse followed by a 22 to 30 microsecond HIGH pulse. ((https:// | ||
+ | |||
+ | |||
+ | {{ : | ||
+ | |**//Figure #//** DHT22 Logic Signal formation. Source: https:// | ||
+ | ====Data ==== | ||
+ | |||
+ | Example of how data transmission and the binary system provides information on both Temperature and Humidity. | ||
+ | |||
+ | ESP-32 receives 40 bits from the sensor as follows: | ||
+ | |||
+ | ^16 bits for |RHumidity | ||
+ | ^+^\\ | ||
+ | ^16 bits for |Temperature | ||
+ | ^=^\\ | ||
+ | ^8 bits |Check-sum | ||
+ | |||
+ | —------------------------------------------------------------------------------------------------------------------------------------ | ||
+ | |||
+ | The conversion from the humidity data is:\\ | ||
+ | ^Binary system ^ > ^ Decimal System^\\ | ||
+ | |0000 0010 1000 1100 | **>**| 652|\\ | ||
+ | |||
+ | |||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | \[RH = \frac{\mathrm{652}}{\mathrm{10}} = \mathrm{65.2\; | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | The conversion from the Temperatures data is:\\ | ||
+ | ^Binary system ^ > | ||
+ | |0000 0001 0101 1111 | > | 351|\\ | ||
+ | |||
+ | |||
+ | < | ||
+ | < | ||
+ | < | ||
+ | \[T = \frac{\mathrm{351}}{\mathrm{10}} = \mathrm{35.1°C}\] | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | If the highest bit of temperature is 1 as in: | ||
+ | **_1_**000 0000 0110 0101, this means that the temperature is negative, therefore T = -10.1 °C((https:// | ||
+ | |||
+ | In Figure # down below, we can see the whole siganling process between ESP32 and DHT22. | ||
+ | {{ : | ||
+ | |**//Figure #//** DHT22 bus transmission. Source: https:// | ||
+ | ====Code==== | ||
+ | |||
+ | ====Results==== | ||
amc2022/grouph/dht22_humidity_temperature_sensor.txt · Last modified: 2022/09/09 17:22 by gustavo001