Skip to content

Riyad-Murad/Amp_Intelligence

Repository files navigation



Amp Intelligence is an IoT website that tracks the power consumption of each client and power distribution of the providers.

The website will display the data that the arduino will send to the database and the users will be able to generate AI reports for their needs.


ER Diagram

Component Diagram



The Most Remarkable Features

  • Seamless IoT Data Ingestion: The system captures and securely stores real-time energy consumption data from client devices using ESP32 microcontrollers.

  • AI-Powered Consumption Forecasting: Advanced AI models analyze historical patterns to help energy providers anticipate demand and optimize resource allocation.

  • Personalized AI Optimization Plans: Clients receive intelligent, data-driven strategies to optimize energy usage, reduce costs, and promote sustainability based on their consumption behaviors.

Features Highlight



Landing Screens

Landing Screen Login screen
Landing Login

Client Screens

Client Dashboard screen Client Report screen
ClientDashboard ClientReport
Client Profile screen Contact Us screen
ClientProfile ContactUs

Provider Screens

Provider Dashboard screen Provider Report screen
ProviderDashboard ProviderReport
Provider Show Users screen Provider Edit Profile screen
ProviderUsers ProviderProfile

Admin Screens

Admin View All Providers screen Admin View All Contact Messages screen
AdminViewProviders AdminViewContactMessages



Project Box Design

This box is a demostration of a power room that contain elecrical wire lines and the microcontroller is connected to the circuit.

I used for this project ESP32 DevKit V1. It is based on the ESP32 microcontroller that boasts Wifi, Bluetooth, Ethernet and Low Power support all in a single chip.

Power Box 1 Power Box 2 Power Box 3
PowerBox PowerBox PowerBox

Postman API Documentation

  • You can check the full API documentation using this link.

Code Test Cases

Test Case Test Case
TestCase TestCase
Test Case Test Case
TestCase TestCase

GitHub Testing Pull Request

GitHub Testing Pipeline GitHub Pull Request
GitHubTestPipeline GitHubPullRequest



Prism OpenAI Intengration

  • Prism is a powerful Laravel package for integrating Large Language Models (LLMs) into your applications.
Prism Provider Prompt Prism Client Prompt
ProviderPrompt ClientPrompt
Prism Function Call Controller
PrismCall Controller
Routes Testing Pipeline
Routes TestingPipeline

Server Response with Database Indexing

  • Provider user AI generated response time difference
Postman API Before Indexing (22.28s) Postman API After Indexing (15.5s)
BeforeIndex AfterIndex

Server Response with Database Indexing

  • Client user AI generated response time difference
Postman API Before Indexing (17s) Postman API After Indexing (8.28 s)
BeforeIndex AfterIndex
Users Table user_type indexed Metrics Table slave_id indexed
UserTypeIndex SlaveIdIndex



Deployment Diagram

EC2 Docker containers deployment

Deployment Pipeline 1 Deployment Pipeline 2
Pipeline1 Pipeline2
Deployment Pipeline 3 Deployment Pipeline 4
Pipeline3 Pipeline4
GitHub Deployment Pipeline Success EC2 Instance docker deployed
PipelineSuccess EC2Deployed
EC2 Node Server Logs ESP32 Serial Monitor Output
NodeLogs ESP32Monitor
AWS S3 Bucket React files S3 bucket public IP website
S3React S3PubliLink
Database Backup CLI Script Run Database Backup Cronjob
DBCLIScriptRun DBCronjob
Database Backup Script Code Database Backup S3
DBScriptCode DBBackupS3

To test the website, here are some initial default data stored in the database:

Admin Users:

Email: riyad@gmail.com, Password: password

Email: nabiha@gmail.com, Password: password

Provider Users:

Email: cdaoud@gmail.com, Password: password

Email: nour@gmail.com, Password: password

Email: taha@gmail.com, Password: password

Client Users:

Email: gheeda@gmail.com, Password: password

Email: joe@gmail.com, Password: password

Email: sara@gmail.com, Password: password

About

Amp Intelligence is an IoT and AI-powered platform for smart energy monitoring and optimization. It connects with ESP32 microcontrollers to collect real-time power usage data, providing providers with AI-driven consumption forecasts and clients with personalized plans to optimize their energy usage, reduce costs, and promote sustainability.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors