Подключение датчика температуры KY-013 и серводвигателя SG90



На рисунке 4 продемонстрирован пример подключения датчика температуры KY-013 и серводвигателя SG90 к Arduino.

Рисунок 4 – Пример подключения датчика температуры KY-013 и серводвигателя SG90 к Arduino

Код программы

#include <math.h>

#include <Servo.h> // библиотека для работы с серводвигателями

#define coef 1.5     //коэффициент поворота серводвигателя

#define dead_zone 5 //добавление мертвой зоны, чтобы не повредить серводвигатель

#define max_value 50 // предполагаемое максимальное значение

#define servoPin 10  // обозначили пин управления

Servo myservo;  // обозначили серводвигатель                  

int sensorPin = A5; // пин для датчика температуры

 

double Thermistor(int RawADC) {

double Temp;

Temp = log(10000.0*((1024.0/RawADC-1)));

Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );

Temp = (Temp - 273.15)* 1.5; // Конвертирование в градусы цельсия

return Temp;

}

 

void setup() {

myservo.attach(servoPin);

myservo.write(0);

Serial.begin(9600);

}

 

void loop() {

int readVal=analogRead(sensorPin);

double temp = Thermistor(readVal);

 

Serial.println(temp); // display tempature

 

 if (temp >= dead_zone && temp <= max_value)

{

myservo.write(coef * (temp - dead_zone)* (temp - dead_zone));

}

else if (temp < dead_zone)// меньше порога, серводвигатель в нуле

{

    myservo.write(0);

}

else

{

myservo.write(180);

}

delay(100);

}

 

Принцип работы системы

       Принцип работы системы заключается в следующем: датчика температуры KY-013 производит её измерение, затем производится сравнение показания температуры с заданным значение, при выходе температуры за указанные пределы, сигал подаётся на серводвигатель SG90. В зависимости от поданного сигнала, вал серводвигателя вращается в одну или другую сторону. Вал двигателя механическим путем может быть соединен с включателем или реостатом нагревательного элемента. Т.е. при падении температуры ниже заданной, будет включаться обогреватель или будет изменяться его мощность.

ЗАКЛЮЧЕНИЕ

       В ходе данной лабораторной работы был изучен аппаратно-програмный комплекс Arduino. На базе этого комплекса была разработана автоматизированная система измерения и поддержания температуры на за данном уровне. Даны краткое описание и характеристика основных компонентов разработанной системы. Разработан и представлен код программы.

 

 


 

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Ардуино [Электронный ресурс]/ Что такое Ардуино?: [сайт]. Режим доступа: http://arduino.ru/About (Дата обращения 24.12.2016);

2. Arduino-KiT [Электронный ресурс]/[сайт]. Режим доступа:  http://arduino-kit.ru/catalog/id/modul-datchika-temperaturyi / (Дата обращения 24.12.2016);

3. Сообщество Zelectro [Электронный ресурс]/ Z -LCD I2C и модуль: [сайт]. Режим доступа: http://zelectro.cc/z-lcd_i2c_module (Дата обращения 24.12.2016);

 


Дата добавления: 2022-11-11; просмотров: 50; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!