Управление сауной и контроль температуры на ардуино
Управление сауной и контроль температуры на ардуино
Приветствую вас. Появилось задача изготовить контроль температуры сауны и управление. Для этой задачи проще всего было бы использовать простые средства и кнопки. Но главное надо использовать Ардуино в этом весь интерес.
И так у нас есть сауна. Видео обзор по сауне сниму позже.
В сауне освещение работать будет по классической схеме. Электропечь для сауны изготовили своими руками.
– Мощность печки 12 кВт
– 2 группы по 6 кВт
– напряжение 380В
Для управления печкой нам нужно 2 реле. Реле на 12 вольт тоже изготовил своими руками. Реле для ардуино на 12 вольт.
Реле непосредственно будет включать катушку пускателя. А пускатель делать свое дело и включать тэны печки.
В качестве ардуино выбрал Pro Mini 168 Mini ATMEGA168 5 В я их ведрами покупаю в Алиэкспрес. Дешево всего в районе 85 рублей. темболее для таких мелких проектов слабые ардуины идеально подходят и не жалко ставить мощную.
Что я использовал
- Про мини
- 2 реле
- LCD дисплей 1602
- 2 кнопки
- Датчик температуры
Задача. На экране показывает температуру и влажность внутри парилки. И еще показывает какие тэны включены, какие выключены. При желании можно установить таймер отсрочки времени чтобы тэны включались автоматически.
Место монтажа распаячная коробка. 100х100. Просверлил и установил 2 кнопки.
Собрал реле. Реле для ардуино на 12 вольт. Можете почитать.
Схема подключения реле на 12 вольт к ардуино.
Нашел в интернете вот это. С этого же примера подключил 2 кнопки.
LCD дисплей использовал от старого факса. В статье Подключение монитора LTD M392 Arduino более подробно описано их подключение. если вы используете другой дисплей. Немного нужно будет изменить код. отличается не так сильно.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
#include <DHT.h> #include <LiquidCrystal.h> #define DHTPIN 8 // датчик температуры и влажности #define DHTTYPE DHT11 int buttonPin = 6; // включатель номер 1 int ledPin = 9; // реле 1 для пускателя 1 boolean on=false; int buttonState = 0; int buttonPin2 = 7; // включатель номер 2 int ledPin2 = 10; // реле 2 для пускателя 2 boolean on2=false; int buttonState2 = 0; DHT dht(DHTPIN, DHTTYPE); LiquidCrystal lcd(12,11,5,4,3,2); void setup() { lcd.begin(16, 2); lcd.print("Reading sensor"); dht.begin(); pinMode(ledPin, OUTPUT); pinMode(ledPin2, OUTPUT); pinMode(buttonPin, INPUT); pinMode(buttonPin2, INPUT); } void loop(){ float temperature, humidity; humidity = dht.readHumidity(); temperature = dht.readTemperature(); delay(50); lcd.clear(); char tempF[6]; char humF[6]; dtostrf(temperature, 5, 1, tempF); dtostrf(humidity, 2, 0, humF); lcd.setCursor(0, 0); lcd.print("Temp:"); lcd.print(tempF); lcd.print("C"); lcd.setCursor(0, 1); lcd.print("Vlag: "); lcd.print(humF); lcd.print("%"); buttonState = digitalRead(buttonPin); if (buttonState == HIGH) { if(on==true){ on=false; } else{ on=true; } } if (on == true) { digitalWrite(ledPin, HIGH); lcd.setCursor(14, 0); lcd.print("1+"); } else { digitalWrite(ledPin, LOW); lcd.setCursor(14, 0); lcd.print("1-"); } buttonState2 = digitalRead(buttonPin2); if (buttonState2 == HIGH) { if(on2==true){ on2=false; } else{ on2=true; } } if (on2 == true) { digitalWrite(ledPin2, HIGH); lcd.setCursor(14, 1); lcd.print("2+"); } else { digitalWrite(ledPin2, LOW); lcd.setCursor(14, 1); lcd.print("2-"); } delay(500); } |
В проекте применил датчик температуры и влажности.
Монитор установил и протестил скэтч.

Система управления печкой
Внутри коробки немного страшная картина. Некоторые контакты запаял напрямую. Работает безотказно.
Пока сауна в стадии разработки. Дальше сниму видео и выложу
2,540 просмотров всего, 15 просмотров сегодня