Съдържание:
- Стъпка 1: Въведение
- Стъпка 2: Модул 1 - FLAT
- Стъпка 3: Модул 2 - КОТЛ
- Стъпка 4: Какво предлага уеб интерфейсът?
Видео: Монитор за температура, влажност - Arduino Mega + Ethernet W5100: 5 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:49
Модул 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 служи само като температурен монитор в отделни помещения, той няма друга роля. Сензорите DHT22 бяха използвани на дълги разстояния, като се използва подходящ резистор от 10 кома за измерване на влажността в баните. Тъй като BME280 и SHT21 комуникират през I2C шината и това е значително ограничено по отношение на дължината на водача на шината, сензорите се използват близо до Arduino в стаи.
Температурните сензори DS18B20 са разделени на 4 шини, тъй като се използват два външни сензора, което улеснява свързването им към отделни изходи на Arduino и в случай на падане на сензора е по -лесно да се смени, тъй като не парализира функционалността на системата.
Например, в случай на една от тези шини на OneWire, на които са индексирани 4 сензора. Индексът е свързан с физическия адрес на термометрите, така че ако един от сензорите се смени, новият сензор може да се появи на индекса 0 - начален, или дори 2, 3 или последен. По този начин, чрез намаляване на броя на сензорите в шините, можем да избегнем такова усложнение, което може да възникне при смяна на сензора.
Стъпка 3: Модул 2 - КОТЛ
В допълнение към функцията за наблюдение, модул 2 - КОТЕЛ също има по -важна роля, а именно управлението на соленоиди или релета за управление на радиаторните клапани. Модулът работи независимо от отоплението на дома. Модулът не превключва отоплението или котела. Модулът се грижи само за отваряне, затваряне на радиаторния вентил, ако стайната температура е по -ниска / по -висока от зададената - т.нар. референтна температура. Всяка стая, в която се контролира радиаторния вентил, може да бъде назначена със специален термометър от модул 2. В допълнение към този - автоматичен режим, има и ръчен режим, при който вентилът може да се отваря / затваря ръчно от уеб интерфейса за неопределено време - трудно. Цифровите входове могат да се използват за проверка дали соленоидът / релето / вентилът е отворен / затворен при поискване с Arduina - възможността да се сравнява дали изходът е равен на входа.
Стъпка 4: Какво предлага уеб интерфейсът?
И за двата модула има графично представяне на линейна диаграма за разработване на отделни променливи - температура, влажност за 24 часа, 7 дни. Уеб интерфейсът предлага и преглед на максимална / минимална, средна стойност за 24 часа, 7 дни за всеки термометър / хигрометър. В модул 1 първоначално беше разгледана двойка сензори SHT21, но тъй като те нямат възможност за промяна на I2C адреса, би било необходимо да се използва мултиплексор за една шинна комуникация от два сензора със същия I2C адрес. В случай на дефектни данни на сензора, името на сензора се съхранява в регистър, който системният администратор може да отвори по всяко време, за да обслужва шината на OneWire и да замени дефектния сензор, например.
Watchdog е внедрен в програмите на Arduino, които в случай на неправилно инициализиране, "замразяване", друга грешка се рестартира безопасно и в началото на програмата изключва всички изходи, докато връзката с уеб интерфейса се установи, където е напълно синхронизирана в условия на продукцията, които впоследствие прилага.
Още проекти можете да намерите на: https://arduino.php5.sk?lang=bg Дарете за още примери:
Препоръчано:
Настройка на Raspberry Pi 4 чрез лаптоп/компютър с помощта на Ethernet кабел (без монитор, без Wi-Fi): 8 стъпки
Настройка на Raspberry Pi 4 чрез лаптоп/компютър с помощта на Ethernet кабел (без монитор, без Wi-Fi): В това ще работим с Raspberry Pi 4 Model-B от 1Gb RAM за настройката. Raspberry-Pi е единичен настолен компютър, използван за образователни цели и DIY проекти на достъпна цена, изисква захранване от 5V 3A
Как да направите Ethernet кабел: 5 стъпки
Как да си направим Ethernet кабел: Здравейте! Днес ще се научим как да направите свой собствен стандартен за индустрията Ethernet кабел! Кой ще може да ви спести пари, когато става въпрос за нужда от кабели! И така, защо съм квалифициран да ви науча? Е, аз съм IT специалист, прекарах последните 2
DIY 10/100M Ethernet PoE инжектор: 6 стъпки
DIY 10/100M Ethernet PoE инжектор: Тук ще направим прост PoE инжектор, подходящ за 10/100M ethernet, също може да се захранва директно с батерии
MCP23017 GPIO управление чрез Ethernet: 5 стъпки
MCP23017 GPIO Управление чрез Ethernet: Контролирайте MCP23017 IO-разширител чрез Ethernet, като използвате Sensor Bridge и MCP23017 платка. Команди, изпратени от скриптове на Python, URL адреси на браузъра или всяка друга система, способна за HTTP комуникация. Може да се интегрира в Home Assistant за домашна автоматизация
Четене на влажност с Ethernet сензор: 3 стъпки
Четене на влажност с Ethernet сензор: Целта на проекта беше да може да чете показанията за влажност и температура през Ethernet мрежа, така че резултатите да могат да се използват за домашна автоматизация (Home Assistant и т.н.). изпълнение на ар