Dynames Productions

A blog to showcase my creative and technical work. Talk about what I like to talk about.

Energy Monitoring Application – C#


Note: This is only meant to be a written demo explaining certain aspects of the application. Since this device uses a special hardware component that is no present with me, random dummy values will be used for voltage measure readings and calculations.

Application information:

  • Name: Energy Monitor
  • Coded in: C#
  • Development Environment: Visual Studio 2010
  • Platforms: Windows
  • Special Note: This application is meant to be interfaced with a hardware component that has various input and output plugs to it. It would plug into the wall outlet, there the appliance you wish to measure would plug into the hardware device. Through a transmitter, it transmits information to a USB receiver plugged into your computer.

Purpose of the Application:

The purpose of this application is to be able to measure a certain amount of energy being used up by an appliance in your home and give you a general overview on how much that appliance would cost you to maintain in your house by the seconds, minutes, hourly, daily, monthly and yearly.

Program Functionality:

Initial Screen:


The image above is the initial screen that a user would be met by upon opening the application. Below is a list of what the buttons do:

  • Begin Analysis: Takes the user to another screen where they can begin analysis on a selected appliance.
  • Load Results: Allows the user to load a previously saved report for further analysis.
  • Help: Explains the function of the buttons on screen.
  • Credits: Displays the various people involved and their position on the project.
  • Exit: Closes the application.

Main Screen:


The image above is the main screen that the user is presented with after getting past the initial window. Below is a list of the button functions:

  • Program New monitor: Allows the user to set a certain memory value for a particular device (for example: Value 34 maybe for a desk side lamp).
  • Calculate Report: Allows user to input their base electrical bill amount that will be used to calculate various monetary values for user consideration.
  • New Analysis: Starts a new analysis.
  • Load Results: Allows the user to load a previously saved report for further analysis.
  • Graph Results: Visually real time graph the result of the analysis.
  • Home: Goes back to the initial screen.
  • Help: Displays step by step procedure to enact for an analysis. This dialog window also explains additional button options such as “Graph Results”.
  • Exit: Closes program.


The above image is the same screen as the main screen, but there are additional fields and buttons in there. The additional field are the following:

  • Fields:
    • A field to input base cost of the electrical bill.
    • A text box to show the calculated values, what the input value was and when this analysis was conducted.
  • Buttons:
    • Retrieve data: This button retrieves the input base cost value and uses it in the calculation of the different costs associated with the appliance being measured for.
    • Save Results: Gives the user the option to save the analysis report as a “.rtf” file that can be re-opened in the application, or in any compatible text editor.

As the user also has the option to graph the results, below is what that would look like:


The following is what has changed in the above screen:

  • A real time graph is introduced displaying the costs of the appliance over time.
  • Buttons:
    • Take Snapshot: Takes a still image of the graph and saves it for future reference.
    • Open Snapshot: Opens any previously saved snapshots.
    • Magnify Graph: Allows the user to magnify the graph with the options to display in the following time metrics.
      • Seconds
      • Minutes
      • Hours


This was a great senior project for my University (sort of like a thesis). It was also my first project done in C#, that meant a lot of learning was involved in the process of making this application to go along with the hardware aspect, though that particular part of the application was handled by someone else. It was both challenging and satisfying to work on an application I consider to be huge in magnitude for a first timer of the C# language.


Author: Monty Mason

Passionate about creative content creation of different varieties, programming and exploring new technologies.

2 thoughts on “Energy Monitoring Application – C#

  1. I see you’re working on an expert system! Awesome stuff!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s