Съдържание:

Монитор за температура, влажност - Arduino Mega + Ethernet W5100: 5 стъпки
Монитор за температура, влажност - Arduino Mega + Ethernet W5100: 5 стъпки

Видео: Монитор за температура, влажност - Arduino Mega + Ethernet W5100: 5 стъпки

Видео: Монитор за температура, влажност - Arduino Mega + Ethernet W5100: 5 стъпки
Видео: КАК УПРАВЛЯТЬ АРДУИНО ПО ЛОКАЛЬНОЙ СЕТИ - Ethernet Shield W5100 2024, Ноември
Anonim
Монитор за температура, влажност - Arduino Mega + Ethernet W5100
Монитор за температура, влажност - Arduino Mega + Ethernet W5100

Модул 1 - FLAT - хардуер:

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet щит
  • 8x температурен сензор DS18B20 на шината на OneWire - разделен на 4 шини на OneWire (2, 4, 1, 1)
  • 2x цифров сензор за температура и влажност DHT22 (AM2302)
  • 1x сензор за температура и влажност SENSIRION SHT21 (Si7021)
  • 1x сензор за температура и влажност (и въздушно налягане) BOSCH BME280
  • Изпраща данни от всички сензори наведнъж за няколко минути (може да се променя)

Модул 2 - КОТЛ - хардуер:

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet щит
  • 16x температурен сензор DS18B20 на шината на OneWire - разделен на 7 шини на OneWire (2, 2, 2, 2, 2, 2, 4)
  • 8x цифров вход
  • 8x цифров изход - за соленоид / реле
  • Изпраща данни от всички сензори наведнъж за няколко минути (може да се променя)
  • Той отчита състоянията на отделни изходи от уеб интерфейса, прилага ги Изпраща състояния на цифров вход

Стъпка 1: Въведение

Въведение
Въведение
Въведение
Въведение
Въведение
Въведение

Днес ще представя подробно последния реализиран проект, който е доста сложен от гледна точка на функционалност, брой използвани сензори, платки Arduino, използвани шини за данни. Проектът се състои от два модула. Физически всеки модул се състои от отделен Arduino Mega 2560, Ethernet щит W5100 (съвместим с R3) и сензорите, които използва.

Всеки модул комуникира с уеб интерфейса в Интернет чрез HTTP POST заявки, чрез които уеб сървърът продава данни или иска някои данни, например чрез POST заявка (само модул 2). Уеб интерфейсът е завършен със система за вход, докато цялото семейство може да се регистрира в системата, всеки със своето име и парола. Следователно това е многопотребителско приложение, където всеки член на семейството има преглед на двата модула и може да изпълнява различни действия - настройка на референтната температура, контролен термометър и т.н. Уеб интерфейсът е програмиран в PHP, данните се съхраняват в MySQL база данни. Всеки от модулите има отделна таблица в базата данни за данни. Разгледайте отделните модули по -подробно.

Стъпка 2: Модул 1 - FLAT

Модул 1 - FLAT
Модул 1 - FLAT
Модул 1 - FLAT
Модул 1 - FLAT

Целият модул 1- FLAT служи само като температурен монитор в отделни помещения, той няма друга роля. Сензорите DHT22 бяха използвани на дълги разстояния, като се използва подходящ резистор от 10 кома за измерване на влажността в баните. Тъй като BME280 и SHT21 комуникират през I2C шината и това е значително ограничено по отношение на дължината на водача на шината, сензорите се използват близо до Arduino в стаи.

Температурните сензори DS18B20 са разделени на 4 шини, тъй като се използват два външни сензора, което улеснява свързването им към отделни изходи на Arduino и в случай на падане на сензора е по -лесно да се смени, тъй като не парализира функционалността на системата.

Например, в случай на една от тези шини на OneWire, на които са индексирани 4 сензора. Индексът е свързан с физическия адрес на термометрите, така че ако един от сензорите се смени, новият сензор може да се появи на индекса 0 - начален, или дори 2, 3 или последен. По този начин, чрез намаляване на броя на сензорите в шините, можем да избегнем такова усложнение, което може да възникне при смяна на сензора.

Стъпка 3: Модул 2 - КОТЛ

Модул 2 - КОТЛ
Модул 2 - КОТЛ
Модул 2 - КОТЛ
Модул 2 - КОТЛ
Модул 2 - КОТЛ
Модул 2 - КОТЛ

В допълнение към функцията за наблюдение, модул 2 - КОТЕЛ също има по -важна роля, а именно управлението на соленоиди или релета за управление на радиаторните клапани. Модулът работи независимо от отоплението на дома. Модулът не превключва отоплението или котела. Модулът се грижи само за отваряне, затваряне на радиаторния вентил, ако стайната температура е по -ниска / по -висока от зададената - т.нар. референтна температура. Всяка стая, в която се контролира радиаторния вентил, може да бъде назначена със специален термометър от модул 2. В допълнение към този - автоматичен режим, има и ръчен режим, при който вентилът може да се отваря / затваря ръчно от уеб интерфейса за неопределено време - трудно. Цифровите входове могат да се използват за проверка дали соленоидът / релето / вентилът е отворен / затворен при поискване с Arduina - възможността да се сравнява дали изходът е равен на входа.

Стъпка 4: Какво предлага уеб интерфейсът?

Какво предлага уеб интерфейсът?
Какво предлага уеб интерфейсът?
Какво предлага уеб интерфейсът?
Какво предлага уеб интерфейсът?

И за двата модула има графично представяне на линейна диаграма за разработване на отделни променливи - температура, влажност за 24 часа, 7 дни. Уеб интерфейсът предлага и преглед на максимална / минимална, средна стойност за 24 часа, 7 дни за всеки термометър / хигрометър. В модул 1 първоначално беше разгледана двойка сензори SHT21, но тъй като те нямат възможност за промяна на I2C адреса, би било необходимо да се използва мултиплексор за една шинна комуникация от два сензора със същия I2C адрес. В случай на дефектни данни на сензора, името на сензора се съхранява в регистър, който системният администратор може да отвори по всяко време, за да обслужва шината на OneWire и да замени дефектния сензор, например.

Watchdog е внедрен в програмите на Arduino, които в случай на неправилно инициализиране, "замразяване", друга грешка се рестартира безопасно и в началото на програмата изключва всички изходи, докато връзката с уеб интерфейса се установи, където е напълно синхронизирана в условия на продукцията, които впоследствие прилага.

Още проекти можете да намерите на: https://arduino.php5.sk?lang=bg Дарете за още примери:

Препоръчано: