Оглавление:

Измерение температуры с использованием TMP112 и Raspberry Pi: 4 шага
Измерение температуры с использованием TMP112 и Raspberry Pi: 4 шага

Видео: Измерение температуры с использованием TMP112 и Raspberry Pi: 4 шага

Видео: Измерение температуры с использованием TMP112 и Raspberry Pi: 4 шага
Видео: Демонстрация продукта: Высокоточный датчик температуры SparkFun 2024, Ноябрь
Anonim
Image
Image

TMP112 Высокоточный, маломощный цифровой датчик температуры I2C MINI-модуль. TMP112 идеально подходит для расширенного измерения температуры. Это устройство обеспечивает точность ± 0,5 ° C без необходимости калибровки или преобразования сигнала внешних компонентов.

В этом руководстве демонстрируется взаимодействие сенсорного модуля TMP112 с raspberry pi, а также проиллюстрировано его программирование с использованием языка Java. Для считывания значений температуры мы использовали raspberry pi с адаптером I2C. Этот адаптер I2C делает подключение к модулю датчика простым и надежным.

Шаг 1: Требуемое оборудование:

Требуемое оборудование
Требуемое оборудование
Требуемое оборудование
Требуемое оборудование
Требуемое оборудование
Требуемое оборудование

Материалы, которые нам нужны для достижения нашей цели, включают следующие компоненты оборудования:

1. TMP112

2. Raspberry Pi

3. Кабель I2C

4. I2C Shield для raspberry pi

Шаг 2: Подключение оборудования:

Подключение оборудования
Подключение оборудования
Подключение оборудования
Подключение оборудования

В разделе «Подключение оборудования» в основном объясняются проводные соединения, необходимые между датчиком и Raspberry Pi. Обеспечение правильных соединений является основной необходимостью при работе с любой системой для достижения желаемого результата. Итак, необходимые подключения следующие:

TMP112 будет работать по I2C. Вот пример схемы подключения, демонстрирующий, как подключить каждый интерфейс датчика.

Изначально плата настроена для интерфейса I2C, поэтому мы рекомендуем использовать это подключение, если вы не сторонник этого. Все, что вам нужно, это четыре провода!

Требуются только четыре соединения, выводы Vcc, Gnd, SCL и SDA, которые подключаются с помощью кабеля I2C.

Эти соединения показаны на рисунках выше.

Шаг 3: Java-код для измерения температуры:

Код Java для измерения температуры
Код Java для измерения температуры

Преимущество использования raspberry pi заключается в том, что он предоставляет вам гибкость языка программирования, на котором вы хотите запрограммировать плату, чтобы связать с ней датчик. Используя это преимущество этой платы, мы демонстрируем здесь ее программирование на Java. Код Java для TMP112 можно загрузить в нашем сообществе GitHub, которое называется Dcube Store.

Помимо удобства пользователей, мы также объясняем код здесь:

В качестве первого шага кодирования вам необходимо загрузить библиотеку pi4j в случае java, потому что эта библиотека поддерживает функции, используемые в коде. Итак, чтобы скачать библиотеку, вы можете перейти по следующей ссылке:

pi4j.com/install.html

Вы также можете скопировать рабочий java-код для этого датчика отсюда:

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

публичный класс TMP112

{

public static void main (String args ) выдает исключение

{

// Создаем шину I2C

Шина I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);

// Получение устройства I2C, адрес I2C TMP112 0x48 (72)

I2CDevice device = bus.getDevice (0x48);

byte config = новый байт [2];

// Режим непрерывного преобразования, 12-битное разрешение, очередь ошибок - 1

config [0] = (байт) 0x60;

// Полярность низкая, термостат в режиме компаратора, отключает режим выключения

config [1] = (байт) 0xA0;

// Записываем конфиг в регистр 0x01 (1)

device.write (0x01, config, 0, 2);

Thread.sleep (500);

// Считываем 2 байта данных с адреса 0x00 (0), сначала msb

byte data = новый байт [2];

device.read (0x00, данные, 0, 2);

// Конвертируем данные

int temp = (((данные [0] & 0xFF) * 256) + (данные [1] & 0xFF)) / 16;

если (температура> 2047)

{

темп - = 4096;

}

двойной cTemp = temp * 0,0625;

двойной fTemp = cTemp * 1.8 + 32;

// Вывод на экран

System.out.printf ("Температура в градусах Цельсия:%.2f C% n", cTemp);

System.out.printf ("Температура в градусах Фаренгейта:%.2f F% n", fTemp);

}

}

Библиотека, которая упрощает связь i2c между датчиком и платой, называется pi4j, ее различные пакеты I2CBus, I2CDevice и I2CFactory помогают установить соединение.

импорт com.pi4j.io.i2c. I2CBus; импорт com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; import java.io. IOException;

Функции write () и read () используются для записи определенных команд в датчик, чтобы он работал в определенном режиме и считывал выходные данные датчика соответственно.

Выход датчика также показан на картинке выше.

Шаг 4: Приложения:

Приложения
Приложения

Различные приложения, включающие маломощный высокоточный цифровой датчик температуры TMP112, включают мониторинг температуры источника питания, периферийную тепловую защиту компьютера, управление батареями, а также офисную технику.

Рекомендуемые: