Si-Ni / PlantMonitoring-RaspberryPI

A Raspberry Pi project designed to monitor and track the environmental conditions critical for plant health and growth.
GNU General Public License v3.0
0 stars 0 forks source link

image-removebg-preview

This is part of the PlantMonitoring project, a distributed system designed to monitor environmental data of plants. This specific module focuses on collecting sensor data via a Raspberry Pi, processing it, and then sending it to an Azure Queue for further processing.

Project Overview

The PlantMonitoring project is a distributed system designed to collect, store and analyze environmental data for monitoring plant health. This repository handles the Raspberry Pi module, which reads data from various sensors and sends it to Azure Queue.

The main components of the project include:

System Architecture

Overall System

Here is the big picture of the entire system, including how the Raspberry Pi module interacts with the cloud services, database and frontend:

deploymentUML

Raspberry Pi Module

This diagram illustrates the specific architecture for the Raspberry Pi module, including sensor integration, data processing and communication with cloud services:

classUML

Hardware Setup

Components

Easy to expand by adding additional sensors

Breadboard Setup

breadboard

Initial Real-Life Tests

Here is an image of the setup used during initial real-life tests:

firstTests

Installation

  1. Clone the repository:
    git clone https://github.com/Si-Ni/PlantMonitoring-RaspberryPI.git
    cd PlantMonitoring-RaspberryPI
  2. Install the required dependencies:
    python3 -m venv .venv
    source .venv/bin/activate
    pip3 install -r requirements.txt
  3. Set up the environment variables for connection to the Azure Queue

Running the System

To start collecting data and transmitting it to the cloud, run the following command: python3 main.py