Smart GreenHouse System is an IoT-based platform developed using Raspberry Pi 3B+. It monitors environment conditions and automatically controls the system to help plants grow in optimal conditions.
The project combines 3D modeling, environmental sensors, a web dashboard, a Telegram Bot, a local E-paper display and computer vision into a single automated ecosystem.
Today, many people want to eat fresh and healthy food, but it isn't always easy to find this food in local supermarkets. Growing plants at home is really difficult for many people, because you need to constantly monitor environmental conditions: temperature, humidity and soil moisture.
I decided to build this project to help people grow fresh herbs, mint, and other plants at home more conveniently and with minimal effort by automating routine greenhouse tasks.
- 🌡️ Temperature and humidity monitoring
- 💧 Soil moisture monitoring
- ☀️ Light intensity monitoring
- 🌬️ CO2 concentration monitoring
- 🧊 Automatic cooling and humidification control
- 📱 Telegram Bot for control parameters and notifications
- 🌐 Web dashboard
- 🖥️ E-paper local display
- 🤖🧠 Computer vision module (OpenCV) for plant growth analysis
- 🖨️ Custom 3D-printed enclosure
- 📊 Real-time sensor data
- KOMPAS-3D (CAD)
- UltiMaker Cura
- 3D printer Dobot Mooz 3DF Plus
- Raspberry Pi 3 Model B+
- Temperature and Humidity sensor (DHT22)
- Soil Moisture sensor (YL-38)
- Light sensor (KY-018)
- Air Quality sensor (MQ-135)
- Steam generator
- Relay module
- Peltier Cooling module
- LED Grow light
- E-paper display (Waveshare 7.5")
- Raspberry Pi GPIO
- Python
- FastAPI
- Aiogram
- HTML/CSS
- OpenCV
- JSON
Sensors → Raspberry Pi → JSON Database
↓
Telegram Bot / Website / E-paper display
All interfaces synchronize environmental data in real time through the JSON-based data exchange system.
smart-greenhouse-system/
⏐
⏐⎯ main.py
⏐⎯ tg_bot.py
⏐⎯ e-paper.py
⏐⎯ vision_engine.py
⏐⎯ dht22_sensor.py
⏐⎯ air_sensor.py
⏐⎯ lux_sensor.py
⏐⎯ moisture_sensor.py
⏐
⏐
⏐⎯ templates/
⏐ ⏐⎯ index.html
⏐ ⏐⎯ login.html
⏐ ⏐⎯ settings.html
⏐
⏐
⏐⎯ config.json
⏐⎯ display_template.jpg
⏐⎯ requirements.txt
⏐⎯ .env.example
⏐⎯ .gitignore
⏐⎯ README.md
- Sensors collect environmental data
- Raspberry Pi processes the information
- Computer Vision (OpenCV) analyzes crop growth and greenhouse conditions from camera images
- Data is displayed on the website and E-paper display
- The Telegram Bot sends real-time alerts, status updates, and current environmental conditions and allows you to control devices
- Actuators automatically control cooling, lighting and humidity
-
Clone the repository.
-
Install dependencies:
pip install -r requirements.txt- Create a
.envfile using.env.exampleand configure:
BOT_TOKEN=your_telegram_bot_token
ADMIN_ID=your_telegram_user_id
PROXY=your_vpn_proxy
ADMIN_PASSWORD=your_password_for_website-
Configure Wi-Fi credentials.
-
Run the system:
python tg_bot.py
python main.py
python e-paper.pyAdditional project materials are available in Google Drive:
- Project documentation
- 3D models
- Drawings & Specifications
- Wiring diagram
- Demonstration videos
- Photos of the system
This folder includes some demonstration videos:
- Real-time working of the system
- Telegram Bot demonstration
- Website demonstration
- 📲 Develop a mobile application
- 🤖 Add AI-based plant health analysis
- 🔋 Optimize power consumption using solar panels
- 💾 Store sensor data in a cloud database and create historical charts
Created by Vasilisa Korchagina
GitHub: https://github.com/vee-kr



