Skip to content

VaishnavaDevi-R/Smart-Home-Automation-Controller-on-FPGA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏠 Smart Home Automation Controller on FPGA

A parameterized FPGA-based Smart Home Automation System developed using Verilog HDL. The project integrates intelligent lighting control, temperature-based fan automation, intrusion detection, scene management, and energy-saving features through a Finite State Machine (FSM) architecture.


πŸ“– Overview

The Smart Home Automation Controller continuously monitors environmental conditions using multiple sensors and automatically controls household appliances. The system is designed with a modular RTL architecture, making it suitable for FPGA implementation and scalable for future enhancements.

Key Features

  • Motion-Based Automatic Lighting
  • Temperature-Controlled Fan Operation
  • Door Intrusion Detection and Alarm System
  • Multiple Scene Selection Modes
  • Energy Saving Mode
  • FSM-Based Control Logic
  • PWM-Based Output Control
  • Modular RTL Design
  • Comprehensive Verification Environment
  • GTKWave Timing Analysis

πŸ›  Technology Stack

Hardware Description Language

  • Verilog HDL

Simulation & Verification

  • Icarus Verilog
  • GTKWave

Design Methodology

  • RTL Design
  • Finite State Machine (FSM)
  • Digital Logic Design
  • FPGA-Oriented Development

πŸ“‚ Project Structure

Smart-Home-Automation-FPGA/

β”œβ”€β”€ constraints/

β”‚ └── top.xdc

β”œβ”€β”€ docs/

β”‚ β”œβ”€β”€ Architecture.md

β”‚ β”œβ”€β”€ FSM_Design.md

β”‚ └── Project_Overview.md

β”œβ”€β”€ images/

β”‚ β”œβ”€β”€ architecture_diagram.png

β”‚ β”œβ”€β”€ block_diagram.png

β”‚ β”œβ”€β”€ fsm_diagram.png

β”‚ β”œβ”€β”€ output_results.png

β”‚ └── project_workflow.png

β”œβ”€β”€ reports/

β”‚ β”œβ”€β”€ design_summary.md

β”‚ β”œβ”€β”€ project_statistics.md

β”‚ └── verification_report.md

β”œβ”€β”€ rtl/

β”‚ β”œβ”€β”€ pwm_generator.v

β”‚ β”œβ”€β”€ scene_controller.v

β”‚ β”œβ”€β”€ security_controller.v

β”‚ β”œβ”€β”€ sensor_interface.v

β”‚ β”œβ”€β”€ smart_home_controller.v

β”‚ β”œβ”€β”€ timer.v

β”‚ └── top.v

β”œβ”€β”€ simulation/

β”‚ β”œβ”€β”€ compile_commands.txt

β”‚ β”œβ”€β”€ simulation_log.txt

β”‚ └── verification_results.txt

β”œβ”€β”€ tb/

β”‚ β”œβ”€β”€ smart_home_tb.v

β”‚ └── test_cases.txt

β”œβ”€β”€ waveforms/

β”‚ β”œβ”€β”€ auto_fan.png

β”‚ β”œβ”€β”€ auto_light.png

β”‚ β”œβ”€β”€ energy_save.png

β”‚ β”œβ”€β”€ scene_modes.png

β”‚ β”œβ”€β”€ security_alarm.png

β”‚ └── system_verification.png

β”œβ”€β”€ LICENSE

β”œβ”€β”€ README.md

β”œβ”€β”€ requirements.txt

└── .gitignore


πŸ— Architecture Diagram

Architecture Diagram


πŸ”§ RTL Block Diagram

Block Diagram


πŸ”„ FSM Diagram

FSM Diagram

FSM States

State Description
IDLE System Monitoring State
AUTO_LIGHT Automatic Lighting Control
AUTO_FAN Automatic Fan Control
SCENE_MODE User Scene Selection
ENERGY_SAVE Power Saving Operation

βš™ Project Workflow

Project Workflow

Workflow

  1. Sensor Inputs are monitored continuously.
  2. Sensor Interface processes incoming signals.
  3. FSM evaluates current conditions.
  4. Controllers determine required actions.
  5. PWM generators produce output control signals.
  6. Appliances are activated accordingly.

πŸ“Š Simulation Results

Complete Verification Results

Output Results


System Verification

System Verification

Complete system-level verification demonstrating sensor activity, FSM transitions, alarm generation, scene switching, and energy management.


Automatic Lighting Control

Auto Light

Condition

  • Motion Detected
  • Dark Environment

Action

  • Light PWM Enabled

Automatic Fan Control

Auto Fan

Condition

  • High Temperature Detected

Action

  • Fan PWM Enabled

Security Alarm Operation

Security Alarm

Condition

  • Door Opened During Security Monitoring

Action

  • Alarm Triggered

Scene Mode Operation

Scene Modes

Available Scenes

  • Scene 001 – Reading Mode
  • Scene 010 – Movie Mode
  • Scene 011 – Night Mode

Energy Saving Mode

Energy Save

Condition

  • No Motion Detected
  • No Temperature Alert
  • No Active Scene

Action

  • Energy Saving Mode Activated

β–Ά Simulation Steps

Compile Design

iverilog -o smart_home_sim rtl/*.v tb/smart_home_tb.v

Run Simulation

vvp smart_home_sim

Open Waveforms

gtkwave smart_home.vcd

πŸ“ˆ Verification Summary

Module Status
Sensor Interface βœ… Pass
FSM Controller βœ… Pass
Auto Lighting βœ… Pass
Auto Fan Control βœ… Pass
Security Alarm βœ… Pass
Scene Controller βœ… Pass
Energy Save Logic βœ… Pass
PWM Generator βœ… Pass
System Integration βœ… Pass

πŸš€ Future Enhancements

  • IoT Connectivity
  • Mobile Application Integration
  • Wi-Fi Monitoring Dashboard
  • Cloud-Based Automation
  • Voice Assistant Integration
  • AI-Based Occupancy Detection
  • Smart Energy Analytics
  • Multi-Room Automation

🎯 Applications

  • Smart Homes
  • Smart Buildings
  • Residential Automation
  • Energy Management Systems
  • Industrial Monitoring
  • Security Systems
  • FPGA-Based Embedded Applications

πŸ‘©β€πŸ’» Author

Vaishnava Devi


πŸ“„ License

This project is licensed under the MIT License.

See the LICENSE file for more details.

About

Parameterizable FPGA-based Smart Home Automation Controller in Verilog HDL featuring PWM lighting and fan control, sensor-driven automation, security alarms, scene management, FSM-based control logic, waveform verification, and FPGA implementation workflow.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors