Подключение датчика температуры 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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!