0% found this document useful (0 votes)
9 views4 pages

Software for Embedded Systems Assignment

The assignment involves designing a Smart Home Energy Monitoring System that monitors energy usage in real-time using embedded systems. Key tasks include data acquisition from appliances, local data storage, cloud transmission, and user interface development. Deliverables include source code, simulation logs, technical documentation, and a demonstration video, with a focus on modularity and error handling.

Uploaded by

pmenon830
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views4 pages

Software for Embedded Systems Assignment

The assignment involves designing a Smart Home Energy Monitoring System that monitors energy usage in real-time using embedded systems. Key tasks include data acquisition from appliances, local data storage, cloud transmission, and user interface development. Deliverables include source code, simulation logs, technical documentation, and a demonstration video, with a focus on modularity and error handling.

Uploaded by

pmenon830
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

1

SOFTWARE FOR EMBEDDED SYSTEMS – ASSIGNMENT I

Submission Date: 14th April 2025 11.50 PM

Weightage: 30%

Building a Smart Embedded System with Real-Time Capabilities

Assignment Title:

"Design and Development of a Smart Home Energy Monitoring System"

Objective:

To apply the concepts of embedded systems by designing a real-time embedded application that
monitors and reports energy usage in a smart home environment. This assignment focuses on
integrating an embedded operating system, programming languages, and a lightweight database,
along with IoT communication protocols.

Scenario/Description:

Software for Embedded Systems – Assignment I


2

You are tasked with building a Smart Home Energy Monitoring System that
collects, processes, and visualizes energy usage data from multiple devices in real-time. The
system should:

1. Measure power consumption of three appliances using sensors (simulated or physical)


2. Store the data locally in an embedded database for real-time access
3. Periodically transmit data to a cloud server (simulated as a local Python/Java server)
4. Allow users to query energy usage statistics via a basic user interface or command-line
tool

Task Breakdown:

1. Real-Time Task Management:

 Use an embedded OS to manage:


o Sensor data acquisition
o Writing data to the local database
o Sending aggregated data to the (simulated) cloud server

2. Programming Language:

 Use C/C++/Java/Python for embedded system tasks


 Use Python/Java to simulate:
o A cloud server to receive data
o A simple analytics dashboard to visualize energy usage

3. Data Storage:

 Implement a lightweight embedded database such as SQLite or store the data in


structured files (e.g., JSON or CSV) for local storage
 Design a database schema to include:
o Device ID
o Timestamp
o Power consumption (in watts)

4. IoT Communication:

 Implement a communication protocol (e.g., MQTT or HTTP) to send data to the server
 Simulate network latency and ensure your system handles delayed or dropped
transmissions gracefully

5. Error Handling and Reliability:

 Incorporate error-handling mechanisms for:


o Sensor disconnections

Software for Embedded Systems – Assignment I


3

o Database write failures


o Network transmission issues
 Implement a retry mechanism for failed data transmissions

6. User Interaction:

 Provide a simple user interface:


o Query real-time power consumption
o View statistics like average power usage and peak usage periods

Deliverables:

1. Source Code:
o Embedded system code for data acquisition, storage, and communication
o Server-side code (Python/Java) for receiving and visualizing data
2. Simulation Logs:
o Sample data from sensors and communication with the server
3. Technical Documentation:
o System architecture and design explanation
o Database schema
4. Demonstration:
o A short video or live demonstration of the working system

Additional Instructions:

 Ensure modularity in your codebase, with separate scripts for each


stage.
 Use proper logging and error handling in all scripts.
 Provide detailed documentation, including:
o Explanation of the pipeline design.
o Challenges faced and solutions implemented.
 Submit a short video (5–10 minutes) demonstrating your pipeline
workflow.

Submission Requirements:

 Source Code: Organized into folders by stage.


 Documentation: Markdown or PDF format.
 Video Walkthrough: Demonstrating the pipeline.
 Final Deliverables: Compressed .zip file with all code, data, and
documentation.

Software for Embedded Systems – Assignment I


4

General Notes:

 Although specific tools, products, and platforms are mentioned as


examples in the tasks, you are free to choose and justify a toolchain
of your preference, provided it aligns with the objectives,
expectations, and deliverables of the assignment.
 Refer the document used while registering the groups. In case of
discrepancies, write to me separately (copying all your group
members) with subject line as "SES Group <your_group_number>".
email – [email protected]
 Using the LMS, only one member of group has to upload the file. No
submission over email will be considered.
 Make sure that you upload the file well ahead of deadline. At last
moments, we have seen several groups have faced issues while
doing the submissions.
 Note - As it’s a group assignment, only one submission is expected
from each group. Unnecessary don’t upload the solution on
individual basis. If it’s observed, then the penalty (25% reduction)
will be applicable on it.

Software for Embedded Systems – Assignment I

You might also like