Software Based Solution To Manage And Automate The Power Supply To Computers


In this project I will be exhibiting a software-based solution to manage and automate the power supply to computers within a university or any other organization with multiple desktops. The aim of the system I’ll be developing and designing is to reduce electrical energy wastage and reduce the running cost for the organization, especially during times of the day and night where there is null or very minimal reason for devices to be powered on. The IT industry has vast potential when it comes to implementing environment-friendly practices of fact technology is one of the major consumers of energy in the times in currently live in. In a Report by Gartner Inc. , stated that its “estimated that the IT industry is responsible for 2% of Global CO2 emissions. ” The most common IT Equipment that is left abundantly switched on over several hours is the desktop PC, for instance at London South Bank University there are over 800 desktop units set-up all around the campus and are frequently left powered on overnight or during holidays often resulting in collective fairly high energy consumption against very little productive use. Despite recent actions by manufactures to reduce the power consumption of IT equipment, electrical energy costs are still a major drain for many organizations with several desktops such as universities, business offices and library’s.

This work can also be of use in all applications where automation of appliances may be required, for this purpose of this project I will focus purely on desktop PC’s and laptops that are connected to the LAN however in future this application can also be adjusted to accommodate for tablets, and smart devices such as Fridge’s, Light’s, Kettle’s and TV’s.

The power management system will also incorporate a report feature that could possibly allow for an admin user to accurately monitor, analyze and reports on power usage and energy consumption, at a granular, device-by-device level, these clear and accurate power reports that’ll be generated can be used by organizations to help identify and optimistically eliminate power wastage.

The phrase ‘computing power management’ refers to a computer systems ability to conserve or otherwise manage the power that it consumes. As long as the mains wall power supply is switched on, it implies that that power is being supplied to the computer or any other relevant devices connected to the PC, regardless whether in uses or not. In recent times Computers have become more powerful and an increasing demand of computers requiring large amounts of power. Deviations such as theses have led to a growing demand for power management systems that are able to detect when a desktop/computer is not in use and dyonically can disable the power to the computer or device remotely in order to conserve energy.

Literature review

The very first attempts to introduce an energy efficiency solution to computing was made twenty six years ago in 1992 with the introduction of ‘Energy Star’, ‘Energy Star’ was a U. S. Environmental Protection Agency (EPA) sponsored program promoting voluntary labelling of products that enhanced and embraced the introduction of energy efficiency to not only IT and computing but to various hardware appliances. This then pushed the IT industry to development and deploy some sort of automatic power downs of unused systems and hibernating tools that suspend system operation without the need for a full system shutdown. These tools where and still are primarily used for desktop and client systems which do not require continuous operation. During this period in desktop computing screen savers applications were commonly used when the PC wasn’t. In recent years big organisations and industrial companies have been thrusted into the idea of green computing, aiming for an environmentally sustainable computing environment and taking reasonability for the use of computers. Green computing benefits the environment by cultivating energy efficiency regulations and rules as well as lowering the emission of CO2 without using impact materials.

Modem day computing devices and their demand for power

Today there are more then 13 billion interconnected digital and electronic devices in operation globally, the equivalent of more than 2 devices for every living human worldwide and in addition to that Figures from Ofcom, the UK's communications regulator stated that just over 88% of the UK’s population in the year 2017 had internet in their homes whether it be broadband, fibre optic or just standards modems. When a desktop is running an operating system with programs and applications running the PC begins to unnoticeably accumulate all sorts of spare and scrap files and bites of data over extended periods of time these files often referred to as temp files, disk caches, page files, memory leaks and so on. These types of files mentioned can slow down a computer, nonetheless when a computer is ‘Shut Down’ (not just logged off or put to sleep) all these spare and scrap are formatted from the computers Random Access Memory. And when booted up again has a mostly clear and free account of RAM to be used effectively reducing the demand of power from the machine and making operational use on the devices more fluent. In addition to these prices of factual information I gathered from research I’ve come to believe that this must mean computer with greater amounts of RAM can go for much longer than a computer with only a little amount of RAM.

The cost of electrical power: In 2018 the average electricity bill in the UK is approx. £600 per year. However this is quite a bit of variation depending where you are around the UK, due to variances in household energy consumption and the set price paid per kWh for electricity in different regions all over the country, figure published by nimble fins can be found on the right.

How much it cost to run a desktop: The power consumption of a computer varies depending on whether it is a desktop or a laptop:

  • A desktop uses an average of 200 W/hour when it is being used (loudspeakers and printer included).
  • A computer that is on for eight hours a day uses almost 600 kWh and emits 175 kg of CO2 per year.
  • A laptop uses between 50 and 100 W/hour when it is being used, depending on the model. A laptop that is on for eight hours a day uses between 150 and 300 kWh and emits between 44 and 88 kg of CO2 per year.
  • In stand-by mode the power consumption of both a desktop and a laptop falls to about a third. This contributes to the 'vampire draw' of your household.

How many desktops are the in the university of south bank?

Collectively there is around 1200 devices within the organisation composing of approx. 700 in labs, 200 allocated to teaching staff and an extra 100/200 from commercial use such as receptions, cafeteria.

Wake up - on LAN: Introduction of cloud computing and how its cost and energy effective

The use of cloud computing in recent years has Introduction of smart home appliances and how they’re cost and energy efficient: The use of Smart Home devices such lighting and heating thermostats are more and more commonly being used to control and coordinate the supply of electrical energy during particular periods of the day and also set to be off during hours where such appliances such as lights are not needed in use. The idea of having more control over smaller and more delicate appliances use as a kettle, light bulbs, heating radiators, cooling systems, fridge’s and even motor vehicles, gives the residential and commercial user the impression that the consumption of power is in there full control and they are held liable for any wasted energy being used.

These smart appliances are generally monitored and controlled with the use of an application or virtual assistant that is installed on the users personal device wither it be a mobile phone or a digital piece of software for a desktop that accompanies the appliance. Within these applications there is usually a tab or page where users can visually see how much power they have consumed or used in a particular period of time, resulting in less of a shock when residents receive there monthly or quarterly utility bills alongside helping with the awareness of wastage electrical power.

The System

The desktop application I’m developing to solve this existing problem in industry is a Java developed application, with a user interface for the administrator to assess, view and operate. The application is coded in Java using a NetBeans IDE.

The system will only really have two use case actions; the first being the user clicking a scan network button which will then begin scanning the network in order to see which devices/desktops are connected, reachable and therefore active and consuming electrical energy.

The second action would be the option to shut down a particular devices from the list of active device, the shutdown command offers the administer authority and the ability to shutdown an active and powered on device for reasons which may include reduction of energy costs for an organisation and the ideally the prevention of unused electrical energy. When planning out and mind mapping the Power management system and what it is I wanted it do, I came up with the following four scenarios.

  • Discover and find devices connected to the network
  • Display information about the devices discovered such as name, location and power consumption in Whatts
  • Shut down machines and desktops that are powered on and my not be in use
  • Calculate the during of how long a particular device has been on for.

It was during the early planning stages of the project that I gathered it’ll be vital to know who the device belongs to or at least where it is located in the building as it may verify reasons to why the particular device are switched on during out of working hours for one reason or another, for example on a university campus you’ll often find that many members of staff stay working on campus fairly late during the term time and students use the library pc’s a lot more during the final 2/3 weeks of semesters as its exam season for most. However, during the holidays, I wouldn’t expect to see desktops on after working hours for instance after 8pm during the holidays would mean either the devices was not shut down correctly, the machines is actually a server or possibly even periodic system update is taking place. During my initial coding research I came across the problem that I won’t be about to source the MAC address or the host name of PC’s on the network, the scan will only provide with IP Address this then meant I would have change my initial idea, plan on discovering devices on the network, instead I’ll have to go for a command portal approach and use the “arp -a” command which displays the cache for all IP address and as well as mac (physical) address on the network.

This then meant I had the IP Address, mac address and statues of the devices however not the name of the device or anything that could directly link the device of a specific individual. This problem could have solved by the client of the application supplying some sort of CSV file that may contain additional data such as which employee or individual in the organisation a particular MAC address/ desktop belongs to. The application will start up by scanning the connected network’s IP Address and Subnet network in order to determine a host range. Once the host range is established the application will then use its full available range to scan and send a broadcast out to all IP Address within the networks subnet in chronological order of IP, this could be up to 254 different IP Address however this operation should only take between a few seconds and a minute at most.

Results of the network scan will be displayed on a admin user interface in the structure of a table, contain the IP address of the devices, MAC Address of the devices and the statues of the devices (On/Off), and also beside the IP and Mac address of active and reachable device’s there will be a shutdown button which will allowing for the admin, or the user of the application to power off a specific device for reasons that why save energy or avoid electrical power wastage. Pinging the networks local host address and gathering information such as which devices are connected, in other words reachable and turned on, required me to code the application to scan the local host address and also created a background thread to continuously ping the network in order to constantly have the most up to date and accurate information displayed, having an accurate reading of the network and insuring the application is constantly scanning the network via the thread implemented meant that my table had to be dynamic.

The Systems: Network scanning method

The very first thing I had to do was get the application to detect, read and scan my network for devices connected both over Wi-Fi or wired connected via Ethernet, I then had it can the network for which devices where active and which weren’t. At this early stage I encountered my first technical problem which was that the application was scanning my entire networking all 255 available ports in chronological order and there for always producing a huge list of mostly inactive devices or ports not in use.

After trying out multiple methods and numerous different variations of code to conducted this critical operation of scanning the network I finally went for the method where I would pass a command line protocol through the application, the command is the “arp -a” (Address Resolution Protocol) command which displays the cache for all IP address and as well as mac (physical) address on the network, I first tested this out on my machines terminal before bringing into my code, the result of this test can be found on the test page image 1. 1 Once I had sorted out the problem of scanning the whole network I then moved onto trying to get hold of the mac address of the device’s that are powered on and connected to the network.

I then worked on filtering out the information that I need and is of any significance to me and worth feeding into my GUI table, the method I used to filter out and print only the IP and MAC address is why using HashMap strings that is only taking the string or integer data between two parameters, in this case being: IP data = between the first bracket and the second bracket in the ARP results line. And the MAC data by only taking the string or integer data between ‘at’ and ‘on’.

The System: The admin interface

The user interface for the application is a java swing JFrame form which aims to display all of which devices are currently reachable and powered on, this data is feed into the table via the passing of data from the NetworkReader to the interface, the data to be presented is the IP address, MAC address and statues of all devices on the network. I also had to insure for a comfortable user experience the results table has to be dynamic and not static in order for it to accurately show a live feed of information being displayed continuously with the use of a background thread that I will get to setting up shortly. Once set up the JFame I started off by implementing my scan network button without any code behind it just yet and getting the dimensions of the applications screen to one I favoured.

The next thing I stated to work on was the naming of the columns, having 4 and each one being entitled IP, MAC, Statues and Shutdown. During the setting up and shaping of the interface I a thought came to mind which was that I many need to make this table what will be displayed to the administrator and user of the application, will have to be dynamic in order for the background thread that is constantly scanning the network to feed live and as accurate results as possible of which devices are connected & on and which aren’t.

After creating a ‘scan network’ button on the GUI I coded the button to scan the network on click, and also to prompt a message to the admin user the button has been clicked the scanning is now in progress. During my first attempts to get the interface to run, scan and publish results in the table I encountered the problem of the application gets caught hanging and results are not being displayed.

15 July 2020
Your Email

By clicking “Send”, you agree to our Terms of service and  Privacy statement. We will occasionally send you account related emails.

close thanks-icon

Your essay sample has been sent.

Order now
Still can’t find what you need?

Order custom paper and save your time
for priority classes!

Order paper now