Case study - greenhouse humidity control

Assignment Help JAVA Programming
Reference no: EM13724136

Create a program which meets the requirements then write a report which describes in detail how the program works. Your program, at a minimum, must demonstrate the use of variables, arrays, strings, control logic, file input/output and a simple GUI. To achieve maximum marks, you will also need to make use of a user-defined class with methods or special methods to perform needed calculations or other necessary actions.

The report:

Your report must describe the requirements of the application, outline the design of the solution, and provide a testing procedure to prove the application works.In your report, you will be expected to use flow charts to show control logic and assist with your description of the source code.

Case Study: Greenhouse Humidity control

Growing food or plants in a greenhouse environment requires control of many aspects of the internal environment including temperature, humidity, soil ph, soil moisture, nutrient level, and lighting. You have been employed to develop software that will simulate the control of humidity and soil moisture in a greenhouse.

Your program will consist of two parts, one is the control system that will respond to sensor information to turn on/off a misting device, turn on/off a watering system and open/close ventilation windows. The second part of the program will act as simulated sensors allowing the user to simulate readings of a set of sensors (soil moisture, interior humidity, exterior humidity).

The greenhouse uses a misting system to increase the internal humidity and ventilation flaps to reduce the humidity. Soil moisture is increased through the use of irrigation soakers. The optimum values for these conditions vary depending on the requirements of the crops being grown in the greenhouse. These values will be determined and set by the farmer.

Table 1 Environmental Settings

 

Morning

Day

Evening

Night

Variance

Humidity

75

65

65

85

5%

Soil Moisture

20

20

25

30

10%

The range of values for any setting is between 0 and 100.  A setting of 0 for humidity turns off humidity control. For soil moisture, 0 turns off the soakers. A setting of 100 turns on the relevant devices.

The control system:

Humidity control: In all cases, if the internal humidity is within the allowed variance, the misters are turned off. If the greenhouse humidity is below the required setting, and the external humidity value is above the required value, the ventilation flaps are opened and the mist system is left off. Otherwise the ventilation is closed and the misters are turned on. If the internal humidity is too high and external humidity is either lower or equal to the internal humidity, the misting system is turned off and the ventilation system is opened.

Soil moisture: The soakers are turned on if the soil moisture is below the required setting and they stay on until the reading reaches the setting plus the variance. They then remain off until the level falls below the setting.

For the control system, a GUI needs to provide for the system to show the state of the misting system, soakers and ventilation windows. The user should have buttons which provide for turning off the system, closing the system, running the system, and adjusting the environmental values.

The simulation system:

This is a simple GUI that allows values to be set for the sensors by a user. The values always range between 0 and 100 for each sensor. The time of day also needs to be set to one of the 4 values. Usually a control systems checks the values of the sensors about once every minute, but for simulation purposes, the simulation system can send a signal to the control system that its value has changed.

The GUI for this system should be available whenever the control system is turned on. The 'default' values for sensors should match the environmental settings.

Reference no: EM13724136

Questions Cloud

Prepare a strategic plan to grow the business : Select an organization and prepare a strategic plan to grow the business over the next three years. Your strategic plan must include the following:
Assignment on warehouse move project : Build the extra time into your schedule by doubling the installation work timelines for both the framing and drywall. Your project plan should also be updated with the new 3-week timeline for obtaining permits. Use the project plan you created for..
While cultural differences and bureaucratic paperwork : While cultural differences and bureaucratic paperwork for foreign governments make the prospect of global trade difficult for small businesses, there is one bright spot on the horizon that has brought global trade closer to home. Small busines..
Testing be overlooked to speed up the development effort : Discuss why testing is so essential to the development of a new system; list the different types of testing that can be completed and why each one is critical. Can testing be overlooked to speed up the development effort?
Case study - greenhouse humidity control : The control system that will respond to sensor information to turn on/off a misting device, turn on/off a watering system and open/close ventilation windows.
Leading and managing innovation at apple : Question 1: What role did the late Steve Jobs play in leading and managing innovation at Apple? Question 2: How do you account for the success of Apple products, particulary the iPod, iPhones, and iPads? The early Macintosh?
A critical thinker in a contemporary society : Research the responsibility of a critical thinker in a contemporary society. You may choose any topic that deals with a contemporary social concern. Examine the principles of critical thought in relation to the chosen societal concern, and cons..
What role do corporations that use cheap labor : Provide a summary of the historical pattern of immigration concerns and the economy. How are certain groups targeted? What role do corporations that use cheap labor practices play at home and overseas?
Issues and concerns about the use of portable devices : Security and Mobile Devices: Discuss issues and concerns about the use of portable devices such as tablets, smart phones and laptops.

Reviews

Write a Review

JAVA Programming Questions & Answers

  Javascript validation - cgi program

CGI mailer script form-mail.pl to your server's cgi-bin directory, and change the permissions on the script to make it executable - BMIS 310

  Carl has implemented two programs

Carl picks 20 random names and finds that P1 sorts them faster than P2. "We're using P1!" exclaims Carl. Why are you hesitant to commit?

  Create a gui version of the game mini sudoku.

Each row has the numbers 1 to 6,Each column has the numbers 1 to 6,Each group of 2 rows by 3 columns also has the numbers 1 to 6.

  Build distributed applications using technologies

Build distributed applications using technologies like Unix and Java sockets, SUN RPC, Java RMI, and message-passing tools such as PVM and MPI and

  Project socket programming - udp objectives - learn socket

project socket programming - udp objectives - learn socket programming in java udp-nbsp cement your understanding of

  Carry out additions and subtraction

You are to design a Java application to carry out additions and subtractions for numbers of any length. A number is represented as an object which includes a sign and two strings for the whole and decimal parts of the number.

  A game of tic-tac-toe

A game of tic-tac-toe, two players (one the computer) take turns marking an available cell in a 3 X 3 grid (a two dimensional array) with their respective tokens (either and X or an O). When one player has placed three tokens in a horizontal

  Determine the type of moped

Write a driver class called MopedRental. This class should perform the following: asks the user to enter the size of the moped, the day of the week and the number of hours rented, creates the Moped object, based on the size, and displays the input..

  What is the paintcomponent method how is it used in java

q1. what is the paintcomponent method? how is it used in java graphics? how does a program intentionally cause the

  Compute the area of the triangle

Compute the area of the triangle using Heron's Formula(below), in which s represents half of the perimeter of the triangle, and a,b, and c, represent the length of the three sides.

  Create a panel with borderlayout

Create a panel with BorderLayout. Add a button labeled "OK" to the south side of the panel - given the program, show the values of the array

  Write a recursive boolean method named ismember in java

Write a recursive boolean method named isMember in Java. The method should accept three arguments: an array, a value to search for, and the size of the part of the array being searched.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd