Cyfrowy termometr bezkontaktowy IR z interfejsem Grove

Cyfrowy termometr bezkontaktowy IR z interfejsem Grove

Prezentowany moduł bazuje na układzie cyfrowego detektora podczerwieni ZTPD-2210 firmy Amphenol Advenced Sensors, pracującego w zakresie temperatur od –20°C do +100°C z dokładnością ±1°C przy 25°C. Wbudowany, kompletny układ akwizycji i przetwarzania danych (ASIC) upraszcza aplikacje do kilku elementów niezbędnych do prawidłowego zasilania i polaryzacji magistrali I²C poprzez którą czujnik komunikuje się z układem nadrzędnym. Oprócz temperatury obiektu czujnik udostępnia dodatkowo pomiar temperatury otoczenia.

Podstawowe parametry:
  • bezdotykowy pomiar temperatury obiektów za pomocą cyfrowego czujnika podczerwieni,
  • zakres pomiaru temperatury obiektu: –20°C do +100°C,
  • dokładność pomiaru: ±1°C przy 25°C,
  • komunikacja: I²C,
  • napięcie zasilania: 2,7...5,5 V,
  • pobór prądu: 1 mA.

Budowa wewnętrzna czujnika ZTPD-2210 pokazana została na rysunku 1, a schemat modułu można zobaczyć na rysunku 2.

Rysunek 1. Struktura wewnętrzna układu ZTPD-2210 (za notą Amphenol)
Rysunek 2. Schemat ideowy modułu

Termometr zmontowany jest na niewielkiej, dwustronnej płytce drukowanej zgodnej z formatem Grove. Rozmieszczenie elementów pokazano na rysunku 3, a zmontowany moduł na fotografii tytułowej. Montaż nie wymaga szczegółowego opisu. Należy jedynie zwrócić uwagę na zachowanie standardów ESD, gdyż ZTPD-2210 jest elementem bardzo czułym na ładunki statyczne.

Rysunek 3. Rozmieszczenie elementów. a – strona TOP, b – strona BOTTOM

Sprawdzenie działania modułu można najprościej wykonać przy użyciu Arduino. Moduł wymaga zasilania z zakresu 2,7...5,5 V, pobór prądu podczas przetwarzania wynosi ok. 1 mA. Czujnik widoczny jest na magistrali I²C pod adresem 0x38, a odczyt temperatury sprowadza się do odebrania 7 bajtów, w których zakodowana jest informacja o temperaturach obiektu i otoczenia, dostępna do odczytu po inicjalizacji czujnika komendą 0xAA. Szczegóły ramki danych można zobaczyć na rysunku 4.

Rysunek 4. Odczyt czujnika

Odczytane wartości wymagają przeliczenia:

Tobiektu=(Byte(0)Byte(1)Byte(2))/224·130–20

Totoczenia=(Byte(3)Byte(4)Byte(5))/224·105–20

Przykładowy szkic realizujący odczyt przy użyciu Arduino pokazano na listingu 1.

#include <Wire.h>

void setup() {
  Serial.begin(9600);
  Wire.begin();
}

void loop() {
  float objTemp, ambTemp;
  readTemperature(objTemp, ambTemp);
  Serial.print(„Tobj:”);
  Serial.print(objTemp);
  Serial.print(„,Tamb:”);
  Serial.print(ambTemp);
  Serial.println();
  delay(1000);
}

void readTemperature(float &objTemp, float &ambTemp) {
  uint8_t data[7];
  Wire.beginTransmission(0x38);
  Wire.write(0xAA);
  Wire.endTransmission();
  delay(100);
  Wire.requestFrom(0x38, 7);
  if (Wire.available() == 7) {
    for (int i = 0; i < 7; i++) {
      data[i] = Wire.read();
    }
    // Obliczenie temperatury otoczenia (Bytes 6-4)
    uint32_t ambTempRaw = ((uint32_t)data[4] << 16) | ((uint32_t)data[5] << 8) | data[6];
    ambTemp = (ambTempRaw / 16777216.0) * 105.0 – 20.0;
    // Obliczenie temperatury obiektu (Bytes -1)
    uint32_t objTempRaw = ((uint32_t)data[1] << 16) | ((uint32_t)data[2] << 8) | data[3];
    objTemp = (objTempRaw / 16777216.0) * 130.0 – 20.0;
  }
}
Listing 1. Szkic testowy ZTPD-22100

Po wgraniu programu, w okienku monitora portu szeregowego wyświetlane będą odczyty temperatur obiektu i otoczenia. Należy pamiętać o kierowaniu czujnika pod kątem prostym do obiektu oraz zapewnić możliwie niewielką odległość pomiarową. Jeżeli testowanie przebiegło pomyślnie, moduł można zastosować we własnej aplikacji.

Adam Tatuś, EP

Wykaz elementów:
Rezystory:
  • R1, R2: 10 kΩ (SMD 0603, 5%)
Kondensatory:
  • C1: 100 nF (SMD 0603, X7R, 10 V)
Półprzewodniki:
  • U1: ZTPD-2210
Pozostałe:
  • I²C: złącze Grove 4-pinowe
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik styczeń 2026

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio styczeń - luty 2026

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2025

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2025

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich luty 2026

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów