Introduction: Контрола И Регулација На Температура

Сите ние сакаме да се чувствуваме пријатно во собата во која престојуваме. За таа цел треба да ја одржуваме температурата во просторијата помеѓу некоја оптимална граница. Тоа е мотивот на овој проект чија цел е да ни помогне при контролата и регулацијата на температурата.

Step 1: Хардверски Компоненти

Потребни хардверски компоненти:

13 x jumper wires

1 x Breadboard

2 x Resistor 1K ohm

1 x DHT11 Temperature and Relative Humidity Sensor Module

1 x HC-05 Bluetooth Module

2 x LED

1 x Arduino UNO R3

1 x USB-A to B Cable

1 x Android device (mobile phone)

Step 2: Софтверски Апликации

Во Arduino IDE е пишуван програмски код.

Исто така ќе ни биде потребна и уште една апликација за мобилен телефон која се вика Bluetooth Controller.

Step 3: Шема

Step 4: Опис На Шемата

На сликата е прикажан начинот на поврзување на хардверските компоненти. DHT11 сензорот за температура и влажност има 3 пина. Плусот е поврзан на напон од 5V (црвената жица), - е поврзано за GND (жолтата), а додека пинот out од сензорот е поврзан на пинот 7 од Arduino-то (портокаловата жица) преку која се пренесуваат измерените податоци.

Подолгиот крај од црвената LED диодата (анодата) е поврзан за пин 8 од Arduino-то (црната жица), а додека пократкиот крај од LED диодата (катодата) преку отпорник од 1К оми e поврзан за GND (отпорникот се става поради заштита, т.е. да не дојде до прегорување на LED диодата).

Подолгиот крај од сината LED диодата (анодата) е поврзан за пин 12 од Arduino-то (сивата жица), а додека пократкиот крај од LED диодата (катодата) преку отпорник од 1К оми e поврзан за GND.

Кај HC-05 Bluetooth module, пинот RX e поврзан со пинот TX od Arduino (кафеавата жица), пинот ТX e поврзан со пинот RX od Arduino (белата жица), пинот GND od Bluetooth модулот е поврзан со GND (-) преку виолетовата жица, а додека пинот +5V од Bluetooth модулот е поврзан за пинот Vin oд Arduino-то (сината жица).

Step 5: Код И Негово Објаснување

По default при вклучување ќе претпоставиме дека идеалната (подесената) температура е 21 степен, која ќе можеме да ја менуваме прекуBluetooth Controller апликацијата на мобилниот телефон со копчињата + (зголеми за 1 степен) и - (намали за 1 степен).
Доколку моменталната измерена температура е поголема од посакуваната температурата, тогаш се вклучува сината LED диодата (т.е. во реалниот свет значи дека климата ќе почне да лади). Доколку моменталната измерена температура е помала од посакуваната температурата, тогаш се вклучува црвената LED диодата (т.е. во реалниот свет значи дека климата ќе почне да грее).Кога ќе ја постигне посакуваната температура LED диодите се исклучуваат т.е. климата престанува со работа

#include // вклучување на библиотека за работа со DHT сензорот за температура и влажност

dht DHT;

#define DHT11_PIN 7 // на пинот 7 се носат измерените информации од сензорот

int defaultTemp = 21;

void setup() {

Serial.begin(9600);

pinMode(12, OUTPUT); // put your setup code here, to run once: // sina LED dioda
pinMode(8, OUTPUT); // put your setup code here, to run once: // crvena LED dioda

}

void loop() { // put your main code here, to run repeatedly: //=======================================================

int chk = DHT.read11(DHT11_PIN);

Serial.print("Izmerena Temperatura = ");

Serial.println(DHT.temperature); // печатење на моменталната температура

Serial.print("Vlaznost = ");

Serial.println(DHT.humidity); // печатење на моменталната влажност

Serial.print("POSAKUVANA TEMP = ");

Serial.println(defaultTemp); // печатење на посакуваната температура

Serial.print("\n");

if (DHT.temperature > defaultTemp)
{

digitalWrite(12, HIGH); // вклучи ја сината ЛЕД диода т.е. климата лади

}

else

{ digitalWrite(12, LOW); // нема да свети сината ЛЕД диода т.е. климата не лади

}

if (DHT.temperature < defaultTemp)

{

digitalWrite(8, HIGH); // вклучи ја црвената ЛЕД диода т.е. климата грее

}else

{

digitalWrite(8, LOW); // нема да свети црвената ЛЕД диода т.е. климата не грее

}

delay(1800); // на секои 1,8 секунди се врши мерење на температурата //=========================================================

if(Serial.available()>0) { // ако е притисната некоја команда од апликацијата на мобилниот телефон

char data= Serial.read(); // во променливата data се чува копчето кое е притиснато од мобилниот

// односно читање на податоци од bluetooth module

//Serial.println(data);

switch(data)

{

case '+': defaultTemp++ ; break; // кога + е притиснато во апликацијата на твојот мобилен телефон, зголеми ја за 1 степен подесената температура

case '-': defaultTemp-- ; break; // кога - е притиснато во апликацијата на твојот мобилен телефон, намали ја за 1 степен подесената температура

default : break;

}

}

delay(60); // почекај 60 милисекунди

}

Step 6: Мобилна Апликација Bluetooth Controller

На сликата е прикажeна мобилната апликација Bluetooth Controller преку која се набљудува, контролира и регулира температурата. Исто така преку оваа апликација во делот Received Data се прикажува и моменталната температура и моменталната влажност како и подесената (посакуваната) температура. При вклучување по default посакуваната температура е 21 степен. Преку копчињата + и - може да се промени посакуваната температура. Со + се зголемува за 1 степен, а со - се намалува за 1 степен. Температура и влажноста се мери и прикажува на секои 2 секунди. Апликацијата преку Bluetooth конекцијата на мобилниот телефон се поврзува со HC-05 Bluetooth Module преку кој апликацијата ги добива моменталните измерени податоци од DHT11 сензорот, а испраќа податоци за зголемување или намалување на подесената температура.