В качестве проекта по электронике, я решил сделать умную теплицу на Ардуино своими руками. Моей целью была регулировка температцры в теплицы с помощью лампы и сервопривода, который открывает окошко и вентилятора. Я хотел достичь практически неизменного уровня влажности при помощи насоса, а также хотел получать данные о температуре, влажности почвы и освещенности. В конце я решил запустить вебсайт, на котором эти данные отображались бы.
![](https://img.masterclub.online/gs/cdn.instructables.com/FEQ/9YZD/IOUBTHLL/FEQ9YZDIOUBTHLL.LARGE.jpg)
Проект автоматизации теплицы был сделан для курса электроники и я хотел использовать в нём Распберри Пи и Ардуино.
Шаг 1: Презентация
![](https://img.masterclub.online/gs/cdn.instructables.com/FO1/4Z9X/IOUBTFZO/FO14Z9XIOUBTFZO.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FLV/9DCR/IOUBTHRX/FLV9DCRIOUBTHRX.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FJC/J8SF/IOUBTHRY/FJCJ8SFIOUBTHRY.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/F7T/3Z8I/IOUBTHSF/F7T3Z8IIOUBTHSF.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FGQ/NCJ9/IOUBTHSJ/FGQNCJ9IOUBTHSJ.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FS2/LRKA/IOUBTHVQ/FS2LRKAIOUBTHVQ.LARGE.jpg)
В автоматике умной теплицы располагаются разные датчики, измеряющие температуру внутри и снаружи, влажность почвы и освещенность.
Внутренний датчик температуры позволяет запускать вентилятор и сервопривод, открывающий окно, когда внутренняя температура поднимается выше заданной точки. И наоборот, если температура опускается ниже заданной точки, то окно закрывается. А вентилятор останавливается, и даже более того, чтобы согреть растение запускается лампа. Когда земля слишком пересыхает, датчик уровня влажности почвы позволяет запустить насос и электромагнитный клапан системы орошения.
Плата Ардуино подключается к Распберри пи 3 при помощи кабеля USB. Это соединение позволяет нам сохранять замеры и состояния приводов, а все данные отправлять в базу данных mysql. Скрипт на языке python позволяет управлять Ардуино Уно (связь ведущий / ведомый) и сохранить данные в базу, либо прочитать данные из базы и отправить новые данные на Врдуино.
Далее, установленный на Распберри Пи сервер Apache поддерживает вебсайт. При помощи PHP мы создаём мост между БД mysql и вебсайтом.
На сайте мы можем задать температуру и уровень влажности. Также через сайт можно управлять каждым приводом и узнать их положение.
Шаг 2: Список компонентов
![](https://img.masterclub.online/gs/cdn.instructables.com/FWG/NND6/IOUBTHGZ/FWGNND6IOUBTHGZ.LARGE.jpg)
В проекте мы хотели использовать как можно больше компонентов, извлечённых при переработке других вещей.
Шаг 3: Код
В этой части инструкции я дам вам разные программы и код, который я создал для этого проекта.
Программа для Ардуино:
В новой версии я исправили ошибки, при которых не открывалось окно и т.д.
Распберри:
Мы установили сервер MySQL и привязали к нему Python. Для вебсервера мы установили Apache 2.
Вебсайт:
Файлы .CSS доступны в архиве.
Скрипт для Распберри:
Для скрипта мы использовали библиотеку MySQLdb. Используется Python версии 2.7. Скрипт – это мост между Аржуино и Распберри Пи. Он позволяет сохранять данные сАрдуино в базу данных и отсылать невыет контрольные данные, установленные пользователем, в программу Ардуино.
Шаг 4: Установка
![](https://img.masterclub.online/gs/cdn.instructables.com/FYZ/UR60/IOUBTNCX/FYZUR60IOUBTNCX.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/F04/7TKQ/IOUBTNE3/F047TKQIOUBTNE3.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FG5/46EF/IOUBTNF4/FG546EFIOUBTNF4.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FZY/PUVZ/IOUBTNGQ/FZYPUVZIOUBTNGQ.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FWJ/ESF7/IOUBTNGV/FWJESF7IOUBTNGV.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FJN/YLSP/IOUBTNHW/FJNYLSPIOUBTNHW.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/F0R/G32D/IOUBTNK9/F0RG32DIOUBTNK9.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FFC/XYCI/IOUBTNN7/FFCXYCIIOUBTNN7.LARGE.jpg)
Шаг 5: Электропроводка
![](https://img.masterclub.online/gs/cdn.instructables.com/FF2/XG4W/IOUBTO7X/FF2XG4WIOUBTO7X.LARGE.jpg)
Шаг 6: Вебсайт и база данных
![](https://img.masterclub.online/gs/cdn.instructables.com/FR2/8NPK/IOYDFCCH/FR28NPKIOYDFCCH.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/F2K/VNIQ/IOYDFCC1/F2KVNIQIOYDFCC1.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FKS/VI7E/IOYDFCC4/FKSVI7EIOYDFCC4.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FSK/1ZT6/IOYDFE1N/FSK1ZT6IOYDFE1N.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FD9/9ZR1/IOYDFE22/FD99ZR1IOYDFE22.LARGE.jpg)
![](https://img.masterclub.online/gs/cdn.instructables.com/FCC/CYZJ/IOYDFE2E/FCCCYZJIOYDFE2E.LARGE.jpg)
Наш вебсайт состоит из трёх страниц.
Первая страница – главная, на ней пользователь может узнать состояние устройств и показания датчиков.
Вторая страница – Команды и параметры, где пользователь может легко поменять режим устройств и включить\выключить их. На этой странице также можно задать контрольные числа для температуры и влажности.
На последней странице вы можете прочитать о создателях проекта.
База данных состоит из трёх таблиц. Таблица «measures» хранит в себе накопленные данные. Таблица «types» содержит параметры каждого измерения, а таблица «commandes» позволяет оправлять устройствами и знать их состояние.
Шаг 7: Время сберечь ваше время и ваши растения
Все готово. У вас есть все инструменты для создания автоматизированной теплицы! Посмотрите видео и увидите умный парник в действии.