Тепловые Сигналы: Интеграция Датчика DS18B20 с Arduino – Пошаговое Руководство по Программированию на C++
Интеграция датчика температуры DS18B20 с Arduino – это популярный проект, который позволяет измерять температуру и отображать ее на экране или передавать через соединение. В этом пошаговом руководстве я объясню, как подключить датчик и написать программу на C++ для считывания данных температуры.
### Необходимые компоненты:
1. Arduino (например, Arduino Uno)
2. Датчик температуры DS18B20 (KY-001)
3. Резистор (4.7 кОм)
4. Провода для соединения
5. Бредборд (опционально)
### Подключение:
Следуйте схеме подключения:
1. Подключите вывод **VCC** датчика DS18B20 к **5V** Arduino.
2. Подключите вывод **GND** датчика к **GND** Arduino.
3. Подключите вывод **DATA** датчика к любому цифровому пину Arduino (например, пин 2).
4. Между выводом **DATA** и **VCC** подключите резистор 4.7 кОм (это подтягивающий резистор).
### Установка библиотеки:
1. Откройте Arduino IDE.
2. Перейдите в меню **Скетч** → **Подключить библиотеку** → **Управление библиотеками**.
3. В строке поиска введите "OneWire" и установите библиотеку.
4. Также найдите и установите библиотеку "DallasTemperature".
### Программирование на C++:
Теперь, когда у вас есть все необходимые компоненты и библиотеки, давайте напишем код для считывания данных с датчика.
```cpp
#include
#include
// Укажите пин, к которому подключен датчик
#define ONE_WIRE_BUS 2
// Создаем объект OneWire
OneWire oneWire(ONE_WIRE_BUS);
// Передаем OneWire экземпляр в DallasTemperature
DallasTemperature sensors(&oneWire);
void setup() {
// Начинаем серийный порт
Serial.begin(9600);
// Запускаем библиотеку DallasTemperature
sensors.begin();
}
void loop() {
// Запрашиваем температуру от датчика
sensors.requestTemperatures();
// Считываем температуру
float temperatureC = sensors.getTempCByIndex(0);
// Отображаем температуру в Сelsius
Serial.print("Температура: ");
Serial.print(temperatureC);
Serial.println(" °C");
// Задержка перед следующим считыванием (например, 1 секунда)
delay(1000);
}
```
### Запуск код:
1. Убедитесь, что код загружен на плату Arduino.
2. Откройте монитор порта (Tools -> Serial Monitor) в Arduino IDE, чтобы увидеть показания температуры.
### Примечания:
- Если вы видите значение `-127.00 °C`, это может указывать на проблему с подключением или на то, что датчик не обнаружен. Проверьте правильность проводки.
- Вы можете изменить временную задержку между считываниями (сейчас установлено значение в 1 секунду).
Теперь у вас есть работающий проект для считывания температуры с датчика DS18B20 с использованием Arduino. Вы можете расширять его, добавив отображение температуры на LCD-дисплей, отправку данных через Wi-Fi и многое другое.