Контроль температуры Arduino
Компоненты и расходные материалы
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 1 |
Приложения и онлайн-сервисы
|
Об этом проекте
Проект
Мы хотим показать работу системы контроля температуры с использованием гистерезиса.
Компоненты
Мы использовали следующие компоненты:
Контроль температуры
В проекте делается температурный контроль, моделируем следующую ситуацию:
Система запускается и показывает температуру, если температура достигает 25 градусов, то включается зеленый светодиод и комната начинает охлаждаться, пока температура не упадет до 23 градусов, кондиционер отключается (красный светодиод) до тех пор, пока температура снова не поднимется.
И напоследок у нас есть видео, где вы можете увидеть работу:
Код
- Контроль температуры
Контроль температуры Arduino
/ * Автор:Alexis Santiago Allende * // * Последнее обновление:12.03.2017 * / # include "DHT.h" // Библиотека датчика DHT # include// ЖК-библиотека #define DHTPIN 12 // Определение контакта датчика (контакт 12) #define DHTTYPE DHT22 // Какой датчик использует DHT dht (DHTPIN, DHTTYPE); // Создание объекта датчика LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // Создание объекта lcd используя эти выводы 8,9,4,6,7boolean a =LOW, b =HIGH; float h =0, t =0; const int ledPin =3; // выводы светодиода для контроля температуры const int ledPin2 =2; long previousMillis =0; long interval =2000; // Считываем показания датчика каждые 2 секундыvoid setup () {lcd.begin (16, 2); // Запуск lcd lcd.setCursor (0,0); // Установить в положение 0,0 // установить цифровой вывод как output:pinMode (ledPin, OUTPUT); // Изменить на вывод my pinspinMode (ledPin2, OUTPUT); dht.begin (); // Запустить DHT22 sensordigitalWrite (ledPin2 , LOW); // Выключаем LEDdigitalWrite (ledPin, LOW); // Выключаем LEDlcd.print ("Tempera:"); // выводим на жк-дисплей это слово lcd.setCursor (0,1); // Смена позиции курсора lcd .print ("Humedad:"); // выводим это слово на ЖК-дисплее} void loop () {unsigned long currentMillis =millis (); // истекшее время if (currentMillis - previousMillis> interval) // Сравнение прошедшего времени и время, в которое должно быть выполнено действие {previousMillis =currentMillis; // «Последний раз сейчас» h =dht.readHumidity (); // значение влажности t =dht.readTemperature (); // значение температуры по шкале Цельсия, если вы хотите, чтобы farenheit изменился на // t =dht.readTemperature (true); // Ниже показаны датчики данных печати на ЖК-дисплее lcd.setCursor (10,0); lcd.print (т); lcd.setCursor (10,1); lcd.print (h); if (t> =25 &&a ==LOW) // если температура выше 25 градусов {digitalWrite (ledPin, HIGH); // Кондиционер включен digitalWrite (ledPin2, LOW); а =ВЫСОКИЙ; b =НИЗКИЙ; } else if (t <=23 &&b ==LOW) // если температура ниже 23 градусов {digitalWrite (ledPin2, HIGH); digitalWrite (ledPin, LOW); // Выключить кондиционер a =LOW; b =ВЫСОКИЙ; }}}
Схема
Производственный процесс
- Цифровые игральные кости Arduino
- Умные жалюзи
- Управление монетоприемником с помощью Arduino
- Центр управления Arduino
- Регистратор данных температуры и влажности
- Arduino с Bluetooth для управления светодиодом!
- Железный человек
- Простой датчик препятствий с Arduino
- Найди меня
- Роботизированная рука, напечатанная на 3D-принтере Arduino