Оглавление:
- Шаг 1. Необходимые детали
- Шаг 2: Подключите макетную плату для датчика температуры
- Шаг 3: пьезо-зуммер
- Шаг 4: добавьте кнопки
- Шаг 5: Подключите ЖК-дисплей к отдельной макетной плате и источнику питания
- Шаг 6: Код
- Шаг 7: Схема
Видео: Smart-Stat: 7 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
Наш продукт позволяет людям проверять эффективность своих систем отопления и кондиционирования в своих домах, измеряя температуру входящего и выходящего фреона с помощью простого и реалистичного процесса. Это интеллектуальное устройство побудит людей принимать более энергоэффективные решения в отношении систем отопления и охлаждения.
Шаг 1. Необходимые детали
- Ардуино Уно
- Макетная плата (4)
- Термистор (2)
- Резисторы 10 кОм (2)
- Нажать кнопку
- Пьезо-зуммер
- ЖК дисплей
- потенциометр
- Провода (25)
- Разъем Micro USB или USB
Шаг 2: Подключите макетную плату для датчика температуры
Термистор TMP - это тип датчика температуры, который измеряет напряжение на датчике при изменении температуры окружающей среды. Этот конкретный датчик имеет три контакта - положительный, заземляющий и сигнальный. Этот датчик является линейным датчиком, и изменение температуры на один градус Цельсия эквивалентно изменению на 10 милливольт на выходе датчика.
Процедура:
1) Подключите датчик температуры, как показано на рисунке выше. Средний провод подключается к A0.
2) Подключите второй датчик температуры аналогично первому, и средний провод подключится к A1.
Шаг 3: пьезо-зуммер
Пьезо-зуммер - это устройство, используемое для предупреждения пользователя, когда его система отопления, вентиляции и кондиционирования воздуха не работает с максимальной эффективностью. Звуковая сигнализация информирует пользователя о проблеме.
Процедура:
1) Подключите зуммер к плате, как показано на рисунке выше.
Шаг 4: добавьте кнопки
- Кнопка - это компонент, который при нажатии соединяет две точки в цепи.
- В нашем продукте кнопка циклически переключает отображение температуры и эффективности на основе данных, которые собирают датчики температуры.
Процедура
1) Подключите кнопку, как показано на рисунке выше.
Шаг 5: Подключите ЖК-дисплей к отдельной макетной плате и источнику питания
Жидкокристаллический ЖК-дисплей - это простой экран, который может сообщить пользователю, когда что-то не так с системами отопления, вентиляции и кондиционирования воздуха в их доме. Бывший. не работает эффективно, сбой системы
Представленная схема поможет правильно подключить экран к плате.
Шаг 6: Код
a = arduino ('com3', 'uno', 'библиотеки', 'ExampleLCD / LCDAddon'); % создает объект arduino с указанием библиотеки ExampleLCD / LCDAddon.
lcd = addon (a, 'ExampleLCD / LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'}); % создает объект LCD и указывает контакты, настроенные на устройстве Arduino.
initializeLCD (lcd, «Строки», 2, «Столбцы», 16); % инициализирует ЖК-экран
setpref ('Интернет', 'SMTP_Server', 'smtp.gmail.com');
setpref ('Интернет', 'Электронная почта', '[email protected]'); % почтовый аккаунт для отправки
setpref ('Интернет', 'SMTP_Username', 'bwnanney'); Имя пользователя% senders
setpref ('Интернет', 'SMTP_Password', 'Morill1204'); % senders пароль
props = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'истина');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');
props.setProperty ('mail.smtp.socketFactory.port', '465');
b = readDigitalPin (a, 'D9'); % читать цифровой пин (цифровой датчик)
чтение = readVoltage (a, 'A0'); % считайте напряжение на аналоговом термисторе, подключенном к выводу A0
чтение2 = readVoltage (a, 'A2'); % считайте напряжение на аналоговом термисторе, подключенном к контакту A2
в то время как true% перебирает существующий оператор до тех пор, пока true
b = readDigitalPin (a, 'D9'); % читать цифровой пин (цифровой датчик)
чтение = readVoltage (a, 'A0'); % считайте напряжение на аналоговом термисторе, подключенном к выводу A0
при чтении> = 0,6 && чтении <0,68% условно выполняется один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Температура 64 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,68 && чтение <0,69% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Temp 66 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,69 && чтение <0,7% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Temp 68 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,7 && чтение <0,71% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Температура 70 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,71 && чтение <0,72% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Темп 72 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,72 && чтение <0,73% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Темп 74 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,73 && чтение <0,74% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Темп 76 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,74 && чтение <0,75% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Температура 78 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,75 && чтение <0,76% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Температура 80 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,76 && чтение <0,77% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Темп 82 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0,77 && чтение <0,8% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Темп 84 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
playTone (a, 'D10', 880, 0.25)% воспроизводит ноту (a, пин, частота, длительность)
пауза (0,3)% пауза после ноты на установленное время
playTone (a, 'D10', 880, 0.25)% воспроизводит ноту (a, пин, частота, длительность)
пауза (0,3)% пауза после ноты на установленное время
playTone (a, 'D10', 880, 0.25)% воспроизводит ноту (a, пин, частота, длительность)
пауза (0,3)% пауза после ноты на установленное время
playTone (a, 'D10', 880, 0.25)% воспроизводит ноту (a, пин, частота, длительность)
пауза (0,3)% пауза после ноты на установленное время
playTone (a, 'D10', 987, 0.25)% воспроизводит ноту (a, пин, частота, длительность)
пауза (0,3)% пауза после ноты на установленное время
playTone (a, 'D10', 987, 0.25)% воспроизводит ноту (a, пин, частота, длительность)
пауза (0,3)% пауза после ноты на установленное время
playTone (a, 'D10', 880, 0.12)% воспроизводит ноту (a, пин, частота, продолжительность)
пауза (0,1)% пауза после ноты на установленное время
playTone (a, 'D10', 740, 0.12)% воспроизводит ноту (a, пин, частота, продолжительность)
пауза (0,1)% пауза после ноты на установленное время
playTone (a, 'D10', 587, 0.25)% воспроизводит ноту (a, пин, частота, длительность)
пауза (0,3)
sendmail ('[email protected] ',' Блок отопления и охлаждения нуждается в обслуживании !!! ',…
«Система отопления и охлаждения работает неэффективно. Как можно скорее обратитесь к техническому специалисту для обслуживания устройства. ')% Отправляет электронное письмо на указанный адрес электронной почты.
elseif чтение> = 0.8 && чтение <0.85% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'Temp 86 F'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение> = 0.85 && чтение <2% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'ГОРЯЧИЙ ГОРЯЧИЙ РЕБЕНОК !!!'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
конец% заканчивается, если оператор
в то время как b == 0% перебирает существующий оператор до тех пор, пока false
b = readDigitalPin (a, 'D9'); % читать цифровой пин (цифровой датчик)
чтение2 = readVoltage (a, 'A2'); % считайте напряжение на аналоговом термисторе, подключенном к контакту A2
если чтение2> = 0,6 && чтение2 <0,68% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'КПД 80%'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,68 && чтение2 <0,69% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 90%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,69 && чтение2 <0,7% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 95%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,7 && чтение2 <0,71% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 97%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,71 && чтение2 <0,72% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 100%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,72 && чтение2 <0,73% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 95%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,73 && чтение2 <0,74% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 90%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,74 && чтение2 <0,75% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 85%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,75 && чтение2 <0,76% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, 'КПД 80%'); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,76 && чтение2 <0,77% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 75%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif чтение2> = 0,77 && чтение2 <0,8% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 70%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif read2> = 0.8 && read2 <0.85% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «КПД 65%»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
elseif read2> = 0.85 && read2 <2% условно выполняет один набор операторов (блок).
clearLCD (lcd)% очищает ЖК-экран
printLCD (lcd, «В ОГНЕ !!!»); % Вывести строку на ЖК-дисплей.
пауза (0,5)% пауза перед выполнением следующей команды
конец% end if оператор
конец% конец цикла while
конец% конец цикла while
Шаг 7: Схема
Это базовое представление о том, где датчики температуры будут размещены на линиях нагнетания и пара, чтобы контролировать температуру каждой линии и разницу между ними.
Рекомендуемые:
Прототип Smart Motorcycle HUD (пошаговая навигация и многое другое): 9 шагов
Прототип Smart Motorcycle HUD (пошаговая навигация и многое другое): Привет! Эта инструкция - это история о том, как я спроектировал и построил платформу HUD (Heads-Up Display), предназначенную для установки на мотоциклетных шлемах. Это было написано в рамках конкурса «Карты». К сожалению, я не смог полностью закончить
Smart Crystal Light String: 9 шагов (с изображениями)
Smart Crystal Light String: По мере приближения Рождества, когда я полностью исследую домашнюю автоматизацию и умные объекты своими руками, я решил в этом году попробовать сделать умную, красивую световую струну с RGB-подсветкой. Я провел много исследований о решениях DIY в сети, с одной стороны какой-то пр
Сделай сам Sonoff Smart Switch с помощью приложения для Android: 11 шагов
Сделайте умный коммутатор Sonoff своими руками Используйте приложение для Android: что такое Sonoff? Sonoff - это линейка интеллектуальных коммутаторов для умного дома, разработанная ITEAD. Одними из самых гибких и недорогих устройств из этой линейки являются Sonoff Basic и Sonoff mini. Это коммутаторы с поддержкой Wi-Fi, основанные на отличном чипе ESP8266 / E
Учебное пособие Arduino RFID 'Smart Door': 7 шагов
Учебное пособие Arduino RFID «Умная дверь»: Питер Тран, 10ELT1 В этом руководстве вы будете работать с модулем считывателя RFID, чтобы разблокировать дверь с сервоприводом! Убедитесь, что у вас есть подходящая карта доступа, чтобы проникнуть внутрь и не подавать сигнал тревоги и не загораться сигнальные огни. Вас направят ул
DIY SMART LED MATRIX (ESP8266 + WS2812 / NeoPixels): 7 шагов (с изображениями)
DIY SMART LED MATRIX (ESP8266 + WS2812 / NeoPixels): вот мое введение в проект, который я очень рад вам показать. Речь идет о умной светодиодной матрице DIY, которая позволит вам отображать на ней данные, такие как статистика YouTube, статистика вашего умного дома, например, температура, влажность, может быть простыми часами или просто