Mündəricat:

DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar: 5 addım
DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar: 5 addım

Video: DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar: 5 addım

Video: DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar: 5 addım
Video: Arduino proqramlaşdırmanızı təkmilləşdirin! #2 Arduino Sensor məlumatlarının yumşaldılması 2024, Iyul
Anonim
DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar
DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar
DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar
DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar
DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar
DHT11 Sensorunu Arduino istifadə edərək necə istifadə etmək olar

Bu dərsdə Arduino istifadə edərək DHT11 sensorunu sınayacağıq.

DHT11 temperatur və rütubəti ölçmək üçün istifadə edilə bilər.

Lazım olan komponentlər:

  • Arduino Nano
  • DHT11 Temperatur və Nəmlik Sensoru
  • USB Mini
  • Keçid kabelləri

Tələb olunan kitabxana:

DHT Kitabxanası

Addım 1: DHT11 -i Arduino -ya qoşun

DHT11 -i Arduino -ya qoşun
DHT11 -i Arduino -ya qoşun
DHT11 -i Arduino -ya qoşun
DHT11 -i Arduino -ya qoşun
DHT11 -i Arduino -ya qoşun
DHT11 -i Arduino -ya qoşun

Jumper kabellərindən istifadə edərək DHT11 -ni Arduino -ya qoşun.

Şəkilə baxın və ya aşağıdakı təlimatları izləyin.

DHT11 - Arduino

+ => + 5V

out => D12

- => GND

Arduino mini USB ilə kompüterə qoşulur

Addım 2: DHT Kitabxanasını əlavə edin

DHT Kitabxanasını əlavə edin
DHT Kitabxanasını əlavə edin
DHT Kitabxanasını əlavə edin
DHT Kitabxanasını əlavə edin
DHT Kitabxanasını əlavə edin
DHT Kitabxanasını əlavə edin

Kitabxana DHT -ni buradan yükləyə bilərsiniz:

DHT11 Kitabxanası.

Kitabxana əlavə etmək üçün yuxarıdakı görüntüyə baxın və ya aşağıdakı təlimatları izləyin:

Sketch açın ==> Kitabxanaya daxil edin ==> zip kitabxanası əlavə edin

Yüklədiyiniz kitabxana faylını tapın.

Uğurlu olarsa, Arduinonu bağlayın və yenidən açın.

Addım 3: Arduino Board seçin

Arduino Board seçin
Arduino Board seçin

Alətlərə gedin və arduino lövhəsini yuxarıdakı şəklə uyğunlaşdırın.

"Arduino Nano" lövhəsi

"ATmega328P (Köhnə Bootloader)" prosessoru

Daha dolğun bir məqalə üçün əvvəldən hazırladığım "Arduino Nano v.3 -ü necə istifadə edəcəyimi" oxuya bilərsiniz.

Addım 4: Proqram

Proqram
Proqram

DHT11 sensorundan dəyəri oxumaq üçün bu kodu daxil edin

// DHT Temperatur və Rütubət Sensoru // Vahid Sensor Kitabxanası Nümunəsi // Adafruit Industries üçün Tony DiCola tərəfindən yazılmışdır // MIT lisenziyası ilə buraxılmışdır.

// Aşağıdakı Arduino kitabxanalarını tələb edir:

// - DHT Sensor Kitabxanası: https://github.com/adafruit/DHT-sensor-library // - Adafruit Vahid Sensor Lib:

#daxil edin

#daxil edin #daxil edin

#define DHTPIN 2 // DHT sensoruna qoşulmuş rəqəmsal pin

// Feather HUZZAH ESP8266 notu: 3, 4, 5, 12, 13 və ya 14 pinlərindən istifadə edin - // Pin 15 işləyə bilər, lakin proqram yüklənərkən DHT bağlantısı kəsilməlidir.

// İstifadə olunan sensorun növünü qeyd edin:

//#DHTTYPE DHT11 təyin edin // DHT 11#DHTTYPE DHT22 təyin edin // DHT 22 (AM2302) //#DHTTYPE DHT21 təyin edin // DHT 21 (AM2301)

// Sensor naqilləri və istifadəsi haqqında ətraflı məlumat üçün bələdçiyə baxın:

//

DHT_Unified dht (DHTPIN, DHTTYPE);

uint32_t gecikdirmə MS;

boş quraşdırma () {

Serial.begin (9600); // Cihazı işə salın. dht.begin (); Serial.println (F ("DHTxx Vahid Sensor Nümunəsi")); // İstilik sensoru detallarını çap edin. sensor_t sensoru; dht.temperature (). getSensor (& sensor); Serial.println (F ("------------------------------------")); Serial.println (F ("Temperatur Sensoru")); Serial.print (F ("Sensor Tipi:")); Serial.println (sensor.adı); Serial.print (F ("Sürücü Ver:")); Serial.println (sensor.versiya); Serial.print (F ("Unikal ID:")); Serial.println (sensor.sensor_id); Serial.print (F ("Maksimum dəyər:")); Serial. çap (sensor.max_value); Serial.println (F ("° C")); Serial.print (F ("Minimum dəyər:")); Serial. çap (sensor.min_value); Serial.println (F ("° C")); Serial.print (F ("Çözünürlük:")); Serial.çap (sensor. Qətnamə); Serial.println (F ("° C")); Serial.println (F ("------------------------------------")); // Rütubət sensoru detallarını çap edin. dht.humidity (). getSensor (& sensor); Serial.println (F ("Nəmlik Sensoru")); Serial.print (F ("Sensor Tipi:")); Serial.println (sensor.adı); Serial.print (F ("Sürücü Ver:")); Serial.println (sensor.versiya); Serial.print (F ("Unikal ID:")); Serial.println (sensor.sensor_id); Serial.print (F ("Maksimum dəyər:")); Serial. çap (sensor.max_value); Serial.println (F ("%")); Serial.print (F ("Minimum dəyər:")); Serial. çap (sensor.min_value); Serial.println (F ("%")); Serial.print (F ("Çözünürlük:")); Serial.çap (sensor. Qətnamə); Serial.println (F ("%")); Serial.println (F ("------------------------------------")); // Sensor detallarına əsaslanaraq sensorlar oxunması arasındakı gecikməni təyin edin. gecikməMS = sensor.min_delay / 1000; }

boşluq döngəsi () {

// Ölçmələr arasındakı gecikmə. gecikmə (gecikmə MS); // Temperatur hadisəsini alın və dəyərini çap edin. sensors_event_t hadisəsi; dht.temperature (). getEvent (& hadisə); if (isnan (hadisə.temperatur)) {Serial.println (F ("İstiliyin oxunması xətası!")); } başqa {Serial.print (F ("Temperatur:")); Serial. çap (hadisə.temperatur); Serial.println (F ("° C")); } // Nəmlik hadisəsi alın və dəyərini çap edin. dht.humidity (). getEvent (& event); if (isnan (event.relativ_humidity)) {Serial.println (F ("Rütubət oxumaq xətası!")); } başqa {Serial.print (F ("Rütubət:")); Serial.çap (hadisə.qiymət_nəmlik); Serial.println (F ("%")); }}

Və ya aşağıda təqdim etdiyim Sketch -in altındakı faylı yükləyin.

Sonra yükləmə düyməsini basın və bitməsini gözləyin.

Addım 5: Nəticə

Nəticə
Nəticə
Nəticə
Nəticə

İstilik və rütubət ölçmələrinin nəticələrini görmək üçün Serial Monitor düyməsini basın, nəticələr orada göstəriləcək.

Uğurlu olarsa, nəticələr Şəkil 1 kimi görünəcək

Sensor quraşdırılmasa, şəkil 2 kimi görünəcək

oxuduğunuz üçün təşəkkür edirəm, suallarınız varsa şərh bölməsinə yazın

Tövsiyə: