Retrudio

Дипломный проект: Автоматический вентилятор/охладитель для ноутбука

Бесплатно
Arduino UNO Rev3 Сложный cat_Робототехника Опубликовано: 2026-10-10 Версия: 1.0 Лицензия: CC0

Автор подтвердил проверку на оборудовании.

Дипломный проект: Автоматический вентилятор/охладитель для ноутбука

Компоненты

Предупреждения

Всегда перепроверяйте все ли правилно мы не несем ответственности!

Сборка и проверка

  1. Соберите цепь по таблице при отключённом USB.
  2. Подключите плату и загрузите скетч

Код

Скачать .ino
#include <LiquidCrystal.h>

// Pins for LEDs
const int GREEN_LED = 5;
const int YELLOW_LED = 4;
const int RED_LED = 3;

// Pins for Fans
const int MOTOR = 6;
const int TEMP_SENSOR = A0;

// Degree symbol
const char DEGREE = (char)178;

// Pins for LCD
const int RS = 8;
const int E = 9;
const int DB4 = 10;
const int DB5 = 11;
const int DB6 = 12;
const int DB7 = 13;

LiquidCrystal lcd(RS, E, DB4, DB5, DB6, DB7);

void setup()
{
    pinMode(GREEN_LED, OUTPUT);
    pinMode(YELLOW_LED, OUTPUT);
    pinMode(RED_LED, OUTPUT);
    pinMode(MOTOR, OUTPUT);

    lcd.begin(16, 2);
}

void loop()
{
    int sensorValue = analogRead(TEMP_SENSOR);

    float voltage = sensorValue * (5.0 / 1023.0);
    float temperatureC = (voltage - 0.5) * 100.0;
    int temperatureF = (temperatureC * 9.0 / 5.0) + 32.0;

    lcd.clear();
    lcd.setCursor(0, 0);

    lcd.print("Temp: ");
    lcd.print(temperatureF);
    lcd.print(DEGREE);
    lcd.print("F");

    if (temperatureF < 110)
    {
        digitalWrite(GREEN_LED, HIGH);
        digitalWrite(YELLOW_LED, LOW);
        digitalWrite(RED_LED, LOW);
        analogWrite(MOTOR, 0);

        lcd.setCursor(0, 1);
        lcd.print("Fan:  OFF ");
    }
    else if (temperatureF < 150)
    {
        digitalWrite(GREEN_LED, LOW);
        digitalWrite(YELLOW_LED, HIGH);
        digitalWrite(RED_LED, LOW);
        analogWrite(MOTOR, 130);

        lcd.setCursor(0, 1);
        lcd.print("Fan:  LOW ");
    }
    else
    {
        digitalWrite(GREEN_LED, LOW);
        digitalWrite(YELLOW_LED, LOW);
        digitalWrite(RED_LED, HIGH);
        analogWrite(MOTOR, 255);

        lcd.setCursor(0, 1);
        lcd.print("Fan:  HIGH");
    }

    delay(500);
}

Комментарии и оценки

Войдите, чтобы продолжить.

Похожие проекты

Измерительное устройство для определения расстояния с помощью ультразвукового датчика

Бесплатно

Вы измерили расстояние до какого-либо места? Ваш ответ — да? Вам не кажется, что измерение расстояния — скучное занятие? Мне же измерение ра

Arduino UNO Rev3 Лёгкий adminrahmatulloh 2026-10-10
Arduino UNO Rev3Соединительные провода типа папа папаКабель USB-A — USB-BУльтразвуковой датчик - HC-SR04 универсальный

Игра в пинг-понг для двух игроков на экране 10x10

В этом проекте я расскажу, как создал игру в пинг-понг для двух игроков на Arduino Uno R3. Игра сочетает в себе ввод данных пользователем с

Arduino UNO Rev3 Сложный adminrahmatulloh 2026-10-10
Arduino UNO Rev3Коробка 180, смешанные пуговицыНабор из 70 светодиодов диаметром 5мм16x2 ЖК-дисплей с интерфейсом I²C

Перепелиный варан

Я держу перепелов вида Coturnix на заднем дворе, и они очень чувствительны как к температуре, так и к наличию воды. Вместо того чтобы провер

Arduino UNO Rev3 Сложный adminrahmatulloh 2026-10-10
Arduino UNO Rev3Датчик влажностиNPN-транзистор (биполярный транзистор)Неопиксельная лента