Skip to content

A repo that hosts code for the smart meter and the server for p2p

Notifications You must be signed in to change notification settings

VicTheM/p2p_energy_meter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 

Repository files navigation



Important

Drive Link: Click here
Images, resourses and other word documents will be uploaded to the drive instead of this repo


Smart Meter and P2P Server Repository

Welcome to the Smart Meter and P2P Server repository. This repository contains the codebase for a smart metering system and a peer-to-peer (P2P) server designed to enable the sharing of domestically generated power. The code is primarily written in C and Python.

Table of Contents

  1. Introduction
  2. Features
  3. Installation
  4. Usage
  5. Project Structure
  6. Contributing
  7. License

Introduction

The smart metering system is designed to monitor and share domestically generated power, such as solar or wind energy, within a community. It provides users with real-time insights into their energy production and consumption while facilitating the efficient distribution of excess power through a P2P network.

Features

  • Real-time monitoring of energy production and consumption
  • Sharing of excess domestically generated power within a community
  • Secure data transmission between smart meters and the server
  • Peer-to-peer communication for decentralized energy sharing
  • Detailed usage and production reports and analytics
  • Written in C for performance-critical components
  • Python scripts for data analysis and visualization

Installation

Prerequisites

  • Arduino IDE v2.x.x
  • Python 3.x
  • Git

Steps

  1. Clone the repository

    git clone https://github.com/yourusername/smart-meter-p2p-server.git
    cd smart-meter-p2p-server
  2. Compile and upload using the Arduino IDE

    cd meter
  3. Set up the web server

    cd ../web
    pip install -r requirements.txt
    cd web_flask
    python app.py

Data Analysis and Visualization (coming soon)

Python scripts for data analysis and visualization can be found in the analysis directory. To generate a report, run:

cd analysis
python generate_report.py

Project Structure

smart-meter-p2p-server/
├── meter/
│   ├── meter.ino
│   ├── header.h
│   ├── connections.h
│   └── README.md
├── web/
│   ├── web_flask
│   ├── classes.py
│   └── README.md
├── analysis/
│   ├── generate_report.py
│   ├── data_analysis.py
│   └── README.md
├── requirements.txt
└── README.md
  • meter/: Contains the C code for the smart meter.
  • web/: Contains the Python code for the P2P server.
  • analysis/: Contains Python scripts for data analysis and visualization.
  • requirements.txt: Lists Python dependencies.
  • README.md: This file.

Contributing

We welcome contributions to improve this project! Please fork the repository and submit pull requests. For major changes, please open an issue first to discuss what you would like to change.

Steps to Contribute

  1. Fork the repository
  2. Create a new branch
    git checkout -b feature/your-feature-name
  3. Commit your changes
    git commit -m "Add your message here"
  4. Push to the branch
    git push origin feature/your-feature-name
  5. Open a pull request

License

This project is licensed under the MIT License. See the LICENSE file for more details.


About

A repo that hosts code for the smart meter and the server for p2p

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published