In this assignment you will work on developing a Smart Home controller. The Controller receives data...
Fantastic news! We've Found the answer you've been seeking!
Question:
Transcribed Image Text:
In this assignment you will work on developing a Smart Home controller. The Controller receives data and notifications from several sensors spread around a building, and based on these it controls several actuators, i.e., devices that change the state of the house. A major challenge is integrating various devices from different vendors so that they all work together with the controller. Sensors. Sensors are objects that collect information from the environment. In our case these will be Temperature Sensors and a Thermostat, i.e., a device that lets users define the desired temperature. Actuators. Actuators are objects that can perform changes in the environment. In our case these are a Furnace. Controller. A controller is a device which receives events and data from Sensors and issues commands to the Actuators based on hardcoded logic. Sensors, Controllers and Actuators of various vendors are able to work together through the use of Interfaces. Specifically, a consortium of smart home vendors, called "ITEC3030 Smart Home Consortium worked together to produce the Simple Smart Device Collaboration Standard (SSDCS) in form of a set of Java Interfaces. The Interfaces can be downloaded from eClass (Standards.jar) and the JavaDoc-generated Documentation can be found here. For this assignment you will need to complete the following exercises: Exercise 1 Study the documentation of the SSDCS. Use draw.io to generate a class diagram that describes the SSDCS as documented. Exercise 2 A Smart Home installations contractor "Smart Builders" needs to put together a smart apartment using a Controller that they build. The apartment consists of two rooms: A Living Room, which contains two sensors OmniTempSensorXS3 by OmniTemp Inc. A Bedroom, which contains another two OmniTempSensorXS3 by the same brand. An SSDCS-compliant driver for OmniTempSensorXS3 can be found on eClass (ClassLibrary- TempSensor.jar) and documentation here. The apartment also has an SSDCS-compliant Forced-Air Furnace by a very well reputed brand called Sahara GmbH. The specific model used is SaharaFurnaceHL42 and the driver can be found on eClass (ClassLibrary-Furnace.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. The code unfortunately is missing some key parts. Your job is to put together the java files and the libraries in e.g., an IntelliJ/Eclipse project, complete the missing parts. Exercise 3 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. (*NEW*) QuickThermostat.java, which is a stub of a thermostat for running Exercise 2. Assume now that you are the company that develops thermostats, called ThermoSet Ltd. In this assignment, thermostats are devices that allow building habitants set their desired temperature. SSDCS has an interface for those. ThermoSet's thermostat, ThermoSetX19, must therefore implement that interfaces. It also needs to implement a predefined front end. You need to do the following: Main.java, in which the apartment in question is built. You will also need to this Scenario.jar plug-in. Your solution should operate under any scenario provided by the instructor. Download this GUI plug-in from eClass (ThermostatFrontEnd.jar) and study its Java doc here. Implement SSDCS-compliant thermostat ThermoSetX19 and plug the above GUI in it. Develop its documentation Using JavaDoc. Once this is done help "Smart Builders" incorporate the ThermoSetX19 in their design. Update their code and submit updated result. In this assignment you will work on developing a Smart Home controller. The Controller receives data and notifications from several sensors spread around a building, and based on these it controls several actuators, i.e., devices that change the state of the house. A major challenge is integrating various devices from different vendors so that they all work together with the controller. Sensors. Sensors are objects that collect information from the environment. In our case these will be Temperature Sensors and a Thermostat, i.e., a device that lets users define the desired temperature. Actuators. Actuators are objects that can perform changes in the environment. In our case these are a Furnace. Controller. A controller is a device which receives events and data from Sensors and issues commands to the Actuators based on hardcoded logic. Sensors, Controllers and Actuators of various vendors are able to work together through the use of Interfaces. Specifically, a consortium of smart home vendors, called "ITEC3030 Smart Home Consortium worked together to produce the Simple Smart Device Collaboration Standard (SSDCS) in form of a set of Java Interfaces. The Interfaces can be downloaded from eClass (Standards.jar) and the JavaDoc-generated Documentation can be found here. For this assignment you will need to complete the following exercises: Exercise 1 Study the documentation of the SSDCS. Use draw.io to generate a class diagram that describes the SSDCS as documented. Exercise 2 A Smart Home installations contractor "Smart Builders" needs to put together a smart apartment using a Controller that they build. The apartment consists of two rooms: A Living Room, which contains two sensors OmniTempSensorXS3 by OmniTemp Inc. A Bedroom, which contains another two OmniTempSensorXS3 by the same brand. An SSDCS-compliant driver for OmniTempSensorXS3 can be found on eClass (ClassLibrary- TempSensor.jar) and documentation here. The apartment also has an SSDCS-compliant Forced-Air Furnace by a very well reputed brand called Sahara GmbH. The specific model used is SaharaFurnaceHL42 and the driver can be found on eClass (ClassLibrary-Furnace.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. The code unfortunately is missing some key parts. Your job is to put together the java files and the libraries in e.g., an IntelliJ/Eclipse project, complete the missing parts. Exercise 3 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. (*NEW*) QuickThermostat.java, which is a stub of a thermostat for running Exercise 2. Assume now that you are the company that develops thermostats, called ThermoSet Ltd. In this assignment, thermostats are devices that allow building habitants set their desired temperature. SSDCS has an interface for those. ThermoSet's thermostat, ThermoSetX19, must therefore implement that interfaces. It also needs to implement a predefined front end. You need to do the following: Main.java, in which the apartment in question is built. You will also need to this Scenario.jar plug-in. Your solution should operate under any scenario provided by the instructor. Download this GUI plug-in from eClass (ThermostatFrontEnd.jar) and study its Java doc here. Implement SSDCS-compliant thermostat ThermoSetX19 and plug the above GUI in it. Develop its documentation Using JavaDoc. Once this is done help "Smart Builders" incorporate the ThermoSetX19 in their design. Update their code and submit updated result.
Expert Answer:
Answer rating: 100% (QA)
Exercise 1 Class Diagram for SSDCS Unfortunately I cant generate visual content directly However I can guide you on how to create the class diagram us... View the full answer
Related Book For
Modern Database Management
ISBN: 978-0133544619
12th edition
Authors: Jeff Hoffer, Ramesh Venkataraman, Heikki Topi
Posted Date:
Students also viewed these programming questions
-
11. Which one is not a source for collecting references? Ans : O Proquest Ebscohost O Scopus Safe assign
-
If you were to compute beta yourself, what choices would you make regarding the market portfolio, the holding period for the returns (daily, weekly, etc.), and the number of returns? Justify your...
-
Liquid oxygen (commonly referred to as LOX) in a rocket-propellant tank is kept at a pressure of approximately 1 bar. A certain ullage volume is occupied by saturated vapor for safety. Use the graph...
-
On January 2, 2018, The Register, a science and technology news site based in Britain, published an article revealing the existence of two major bugs leaving virtually all computers and smartphones...
-
Refer to the financial statements and the Notes to Consolidated Financial Statements of Tootsie Roll Industries in Appendix A. Instructions Answer the following questions. (a) What were the total...
-
Two blocks are fastened to the ceiling of an elevator as in Figure. The elevator accelerates upward at 2.00 m/s. Find the tension in each rope. T 10.0 kg T 10.0 kg
-
DM Yard Services has now added residential and commercial customers and is providing services on a regular basis. Review the Income Statement and Sales by Customer Summary Report: January 1 - May 31....
-
Two independent situations follow. (Click the icon to view the independent situations.).
-
Suppose a Triple A minor league baseball team is moving from one city to another and has only 6 months to complete the move. Which leadership style or styles should the team's president employ to...
-
- Complete the sentences about independent events. Two events A and B are independent if and only if P(A|B) = If A and B are independent events, P(An B) =
-
Consider the one-dimensional wave equation au at au = 16- t0 ax2' with boundary conditions au(0,t) = 0, xu(x,t) = 0, t > 0. and initial conditions u(x, 0) = x(x-x), au(x, 0) = 8(cos2x - sin x) - 12...
-
Regarding financial instruments. Financial assets are classified in the following measurement categories: Question 39 options: Amortized cost and depreciable expenses. Fair carrying net book value....
-
ABCDE Corp. had $25,000,000 in revenues (sales), $6,500,000 in costs of goods sold, $3,500,000 in SG&A expenses, $3,000,000 in depreciation expenses, $2,000,000 in interest expenses, and $1,854,000...
-
Chevron Corporation (www.chevron.com) is one of the worlds leading energy companies. Chevrons headquarters are in San Ramon, California. The company has more than 62,000 employees and produces more...
-
Find the inverse, if it exists, for the matrix. -1
-
For each of the following relations, indicate the normal form for that relation. If the relation is not in third normal form, decompose it into 3NF relations. Functional dependencies (other than...
-
Match the following terms and definitions: _________ Data _________ Database application _________ Constraint _________ Repository _________ Metadata _________ Data warehouse _________ Information...
-
Match the following terms to the appropriate definitions: well-structured a. constraint between two relation anomaly functional attributes b. functional dependency between the primary key and a...
-
On 1 January 2022, Markon plc took out a finance lease for new plant. Details of the lease are as follows: The business has a reporting-year-end date of 31 December. The non-cancellable part of the...
-
The financial statements for Harridges Ltd are given below for the two years ended 30 June 2020 and 2021. Harridges Limited operates a department store in the centre of a small town. Dividends were...
-
Identify and discuss three ratios that are likely to be affected by a business overtrading.
Study smarter with the SolutionInn App