Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Please fill in blanks * / public class Controller implements IController { / * * * Reference to a building model. * / protected Building

Please fill in blanks
*/
public class Controller implements IController {
/**
* Reference to a building model.
*/
protected Building house = new Building();
/**
* Set the building model which the Controller controls
* @param bld
*/
public void setBuildingModel(Building bld){
house = bld;
}
/**
*(See SSDCS documentation)
*/
@Override
public void changeDetected(___________ s){
this.update();
}
/**
* Function that is called by the controller every time a change has been communicated by a {@linkplain ISmartObject}, i.e., the smart object has called {@linkplain IController#changeDetected(ISmartObject)}
*/
private void update(){
// See if you need to turn on heating
if (house.getAvergeTemperature()> house.getDesiredTemperature() && !___________().isOn()){
System.out.println("Average house temperature is now: "+ house.getAvergeTemperature()+" while desired is "+ house.getDesiredTemperature()+". Turning A/C on.");
turnCoolingOn();
}
// See if you need to turn heating off
if (house.getAvergeTemperature()<= house.getDesiredTemperature() && ___________().isOn()){
System.out.println("Average house temperature is now: "+ house.getAvergeTemperature()+" while desired is "+ house.getDesiredTemperature()+". Turning A/C off.");
turnCoolingOff();
}
}
/**
* Turns cooling on.
*/
private void turnCoolingOff(){
___________;
}
/**
* Turns cooling off.
*/
private void turnCoolingOn(){
___________;
}
}
For this assignment you will need to complete the following exercise. A Smart Home installations contractor Smart Builders needs to put together a small smart apartment using a Controller that they build. The apartment consists of two rooms:
A Kitchen, which contains two sensors OmniTempSensorXS3 by OmniTemp Inc.
A Bedroom, which contains one OmniTempSensorXS3 by the same brand.
An SSDCS-compliant driver for OmniTempSensorXS3 can be found here (JAR) and documentation here.
The apartment also has an SSDCS-compliant A/C by a very well reputed brand called ArcticCool GmbH. The specific model used is ArcticCool FA-15 and the driver can be found here (JAR) and documentation here.
The developers of Smart Builders have developed some starter code as follows:
Room.java, which they use to model the room, as well as keep track of all the devices that are installed there.
Building.java, which is a collection of Rooms and also includes the furnace.
Controller.java, which models the controller device which collects data from sensors and sends commands to actuators via the Room, Building classes, depending on where the devices are installed.
Main.java, in which the apartment in question is built.
QuickThermostat.java, which is a stub of a temperature preference sensor for running this exercise.
You will also need a Scenario.jar plug-in, provided to you by the instructor. Here is a temporary Scenario.jar to assist you with building your solution. Your final submission should operate under a scenario provided by the instructor at a later time [more in class].

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Practical Database Programming With Visual Basic.NET

Authors: Ying Bai

1st Edition

0521712351, 978-0521712354

More Books

Students also viewed these Databases questions