Document 17801681

advertisement
Background of a Septic System .................................................................................................................. 3
Operation of the RMS Septic Monitoring System ...................................................................................... 3
Item Description of Operation .................................................................................................................... 4
I. RMS Software................................................................................................................................. 5
A. Input Interface ............................................................................................................................. 5
B. Analysis Subsystem .................................................................................................................... 5
C. Graphics Subsystem .................................................................................................................... 6
II. Meter Operation Characteristics ..................................................................................................... 9
A. Manufacturer ............................................................................................................................... 9
B. Operational Tolerance ................................................................................................................. 9
III.
Operational Subsystems of the User Interface .......................................................................... 10
A. Input .......................................................................................................................................... 10
B. Output ....................................................................................................................................... 11
C. Storage ...................................................................................................................................... 12
D. Analysis..................................................................................................................................... 12
E. Number of Meters ..................................................................................................................... 13
F. Power ........................................................................................................................................ 14
Description of Use .................................................................................................................................... 14
I. User Interface ................................................................................................................................ 15
A. Buttons ...................................................................................................................................... 15
B. Liquid Crystal Display .............................................................................................................. 15
II. Installation..................................................................................................................................... 15
A. Septic Tank Capacity ................................................................................................................ 15
B. Soil Percolation ......................................................................................................................... 16
C. Rainfall ...................................................................................................................................... 16
III.
User Configurable Options ....................................................................................................... 16
A. Password ................................................................................................................................... 16
B. Pump the Tank .......................................................................................................................... 16
IV.
Visible and Audible Alarm Indicators ...................................................................................... 16
A. Green ......................................................................................................................................... 16
B. Yellow ....................................................................................................................................... 16
C. Red ............................................................................................................................................ 17
Development Methods .............................................................................................................................. 17
I. Software ........................................................................................................................................ 17
A. Requirements ............................................................................................................................ 17
B. Design ....................................................................................................................................... 19
C. Code .......................................................................................................................................... 20
D. Evaluate/Test............................................................................................................................. 26
II. Interface (Hardware) ..................................................................................................................... 26
A. Design ....................................................................................................................................... 26
B. Build .......................................................................................................................................... 27
C. Test ............................................................................................................................................ 27
III.
Integration ................................................................................................................................. 27
A. Plan ........................................................................................................................................... 27
B. Test Plan.................................................................................................................................... 28
C. Identification of Problems......................................................................................................... 28
D. Stress testing ............................................................................................................................. 28
IV.
Evaluation Plan ......................................................................................................................... 28
Proven Methods and/or Procedures .......................................................................................................... 29
I. Software ........................................................................................................................................ 29
A. Sampling Rates ......................................................................................................................... 30
B. Testing Methodology ................................................................................................................ 30
II. Hardware ....................................................................................................................................... 31
A. Electronic Meter Interface ........................................................................................................ 31
B. Throughput (speed) of Water .................................................................................................... 32
III.
Integration Notes ....................................................................................................................... 33
A. Graph Plotting ........................................................................................................................... 33
B. Meter Updates ........................................................................................................................... 33
C. Site Specific .............................................................................................................................. 34
Design Details ........................................................................................................................................... 34
I. Software ........................................................................................................................................ 34
A. Graph Plotting ........................................................................................................................... 35
B. Mathematical Analysis.............................................................................................................. 36
C. User Interface Layout ............................................................................................................... 37
D. Input .......................................................................................................................................... 37
II. Liquid Crystal Display Interface Unit........................................................................................... 39
A. Unit Requirements and Size Limitations by Part ...................................................................... 39
B. Meter Requirements and Size Limitations ................................................................................ 40
C. Hardware Interfacing ................................................................................................................ 41
Parts List ................................................................................................................................................... 42
Background of a Septic System
Wastewater treatment for residential homes is provided by two major systems. The first is local
community disposal services and the second is on-site wastewater treatment. It is estimated that 25
percent of all homes in the United States rely on onsite wastewater treatment by http://septic-info.com.
RMS is concerned with the issue of water usage within the home and its negative affects on the on-site
wastewater treatment system. Commonly referred to as a septic system.
Septic systems provide treatment of on-site wastewater by facilitating a natural chemical
decomposition of hard waste within a containment unit made of metal or cement.
Disposal of
wastewater known as effluent is made through perforated pipes known as drainfields. The hard waste,
known as sludge, collects in the base of the containment unit as a foam, known as the scum layer,
develops at the surface of the containment unit. All septic systems are designed to extract the effluent
mixture within the sludge and scum layer after a period of time has passed for processing. As the waste
decomposes, the effluent mixture will drain into the drainfields and eventually into the soil for further
filtering.
This is a process that takes time and cannot be accelerated by any significant degree.
Operation of the RMS Septic Monitoring System
The RMS team is concerned with providing an individual with an on-site sewage system
information about their septic system. We do this by measuring the amount of water entering the house
and using industry standard algorithms to help with the determination of the current status of their septic
system. This takes the guesswork out of determining if there is a problem with their septic system. We
accomplish this through the integration of hardware and software to the home.
The RMS Septic Monitoring System is comprised of three key components which are the
monitoring/interface unit, the software to provide graphics and analysis, and meter(s) that attach to the
main interface unit for processing and analysis. The RMS Basic Septic Monitoring System will include
the interface unit with two attached meters and supporting analytical software.
The interface unit will provide the user with input and output of the septic monitoring system.
The input will be via buttons for navigation through a user-friendly menu. There will be four buttons for
North, South, East, and West. There will be an additional four buttons for Enter, Cancel, Graph Type,
and Time. These will allow the user to customize the unit to display information in a way that is most
comfortable. Additional inputs will come from the meters themselves. These meters will provide the
core water usage data for processing by the monitoring unit. The functionality of the monitoring unit
will include an output sub-system for information display.
The output of the unit will be formatted information on a Liquid Crystal Display (LCD). The
core display data will include a units/second, remaining capacity, and capacity used. The units/second
will be in either meters/second or gallons/second. The remaining and used capacity will provide an
output in either meters or gallons. The determination of this information will be based on the user. The
default value of meters or gallons will be determined by the meter itself. This brings us to the two
meters used in a basic installation.
The water-main meter will be attached to the water supply of the house and provide a pulse-code
signal that will give a direct indication of water entering the house. The second meter will be attached to
an external faucet to provide a signal that indicates this amount of water will not be going into the septic
tank.
The analytical sub-system software gives usage characteristics and provides the user with up-todate usage information. This is a major component of the RMS Septic Monitoring System. We want to
give the user a level of detail that leaves to questions as to the current state of their septic system.
Upon request from the user, the RMS Septic Monitoring System can be tailored for any
installation. The only change required is the amount of meters and the additional hardware required for
interfacing the meters to the display unit. The software will be developed with full functionality so
software re-work will be kept to a minimum.
Item Description of Operation
The following sections will detail the operational characteristics of the RMS Septic Monitoring
System to include the software, meters and user interface.
Objectives from an operational standpoint:
1.
2.
3.
4.
5.
6.
7.
8.
9.
Describe the input interface.
Describe the analysis sub-system.
Detail the graphics sub-system.
Give manufacturer recommendations for operation.
Describe the tolerances with respect to both resolution and units.
Software inputs to include the meter and buttons.
Formatted output for the LCD and serial interface.
Storage characteristics.
Analysis factors.
10. Number of Meters
11. Power
I.
RMS Software
The methodology of developing the RMS software is to provide the user with detailed
information in a format that is easily understood. This allows the user to quickly react to an
adverse situation. In order to achieve this goal, we must make the software versatile while
retaining accuracy.
A. Input Interface
The RMS Septic Monitor show in Figure 1
will provide eight buttons in total for user
interaction. Four buttons will be used for menu
navigation. The four buttons will be labeled
north, east, south, and west and will help the
user navigate the on-screen menus that are
available. The next four buttons will be for
controlling the sub-system features.
These
buttons will be label enter, cancel, time
Figure 1
interval,
and
graph
type
functionality accordingly.
and
provide
The enter button
will be used to accept the currently selected item on the display. The cancel will be used to take
the user to the previously viewed menu or back out of an operation. The time interval will be
used to set the graph display to either hours, days, weeks, or months. The graph type will be
used to toggle between total water used, capacity left in septic tank, and total capacity of septic
tank.
B. Analysis Subsystem
The analysis subsystem will be the driving functionality of the RMS Septic Monitor.
This is the software component that is most critical to the success of the RMS system. In the
basic system, there will be a water-main input and one input for water not affecting the capacity
of the septic tank such as an external faucet from the home.
The water-main input will be used to determine the status of the septic tank by tracking
the amount of water entering the house. We can assume that drinking water and water used to
fill water bottles for drinking purposes is negligible.
We track the amount of water flow by
what is referred to as a pulse code input from the water meter input devices. This is simply an
electrical connection similar to a switch. The connection is made and released in a time that is
proportional to the amount of water flowing through the meter. Please see attachment 1(a) for a
basic signal reference. The shorter the pulse, the faster the flow rate and thereby, the longer the
pulse the slower the water flow rate.
We have to set the software is such a way as not to loose accuracy while maintaining a
sentry for input. All reads will be tracked for a period of no less than one hour. If no read is
taken within the one hour time frame, we can set the flow rate to zero. If a read is taken within
that one hour time frame, we will use mathematical integration to determine the amount of water
in the tank based on the previous three inputs of water flow rate and differentiate to accurately
plot the slope characteristics on the graph of the user display.
Amount of water and rate characteristics will be provided in real-time. The graph history
for one hour previous to current time is subject to change to support the current water meter
input state. The graph for history greater that one hour can be used to accurately depict usage
characteristics and make determinations on usage and how best to accommodate a healthy septic
system.
C. Graphics Subsystem
The graphics are to facilitate quick recognition of the current status and problems that
might occur. Faster recognition is achieved by having a consistent output format. The screen is
divided in three main areas which are the graphics area, menu area, and status bar area.
The graphics area is located to the left portion of the screen and resides in 85% of the
viewing picture. The background color is white and graph lines are drawn in black, red, green,
or blue to make the picture more readable. The major components to the graphics system are the
x and y axis.
The x axis represents a time increment in hours, days, weeks, or months. The time
increment can be toggled by the Time Interval function button located on the front of the
interface unit or selecting the time interval via the main menu. The time intervals are minutes,
hours, days, weeks, or months.
The hours display will begin with the previous 12 or 24 hours with the axis showing 12
or 24 hours in history to the left and current time displayed on the right. The graph will give an
indication of water usage over this defined time. Refer to attachment 2(a) for a depiction.
Days, weeks, and months will be displayed in a similar fashion with the only difference
being the length into history. The days function will display the previous 7 days of water usage.
The weeks function will show four weeks and months will be for the last three months. Please
refer to attachment 2(b) thru 2(d) respectively.
The y-axis will display amounts of water in either gallons or liters depending on the users
default settings. This axis will adjust for time intervals so that all information is displayed. The
graphics subsystem is responsible for this functionality. Refer to attachments 2(b) thru 2(d).
The main menu is the second of three items on the graphics display. The menu is in the
upper 10% of the graphics display section and is a fully functioning pull-down menu. The north,
south, east, and west buttons of the direction pad will assist in navigation of the main menu. The
enter and cancel function buttons are used to either select an option or back out of a menu item.
The next few menu items will be displayed in attachment 2(e) for reference. The main
menu will have Graph Type, Time, Mode, Alarm, and Help.
Graph Type will have a pull-down menu to let the user select between rate, amount in
tank, and capacity remaining. The Time menu item will have selections for 12, 24, Days,
Weeks, and Months for selection of these time intervals. The time intervals will propagate to all
Graph Types. The next main menu item is Mode. The pull-down menu selections are User,
Config…, and Pump.
User mode will allow the system to operate in normal operating situations. This includes
all analysis and graphing capabilities of the system. The Config… option will bring up a display
box with items such as rainfall amount, password, tank size, drain rate, and meters.
The rainfall amount will allow the user to adjust the rainfall amount for the current
season. This will allow more accurate estimations of septic tank capacity. The next item,
password, will bring up a dialog to change and confirm a new super user password while
validating the current. Tank size will allow the user to modify the tank size if the tank is ever
replaced. The drain rate will be based on a percolation test performed by a septic tank inspector.
There will be an initial value based on installation results, but at any time in the future, the home
owner can elect to do another test and input the results of the new test. The last selection will
allow the user to add meters and identify the type of meter with characteristics such as gallons or
liters.
The final menu item under Mode is Pump. This function is to be used only after a septic
system has been pumped by a licensed professional. This item is password protected to secure
against accidental tampering.
The next main menu item is the Alarm menu. This will have the ability to acknowledge
an alert indication. This will turn off the audible alarm. The alarm acknowledge function is
password protected so as to prevent tampering.
The final main menu item is the Help button. This button will bring up a dialog with
contact information for their local area and an RMS customer service number. This concludes
the description of the menu contained within the graphics display.
The last section of the graphics display is the status tool bar. The tool bar uses the last
15% of the display to the right of the graphics section. The information in this section provides a
brief snapshot of the septic system status by providing an alert indication and current water usage
information.
The alert indication on the status bar is done via color changes. Green is a good
indication that lets the user know everything is okay and well within the septic systems abilities.
The next level is Yellow. Yellow informs the user to back off of water usage until the level in
the septic tank returns to a Green indication. The last level is Red. This informs the user to stop
all water usage until a safer condition exists. The color changes will affect the entire status bar
while displaying current usage information.
The current usage information residing on the status bar will include units/time, capacity
used, and capacity left. This information will remain consistent and update at regular intervals
through all menu selections.
Units/time will be determined by the graphics subsystem. If the current graph display is
in days, then the display will be the amount used over the displayed days. The units will be the
same as the y-axis of the graph to maintain continuity.
The capacity used and capacity left are displayed just below the unit/time value. The
units for both of these will be the same as the y-axis of the graph.
II.
Meter Operation Characteristics
A. Manufacturer
The meters used in the RMS Septic Monitoring System are currently purchased from DLJ
Meters. All installed meters must be mounted in a horizontal or vertical position to assure
accuracy between reads. The part number for the meters used in production will be the
DLJSJ50C and the DLJSJ75C. Both meters provide a pulse-code output which is described in
section I.A.ii) second paragraph. See attachment 3 for the manufacturers details of these
meters.
B. Operational Tolerance
DLJ is not the only manufacturer available to the RMS team. We have an established
relationship that proven to be helpful. We can use another manufacturer but the operational
characteristics must meet certain requirements. Those requirements will be the resolution and
the units.
i)
Resolution
Resolution is an important characteristic for the RMS Septic Monitoring System.
Resolution is the frequency of the pulse-code signal. One pulse per gallon is the optimal
pulse rate. Meters of this type are common and for this reason was the determining factor in
using meters of this resolution. This gives RMS freedom from single sourcing and gives the
user the ability to replace meters when a malfunction is detected.
ii)
Units
The second critical component of the water meter used is the units of measurement.
RMS has picked the most common to be US Gallons, Liters, and Cubic Meters. The
software has the ability to perform calculations with these three measurements as long as the
system is informed of the units upon install or a change of configuration. If the system is
not informed properly, the RMS systems calculations will be wrong and the RMS team will
not be held liable. If there is a question, please refer to the help section for contact
information.
The manufacturer of the DLJSJ50C provides their meters at a cost of $80.00 per meter.
They have been very helpful for the prototype phase and should prove to be just as helpful in a
continuing partnership.
III.
Operational Subsystems of the User Interface
A. Input
Input to the RMS Septic Monitoring System will be done via two main input subsystems.
The two subsystems that provide input are the meters and the buttons.
i)
Meter
The DLJ meters provide a pulse-code input( I.A.ii) ) that can be broken down into on and
off times. The pulse width can be defined as the on time and the (pulse period – pulse
width) can be defined as the off time of the meter. This is the time in which the wires are
not making an electronic connection. We count the time between the transitions of these
events and can gain a level of accuracy far greater than that of just counting pulses.
In addition to the counting structure, we interface the signal to the embedded computer
via a PS/2 connection. The values of these signals are well defined in the EISA 232
specification and should be studied for familiarity.
The signal does have a distance
limitation of 250 feet and should be considered a factor to a new installation.
ii)
Buttons
The buttons of the interface unit will not change from installation to user mode, but it
should be noted that the installation menu is far different from that of the user mode. The
reason for the difference is that information needs to be put into the system that will not
change such as contact numbers. The next section details how to perform the installation
button functions.
(a)
Installation
To perform a new installation setup on a system perform the following button
presses.
Enter, Enter, Cancel, Enter, Graph Type
This will signal the system to inquire the user if this is a new install. Press the
Enter key for a new install or cancel to exit out of this function. Pressing the Enter key
will put the system into new installation mode. The installation contractor will be
prompted for the size of the tank, the average rainfall amount, the percolation rate, the
number of bathrooms, the number of bedrooms, if a garbage disposal exists, and contact
info.
Numbers will be displayed from 0 to 9 and the installation contractor will
navigate the numbers via the direction pad. To accept a number press the enter button. If
a number is entered in error, the cancel button can be used to clear that number. The
required numbers are the local servicing company and the toll free 1(800) number to
RMS customer service.
(b)
User
The user mode function buttons of the RMS Septic Monitoring System will be the
same as that detailed in section I.A.iii). User input is protected via a password system.
This is to validate that the person pressing the buttons is a knowledgeable user of the
RMS system. If a password is entered incorrectly, the system will lock for a period of 3
minutes.
This will let the system know to stop processing user input and give a
frustration buffer.
B. Output
Output of the RMS Septic Monitoring system is provided by an LCD screen and an optional
serial interface for additional features that can be added in the future.
i)
Liquid Crystal Display (LCD)
The LCD is driven by the graphics subsystem within the software. The graphics
subsystem will interface directly with the hardware layer via the MPC201 LCD controller
module provided by Micro/sys (See Manufacturers Data Sheet 1). This is an expansion card
to the 486MHz PC/104 embedded computer, part number SBC1490 (See Manufacturers
Data Sheet 2). The MPC201 will drive the 8-bit input to the LCD itself. The LCD display
used will be the F-51161NCU-FW-AA provided by Optrex Corporation (See Manufacturers
Data Sheet 3).
ii)
Serial
This option is still under consideration, but a serial interface will allow RMS to
package additional software that allows the user to download data from the RMS Monitor.
This can be used as a historical record or to help identify trends in the home water usage.
The serial port can also be used a way to provide software updates to the core RMS system.
The serial interface is available on the embedded computer F-51161NCU-FW-AA.
C. Storage
The two types of storage within the RMS Monitor are volatile and non-volatile. There
are 32Mbytes of volatile storage and 144Mbytes of non-volatile storage in the form of flash
memory.
Both of these types of memory are contained within the SBC1490 embedded
computer. This will provides enough operating and storage space for an embedded version of
Linux and the RMS software.
D. Analysis
The analysis subsystem of the RMS Septic Monitor is the most computationally
expensive portion of the system. RMS wants to evaluate the status of a septic system with an
accuracy of +/- 3%. This accuracy can only be attained with proven volumetric mathematical
models that require floating point arithmetic. Therefore, we will be using the Advanced
486Mhz PC/104 Embedded PC by Micro/sys (see Manufacturers Data Sheet 2) for the analysis
subsystem.
i)
Time intervals
The time intervals of the pulse-code output of the meter are determined by the
transitions of the pulses themselves.
Referring to Attachment 1a), the first transition
happens at time 0 from 0 volts to 5 volts. The second transition occurs at time 2 from 5
volts to 0 volts. We connect the meters pulse-code output to the button of a mouse. The
software will track when a button is pressed and when it is released. At time 0, this would
make the software think that the button is pressed. At time 2, the software would think that
the button is released. Upon either of these situations, the software counts until the next
transition event. By a simple computation of t2 – t0 we can track the time period between
these two events. We can do this in a continuous loop and track the time from one event to
the next. This helps us to set up our time intervals for the software. By knowing how long
and how much, we can get rate = amount/time. For a more detailed explanation, please see
the Design Detail section IV.B..
ii)
Differentiation and Integration
To assist our need to be accurate, we must deploy numerical methods that are proven,
stable, and efficient. One of the numerical methods used to assist in the graphics subsystem
will be the Natural Cubic Spline. This method works by taking the last three points on the
graph and estimate a cubic polynomial that intersects all three points. This method is fast
and very efficient at curve fitting.
The second numerical method RMS will implement is the Composite Simpson’s Method
for numerical integration. This will take the polynomial generated in the Cubic Spline and
approximate the area under the curve. This will give a volume of water over time. For a
further explanation, please refer to the Design Detail section IV.B..
iii)
Statistics
The statistics analysis portion of the RMS system will be used to assist in graphics, and
meter malfunction. For the graphics section, we can use point estimation to determine within
an expected error the next value that will be plotted by the system. If the actual value is
greater than the expected error, we might have a problem with the input subsystem. We can
use this indication to help the RMS system troubleshoot itself.
E. Number of Meters
RMS wants to make sure that the RMS Septic Monitoring System is both versatile and
upgradeable. We do this by allowing more than 2 meters to be installed. The max for a basic
system is three. This can however be easily upgraded to allow at most nine simultaneously
connected meters. RMS can do this by providing the physical connection layer and the
software to drive these meters. Please see attachment 5 for a depiction of the rear of the RMS
unit that details the connection points for the meters.
i)
Physical Connection
Physical connections to the water meters are provided on the back of the RMS Interface
Unit. These connections are a pair of 1/8” screws per meter.
ii)
Adaptability
Along with the ability to connect multiple meters. The software will be able to configure
itself based on connection position. The software needs to know the type of units such as
gallons, liters, or cubic meters, the position of connection, and if the meter is an input to the
septic system or an output to the house that will not affect the septic tank.
F. Power
The RMS Interface Unit requires power in order to function. The connection point of power
to the interface unit is detailed in attachment 5. We will define the power source requirements
and how this power is routed to the RMS Unit.
i)
Source
The power source for the RMS unit is 115VAC single phase. The power will supply the
RMS Unit and provide the levels required for meter reading. The internal power adapter of
the RMS Unit will use a transformer to divide and convert signals to a DC level acceptable
by the electronic components contained within the unit.
ii)
Connection to Structure
The connection to the structure should be made by a licensed electrician. The RMS unit
will connect to the nearest circuit breaker within the structure. The circuit breaker will be
labeled accordingly by the electrician. If a circuit breaker is not available, the customer will
have to work with the electrician on the options available. If no solution can be found, the
RMS unit will be returned at no cost to the customer. Considering that the RMS unit will be
installed in new home construction, this situation should no arise.
Description of Use
This section will help in identifying critical pieces to the RMS puzzle. The set of objectives are:
Description of Use Objectives:
1. Identify and Explain User Interface Function Buttons
2. Explain the Purpose of the Liquid Crystal Display
3. Identify and Explain Critical Installation Variables
4. Explain the Purpose of a Secure System
5. Explain the Pump Feature
6. Identify and Explain the Alert System
I.
User Interface
A. Buttons
Power Indicator Light: When the red light is on, the wall unit is connected to its power source.
Enter Button: Used to select from the menu
Cancel Button: Used to cancel a selection
Graph Type Button: Used cycle through the graphs displayed in the Graph Panel (used in
conjunction with the Time Button)
Time Button: Changes the Time Interval displayed in the Graph Panel
Arrow Buttons: UP, DOWN, LEFT and RIGHT are used to browse different areas in the display
screen and to move through the user menu.
B. Liquid Crystal Display
The Liquid Crystal Display (LCD) screen located on the display device is the only display
source for the user to view the output of the RMS software. The LCD is the interface for the RMS
Septic Monitoring System user to interact with the software.
requires that the user views and operates the LCD.
Interaction with the software
The menu with options, graph panels with
graphical information and important identified data values are all viewed by looking at the LCD.
In conjunction when the user makes a request using the buttons, the software responds by
displaying that request to the LCD. The user could use the directional pad to move the viewing
area of the display by moving the pad in the desired direction.
II.
Installation
Upon installation of any RMS Septic Monitoring System, the system must be configured with
certain parameters critical to the proper operation. The options most critical are the septic tank
capacity, soil percolation rate, and rainfall averages.
A. Septic Tank Capacity
The septic tank capacity is at the core of the RMS software design. The capacity must be
known or any output from the RMS system will be incorrect.
B. Soil Percolation
Soil percolation rate must be determined prior to system initialization. This is a critical
factor in determining the drainfields drain rate. The drain rate determines the actual amount of
time it take for effluent to leave the septic system.
C. Rainfall
Rainfall helps to minimize errors within the RMS Septic Monitoring System. The rainfall
helps to determine the drain rate along with the soil percolation rate. These two factors help to
reduce the estimation error of the RMS Septic Monitoring System.
III.
User Configurable Options
A. Password
The password is a security option that allows the owner and/or user of the RMS Septic
Monitoring System to block unauthorized use of the display device without the valid password.
This protects the user from having the system settings changed without his authority. The
user does not have to worry about children in the house if any, playing with the device and
accidentally change something.
B. Pump the Tank
The pump the tank option is used to allow the user to reset the software to recognize that the
septic tank was pumped. This configuration should be done immediate after the tank was pumped
and before rerunning the software. The RMS system will become inaccurate if the pump the tank
option is not used to configure the software to know that the septic tank was pumped.
IV.
Visible and Audible Alarm Indicators
A. Green
During the OK Alert Level, the Information Panel will have a green background. This
condition tells you that you are currently at a safe level of water use.
B. Yellow
The CAUTION Alert Level is designed to tell you that your septic tank capacity is close to
being exceeded and you should stop using water for the time being. The background of the
Information Panel turns yellow in this condition.
C. Red
During the DANGER Alert Level, the background of the information Panel will turn red
and the Central RMS Unit will start beeping. At this point, you should stop using water
immediately because the septic tank is now past its capacity. It is likely that some damage has
been done to the drain field at this point, but continuing to use water will only cause more damage
and may cause a back up into the house.
Once the alarm is activated, it will continue sounding until the Alert Level goes down to
CAUTION or until the alert is acknowledged. To acknowledge the alert simply navigate to the
alarm option in the menu and press the enter button.
Development Methods
This section will detail the limits and responsibilities of the RMS software system. The listed
requirements provide a framework that has proven itself in prototyping. There is room for improvement
as with any software system.
Development Method Objectives:
1. Define the software requirements
1. Provide a Design Methodology
2. Provide Example Code from Prototype
3. Define Evaluation Method
4. Describe the Hardware Environment
5. Provide a Roadmap to Building the RMS System
6. Identify Critical Testing Points
7. Provide a Plan for Integration of Hardware and Software
8. Testing Factors
9. How to Identify a Problem in the System
10. Define the Evaluation Plan
I.
Software
A. Requirements

Receives and Records Data from the Water Flow Meter(s)

Records Meter Data at a Set Time Interval

Displays a Blank Screen When Not in Use

Has Two Modes Of Operation:
o Program Mode
o User Mode

Program Mode has the Following Characteristics
o Password Protected
o Able to Change the Time Interval of Recordings
o Able to Change the Septic Tank Capacity Value
o Able to Change the Password for Program Mode
o Able to Change the Amount of Time Before the Screen Saver Starts

User Mode has the Following Characteristics
o Able to Display Using Different Time Intervals as Follows

Monthly

Weekly

Daily (Last 24 hours)

Half-Daily (Last 12 hours)
o Cycles Through the Following Graphical Displays

Current Consumption Rate Per Time Period (defined above)

Estimated Remaining Tank Capacity

Percentage of Total Consumption for Individual Areas
o Displays a Color Coded Alert Based on the Following

GREEN: All is Well

YELLOW: Capacity at Current Water Consumption Rate Will be
Exceeded

RED: Capacity Has Been Exceeded
o An Audible BEEP is Sounded When a Change in Alert Status Occurs
o An Alarm is Sounded When Alert Status is in RED Level

Alarm Stops When Acknowledged or When Level Drops Below to
YELLOW

Software Inputs
o Water Usage Data

Software Polls the Flow Meter at Set Intervals
o Time

Software Keeps Track of the Intervals
o Historical Data


Software Must Read Stored Data in for the Graphs
Software Outputs
o Current Rate of Water Usage per Hour
o Remaining Capacity of Septic Tank in Gallons
o Alert Level (RED, YELLOW, GREEN)
B. Design
The software implementation requires Java programming language in a Unix environment.
The software application will be compose of sub modules, which are called in the main driver.
--------------------------------------------------------Main Driver //////calls the program constructor
--------------------------------------------------------|
|
V
---------------------------------------------------------Constructor() ///calls following modules
---------------------------------------------------------|
|
V
----------------------------------------------------------Menu() /////////Creates and manipulate the menu
----------------------------------------------------------|
|
V
----------------------------------------------------------Event_Processor() //////handles the menu button
events and other program
functional events (alerts,
alarms, meter read and etc.
----------------------------------------------------------|
|
V
----------------------------------------------------------MeterRead() /////////gets a meter read value from
the water meter
----------------------------------------------------------|
|
V
----------------------------------------------------------Analysis() ////////performs the necessary
Mathematical analysis
----------------------------------------------------------|
|
V
----------------------------------------------------------Output_display() /////provides the user output
(data and graphs)
----------------------------------------------C. Code
//Example outline of software based on prototype version
//Include libraries
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
import javax.swing.border.Border;
import javax.swing.border.TitledBorder;
import java.io.*;
import java.net.*;
import java.util.LinkedList;
import java.lang.Double;
public class rms
{
public static void main(String [] args)
{
// Create and set up window
}
}
// ******************* class rms_frame *******************************************
class rms_frame extends JFrame implements MouseListener, MouseMotionListener
{
public rms_frame()
{
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//VARIABLES TO CUSTOMIZE
//Graph variables
//purpose is to format correct point to graph panel
//pixel correction variable, this value adusts the position of the graph on
the screen.
//a lower value will result in a graph that is higher on the screen
//current value for y, basically here we are starting off currentY at zero
/ /Initialize variables value:
//current tank level
//equilibrium 'low' level
//equilibrium 'high level
//is the tank draining yet, after it reaches the 'high' equilibrium point,
drain yet variable will be set to 1
//once it then reaches the low equilibrium point it will be set to 0 again
//these values can be changed to change the display
//time per read in seconds
//in milliseconds, how often are we going through block of code
//maximum possible range of the y value, the range will be from 0 to this
number
//the rate at which water our 'leechfield' process effluent
//essentially this is the rate that water is leaving our septic system
//when multiplied by 100 this is a percent value of our tanks capcity
when this value is reached the caution warning is displayed to the screen
//when multiplied by 100 this is a percent value of our tanks capcity
when this value is reached the danger warning is displayed to the screen
//functions to implement:
//^^^^^^^^^^^^^^^^^^^^^^^^^
//set up icon and title
//Create and set up Content Pane in order
to add panels to the frame
// create the graphPanel
// create the information panel
// Set Initial Water Level in Tank
// create the button panel
// create exit event listener
// set the mouse listeners
// add buttons to panels and set event listeners
// tank pump button
// add the panels to the rms_panel
// start timer
}
private ActionListener taskPerformer = new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
// TESTING BY CHANGING meter_value
//meter_value assigned by calling readMeter();
//set currentY value, ...has there been a meter read?
//yreal stores the ml value of the current point
//as opposed to the value that is graphed
//this is neccesary because of the coordinate system that is used
in swing
//tell the information panel what the value of the current rate of flow
is
//IF THE CURRENT POINT IS MORE THAN THE MIN VAL ALLOWED
//then make the current value 0
//or in this mixed up coordinate system make it the max...
//correct currentY for the coordinate system in swing
//IF THE CURRENT POINT IS LESS THAN THE MAX VAL ALLOWED
//then make the current value the max value
//or in this messed up coordinate system max it 0...
//if you are over the equlibrium high point
//else if you are draining but need to stop draining
//else if you are draining and have yet to reach the equlibrium low
point
//else if you are not draining yet or at a point where you need to drain
//then add to the value that is in the tank
//if you are within cautionlevel% of capacity
//then set the caution flag
//if you are within dangerlevel% of capacity
//then set the warning flag
}
};
// Mouse Detection Functions
public void mouseClicked(MouseEvent e){
}
public void mousePressed(MouseEvent e){
//setMeter();
}
public void mouseReleased(MouseEvent e){
//setMeter();
}
}
}
public void mouseEntered(MouseEvent e){
}
public void mouseExited(MouseEvent e){
}
public void mouseDragged(MouseEvent e){
}
public void mouseMoved(MouseEvent e){
}
public void setMeter(){
}
//variables used above
private graphPanel gp;
private infoPanel ip;
private JPanel buttonPanel;
private int valmax, decrease_rate, delay, graph_offset;
private int drainyet, time;
private double total_in_tank, equlibriumhigh, equlibriumlow, currentY, yreal,
cautionlevel, dangerlevel;
private double oldYvalue, meter_value;
private Double tempusage;//this variable is simply used as a value holder for
variables of type Double
// Mouse Listening Variables
private int b2mask;
private boolean buttonDown ;
private long firstClick;
private long secondClick;
private long totalTime;
private JLabel statusBar;
}
// ***************** class ExitAction *************************************
class ExitAction implements ActionListener
{
public void actionPerformed( ActionEvent e )
{
// exits application
}
}
// ***************** class graphPanel ***************************************
class graphPanel extends JPanel
{
public graphPanel()
{
//initialize the three linked lists used in the class
//each linked list represents an x or a y coordinate to a particluar line
}
public void paintComponent(Graphics g)
{
//if the basic mode is chosen
//draw the axis
//draw the axis labels
//print out the graph
//if this is not the first point draw a line between the last and this point
//set currentYpoint value
//set oldYpoint value
}
}
}
//if graph button is on
//if time button is on
//if graph and time button are on
}
}
public void setPoint( double pointy)
{
//add information sent to gp into the arrays
//note that not all values are neccesary...maybe later i will take them out
//remove old values if they are no longer needed
call repaint();
}
//what type of display will we see
//this function will only be called for values between 2-4
public void set_text(int valuesent)
{
whichdispval=valuesent;
repaint();
}
public int get_display()
{
}
///variables
private double currentYpoint, oldYpoint;
private Double tempholder;
private int counter, max_points, offsetYaxis, increment_val;
private int whichdispval;
private LinkedList ylist;
}
// ******************* class infoPanel *******************************************
class infoPanel extends JPanel
{
//set up info panel
public infoPanel()
{
// set up Alert Panel
// set up flow rate information
// set up capacity level information
// set up total water
}
public void setFlow( double m )
{
}
public void setCapacityLvl( double c )
{
}
//set up alert levels
public void setAlert( int alert )
{
Alert Level: [ OK ]\n");
[ CAUTION ]\n");
[ DANGER ]\n");
}
public void setWaterLevel( double waterLevel )
{
}
private JPanel flowPanel;
private JTextArea mL_Text;
private JLabel alertLvl, capacity_Text;
private double mL, mL_aboveEquillibriumLow, mL_aboveEquillibriumHigh, totalWater,
mL_aboveEquillibrium;
private int DEFAULT_HEIGHT, DEFAULT_WIDTH;
}
D. Evaluate/Test
Code inspections will be used to evaluate the software code before official testing.
Testing will be performed as in a simulation environment.
Each test case should contain just one test objective for that area of testing.
Testing objectives:
Check input value validation by using a random generated numbers to mimic meter
values.
Check timing of meter reads
Check to see if all mathematics functions and equations give correct output
Check correctness of all variable values and if property used
Check to see if alert levels correspond correctly based on measurements
Test user menu functionality
II.
Interface (Hardware)
A. Design
The RMS system consists of the following hardware:
1. Two water meters equipped with pulse-code output to allow measurements per gallon.
2. PS2 port connection (modified mouse connection)
3. Display device
4. Power source
5. Installation accessories (wiring, embedded systems kits, tools and etc.)
The RMS system was designed so that there will be a water meter that connects to the
house main water supply line to measure the water intake for the home/building. The other meter
will be connected to the external water line where water does not leave the home and enter the
septic system. Each water meter will use a mouse PS2 port connection to interface it with the
display device. (***Refer to the functional diagram)
B. Build
The system will be built in three individual sub phases. The three sub phases are required
to integrate the hardware interface. First phase is to develop the PS2 port connections for each
meter. The circuit board in mouse will need to be removed and modified. A kit for embedded
systems will be used to burn the EPROM’s. Once the PS2 connections are developed then the
meter installation phase begin. Connect and mount to the meter to the intake pipeline. Then
connect the water meter for the intake line to a 120-volt power source. Next, mount and connect
the second meter to the external pipeline. Connect this meter to the power source. Once this is
finished the display device installation phase begins. First run the PS2 connections from the
installed water meters to connect to the port on the display device motherboard. Next, run the
necessary power supply and connect to the display device before mounting the display device to
the wall near the thermostat in the home/building.
C. Test
Test to check if PS2 connection is connected and works properly
Test to check if the meters are properly connected and powered
Test to check if the display device is powered
(To test the power connections use a voltage tester)
III.
Integration
A. Plan
Once the software has been tested by simulation and the hardware is all installed and
tested there is an integration process that will be performed. After the entire hardware interface
has been integrated and tested the software must be integrated with the hardware interface. The
hardware integration requires that the water meter integrate with the PS2 port of the device
display. The software will be installed on the display device so that it integrates with the water
meter through the PS2 port.
B. Test Plan
To test the system after full integration requires several months of testing in the
home/building environment. The main integration test plan concept is to test to see whether the
water meter is communicating correctly with the software. The test will focus first on whether or
not the water meter pulse signal is transmitted to the PS2 port. The next focus is whether the
software correctly reads that port on the motherboard. After those test objectives are confirmed
to be working correctly, then testing will be performed to check whether the meter is giving valid
meter read input values and that the software is reading those valid inputs correctly.
C. Identification of Problems
In the lab prototype development we have identified a propagation of error in accuracy
due the meter limitation of reads per liter. The prototype system was scaled down from the real
system, so it uses measurement on a milliliter scale. This is where the error in accuracy occurs.
In the real system the measurements are in gallons. The water meters have the capability of
producing a meter read every gallon, which will make the system accurate since no conversion is
required in the software.
D. Stress testing
Test the quality and tolerance of the hardware components.
Test temperature tolerance
Test fragile tolerance
Test the tolerance of intake water pressure
Test power source and power failure affects
IV.
Evaluation Plan
System Concept Reviews
• This is a review and approval of the recommended system concept configured to satisfy the
system requirements document.
The SCR is the decision point to proceed with the development of the system specification.
Technical Reviews
• Evaluates the direction taken in design, development, and testing of the project
• Includes System Design Review (SDR) and Critical Design Reviews (CDR)
Quality Reviews
• Evaluate the processes used by team members to perform tasks
• Evaluate deliverables for compliance with contractual requirements
• Recommend corrective and preventive actions if necessary
• Includes the Test Readiness Reviews(TRR) and Release Readiness Reviews(RRR)
Periodical Reporting
• Used to track progress of the project
Proven Methods and/or Procedures
Due to the prototype that the current RMS team has developed there is now a wealth of
knowledge that will be beneficial to future RMS designers. The analysis of the situations that came
about during the development of the prototype is therefore important to future development of the
production model of RMS as it will help future developers of the product avoid the same mistakes that
we made in the development.
In the evaluation of what we accomplished there are three key areas that will need to be
reviewed. The first of these areas is the software required for the RMS system. The second of these
areas is the physical hardware that was used on the prototype. A final critically important analysis of the
integration of both of these components will also be conducted.
Proven Method Objectives:
1.
2.
3.
4.
5.
6.
7.
I.
Provide Insight to the Sampling Rates
Define How Best to Test the System
Explain How we get a Signal
Explain How Water Rates can Affect the System
How Best to Graph
How we get Meter Updates in the Prototype
Explain Issues with Equilibrium and Drain Rates
Software
The initial software development for the RMS system seemed trivial so it is easy to understand
that anyone looking at this project may believe that the remaining software development is of a trivial
nature. This assumption however would be out of line as there is still a large amount of coding left to
do for the final project. In order to better show this an analysis of the existing software will help
those who are new to the RMS project gain an understanding of the inherent software’s complexity.
This study will look at in detail different parts of the software. Each of these critical elements to
the final design had unexpected problems occur with it.
A. Sampling Rates
The first part of the software to be analyzed is the rate at which it samples from the
hardware. The original design of the software called for the hardware to send a pulse every
second to the software. This pulse would then be converted into a milliliter per second value.
The problem with this however is that there is no hardware available on the market today
that will deliver such an output. The problem with the lack of proper hardware will be examined
in greater depth later. At this point only the software will be analyzed in depth. This change in
hardware in the system did change the requirements for the software drastically and decreased
accuracy because of how the software worked.
We were eventually able to overcome this difficulty by redesigning the software. The
software will now receive a pulse from the meter ever 15-60 seconds depending on how fast the
water is flowing through our system. In our prototype this causes for huge percent errors. The
good thing is that when this error will be transferred to the final RMS product the error will not
increase in size and will therefore decrease remarkably in the size of the percent error because of
the increased size of a real septic tank.
B. Testing Methodology
During the testing of the software the RMS team became aware of multiple intricacies in
the necessary design of RMS that we had not yet been anticipated. One of these additional
complexities was the complexity of a sewer system. Other testing issues came up because of the
inherent lack of accuracy in our system as described earlier.
We had not anticipated in our original software design a critical element to the design of
a septic system. Instead of there being a single point where the water starts and stops draining
there are indeed two separate points. This little complexity was easy enough to add into the
code. It is however another example of unexpected characteristics that the RMS system would
have to deal with in order to become an effective system.
The issues with the inaccuracy of the RMS software were not solved in the software even
after testing. With existing hardware however it is impossible to achieve any greater accuracy
than we already have done. However as explained before because the size of the septic system
will increase but the size of the error will not the inaccuracy that is inherent in the prototype will
not be problematic for the production version of RMS. This is simply because the percent error
will be miniscule.
II.
Hardware
The hardware for the RMS system gave us innumerable problems. All of the major problems
dealt with the meter that we used. The meter that we were able to find did not meet our initial criteria
for a meter. We were therefore forced to compensate through having less accuracy in the prototype.
A. Electronic Meter Interface
The problem that was the most difficult in terms of hardware was in getting the meter to
properly interface with the computer used in the prototype. Please see attachment 4 for an initial
design. This problem existed almost exclusively on the hardware side of the development of the
RMS prototype. This is not to say however that we did not have problems getting the software
to display useful results with the data, but that is a different issue.
Our original design, shown in
Figure 2, for an interface with the
computer involved a highly technical
understanding of electrical engineering.
The plan was to basically create the
hardware from scratch to use as a listening
and transmitting device between the meter
and the computer. The development of this
Figure 2
interface however proved to be too
complex to be able to be nailed down
perfectly. Given enough time the interface might have actually worked.
Luckily for us however after a
few weeks of developing the interface an
idea came to our hardware designer
(Figure 3).
This idea would greatly
simplify the interface and it would lose
none of the data that was being
transmitted by the meter. This idea was
Figure 3
rig a mouse, shown in Figure 4, so that each pulse of the meter was recorded by electrical signals
sent to the mouse and from the mouse to the computer.
This ingenious solution is something that we highly recommend any future developers of
RMS to use. That is we recommend that they use existing hardware wherever possible.
Figure 4
B. Throughput (speed) of Water
Another problem that we had during the prototype of RMS was the speed with which the
water flowed through the system. Since the meter that we use only records a pulse twice for
every liter of water that enters the system a fast flow of water is needed in order to accurately
show everything that RMS is capable of doing.
The RMS prototype however dealt with small amounts of water. On average it takes
about a minute seconds for a full liter of water to go through our system. That means we are
only getting data from the meter at an average rate of twice per minute. This in the production
version of RMS would obviously be unacceptable.
This error will not show up in the production version as prevalently however because of
once again the error of scale. By this I mean that while the size of the septic system will be
about 100 times larger than our prototype our data transmission rate, data sent per liter, will
remain the same.
This means that on average we can expect to get many more reads per minute because the
septic system user will rarely use small amounts of water that RMS will not instantly be able to
track. Even more importantly when they do only use a tiny amount of water we are not 100%
concerned with it because we are still recording the data it is just that the user will not receive
notice that it has been placed into the septic tank until a few seconds later. The RMS system is
not going to track the septic system within a few milliliters so such error is ok.
III.
Integration Notes
In integrating the software and hardware of the RMS system there was a good deal of problems.
The most serious of these problems dealt solely with the lacking qualities of the meter. Another
problem that we encountered when interfacing was getting an appropriate graph to show up.
A. Graph Plotting
There were problems in displaying the information correctly in the graph when we began
integration testing.
This was largely because the results given by the meter were not
approximated accurately before integration testing occurred.
Most of the troubles of displaying the correct information however was little things that
when taken together proved to be a huge deal. It took many hours of experimentation and data
collection, much more than we would have predicted. The results of all of this integration testing
have provided a robust prototype model of RMS.
B. Meter Updates
The meter specific integration issues that plagued us in the software and hardware side of
the prototype were the same issues that we encountered in integration of the two components.
Figure 5
C. Site Specific
i)
Equilibrium Variables
In the prototype, we had to simulate a 24 period by setting up two equilibrium states.
One high and one low to help the software simulate a real environment as shown in Figure 5.
The suction was provided by closing off a path for air to get through the top of the tee
connector. This has proven to be quite effective and helped to establish the drain rate for this
system.
ii)
Drain Rate
The drain rate for the prototype was found to vary depending on the level of water in
the tank. The higher the level of water, an increased drain rate was noted. The software system
would adjust for this situation.
Design Details
This section is to help answer detail oriented questions about the software and/or hardware.
Objectives in Design
1. Discuss the graphics plotting
2. Discuss the analysis engine
3. Set bounds on the user interface
4. Refine the Input modes and types
5. Discuss the Interface unit size and limitations
6. Embedded System Board
7. Discuss the display
8. What the meter requires for normal operation
9. Interfacing issues
I.
Software
The final RMS Septic Monitoring System’s software will have increased functionality and bounds
checking from that of the prototype. Snippets of code from the prototype software may be used for
illustration purposes. This is to give a reference and an outline only. The implementation details are left
to the software development team.
A. Graph Plotting
The plotting of the graphics will directly represent that of the meter indication based on
the currently selected Graph Type. Points plotted on the graphics unit are subject to change
based on the math engine. This is to ensure an accurate representation of historical data based on
new inputs.
The prototype code at this point does not provide this functionality. Implementation of
this code will be done via a new function call within the software of the graphics layer. The call
should be similar to CubicSpline(). This function will pull the last two history values along with
the current value and determine the best fit polynomial. Figure 6 is a Mathcad version of the
algorithm that is provided. This should directly translate to C++/Java.
For further explanation please refer to the text Numerical Analysis by Burden and Faires
on page 146.
NCS ( x  a) 
n  ro ws( x)  1
fo r i  0  1  n  1
hi  xi1  xi
fo r i  1  2  n  1
i 
if
n  1
3
3
 ai1  ai 
 ai  ai1
hi
hi1
l0  1
0  0
z0  0
fo r i  1  2  n  1
if
n  1
li  2  xi1  xi1  hi1  i1
i 
zi 
hi
li
 i  hi1 zi1
li
ln  1
zn  0
cn  0
fo r
j  n  1  n  2  0
c j  zj   jc j1
bj 
dj 
(a
b
c
a j1  a j
c j1  2 c j
 hj
hj
3
c j1  c j
3 hj
d)
Figure 6
B. Mathematical Analysis
The mathematical analysis will be primarily responsible for the determination of volume within
the septic tank based on input from the main water line and usage characteristics of the users
within the house. One way to determine tank levels will be to use Simpson’s Rule in determining
total water usage. Figure 7 represents the basic formula.
b = t0
a = t0-1
n=2
 n

 2

ba 
b  a
b  a 




S ( f  a  b  n) 

 4 f  a  ( 2 k  1) 
   2 f  a  ( 2 k) 
   f ( a)  f ( b)

3 n 
n 
 
 n 

k  1


Figure 7
C. User Interface Layout
The user interface layout has been well defined in section I.A.iii) with both user and initial
installation. See attachment 2 for all screens covered for the main menu. For the general layout,
use the skeleton code from the RMS prototype.
// create the graphPanel
gp = new graphPanel();
Border border;
TitledBorder titled;
titled = BorderFactory.createTitledBorder("RMS Graphical Display");
gp.setBorder( titled );
contentPane.add( gp, BorderLayout.CENTER );
// create the information panel
ip = new infoPanel();
titled = BorderFactory.createTitledBorder("RMS InfoPanel");
ip.setBorder( titled );
contentPane.add( ip, BorderLayout.EAST );
//enter menu layout and attributes here within rms_frame
D. Input
Most issues concerning input have been covered. We want to provide some final notes
about aesthetics and being user friendly with respect to installation mode, user mode, and the
meter interface menu.
i)
Installation
The installation menu should be a one time, first install menu. There is an option to go
to this menu through the Config… option under Mode in the main menu. The installation
option should be password protected. Choosing this option will reset the system based on
option input from the user.
ii)
User
User mode of the system is the continuous mode of the RMS Monitor. This will
provide full analysis functionality and provide the user with various display options of the
indicated data. Leaving the user mode will not guarantee protection of historical data. This is a
software implementation issue that should be considered by the development team. If the user
goes to an installation mode, the user mode data should be destroyed. For options such as
adding a meter, the historical data should be preserved.
iii)
Meter
Meter input to the system is facilitated by the MouseListener of the Java programming
language. This is done by tracking the PushButton and ReleaseButton of the mouse. Using a
three button mouse, we can attach three meter simultaneously. We do this by determining what
button was doing the action in the MouseListener. The following code is of PushButton and
ReleaseButton within the MouseListener event.
public void mousePressed(MouseEvent e){
if((e.getModifiers() & b2mask) == b2mask){
firstClick = e.getWhen(); //time value at meter
buttonDown = true;
//setMeter();
if(firstClick != 0 && secondClick !=0){
if(firstClick - secondClick <= 0)
meter_value = 600.00;
else
meter_value = (double)((600.00) / ((firstClick secondClick)/1000.00));
}
}
}
public void mouseReleased(MouseEvent e){
if((e.getModifiers() & b2mask) == b2mask){
secondClick = e.getWhen(); //time value at meter
totalTime = secondClick - firstClick;
buttonDown = false;
//setMeter();
if(totalTime > 0){
if(secondClick - firstClick <= 0)
meter_value = 400.00;
else
meter_value = (double)((400.00)/((secondClick firstClick)/1000.00));
}
}
}
II.
Liquid Crystal Display Interface Unit
For the RMS prototype, the interface unit of the system had been researched but not
implemented. It will be the responsibility of the RMS development team lead by the electrical
engineer to develop a working model based on the guidelines set forth in this document. Price must
be kept to that defined in the Budget Whitepaper for the interface unit.
A. Unit Requirements and Size Limitations by Part
This section will detail information learned and give limitations to the items used for the
motherboard, central processing unit, RAM, display, and power.
i)
Motherboard
This will be the heart of the embedded computer. The defined unit of choice by the
RMS team is the Advanced 486Mhz PC/104 Embedded PC part number SBC1490. The data
sheet for this item is located in the Manufacturers Data Sheet #2. The embedded pc provides
the IO and upgrade ability required.
(a)
I.O. Subsystem
The most important part of the IO subsystem is the serial/PS/2 mouse interface. This
is how the RMS monitor gets the values of the meters. This board provides one PS/2 port
and two serial ports. This will give RMS the ability to provide up to nine meters on one
system. The basic system will be two, but there is room for upgrade ability.
(b)
Upgrade Ability
Upgrade ability give RMS an edge in today’s market. We provide a basic system
and offer upgrades to the system. The type of upgrades can be in both hardware and
software. The hardware upgrades could be as simple as adding a new meter. The software
upgrades could be in a new interface or an updated mathematics engine. By designing the
system with upgrades in mind, we can extend the lifecycle of the RMS Septic Monitoring
System.
ii)
Central Processing Unit (CPU)
The central processing unit for the RMS monitor will be at lease a 386Mhz with a math
co-processor. This is the minimum requirement for proper operation of the system. There is no
upper-bound on processing speed. The upper-limit will be a function of funds.
iii)
Random Access Memory (RAM)
Random Access Memory for the RMS Monitor will have a minimum of 16Mbytes for
storage of an embedded version of Linux and the RMS Operating program. The upper-bound
of RAM is the same as the CPU.
iv)
Liquid Crystal Display (LCD)
The chosen LCD display by the RMS team is the F-51161NCU-FW-AA provided by
Optrex Corp.. See manufacturer data sheet 3 for details of this display device. The general
requirements of the display device is to provide the proper level of resolution for the graphic
subsystem. The display must be in color and have dimensions around 250x150. If the RMS
Interface goes into cost overruns, the display can be adjusted to a monochrome, backlit device.
This option should be the last of considerations.
The display must also go into a blank condition after a five minute period of inactivity.
This will add to the life of the LCD and not attract attention all the time. During a Red Alert
status, the LCD should stay active until a lesser alert status arrives.
v)
Power
The power to the RMS Monitor is 115VAC. A power adapter will have to provide +/- 5
volts DC and +/- 12 volts DC. This can either be a custom power supply using a step-down
transformer or COTS (Commercial Off The Shelf) equipment.
B. Meter Requirements and Size Limitations
i)
Manufacturer
The manufacturer of the RMS meters will be DLJ meters. These have been proven to
provide the functionality that the RMS system requires.
ii)
Pulse Code
All meters implemented in the final product will be tested for pulse-code duration and
maximum water handling rate. If differences are noted, the software will have to compensate
for different meters.
iii)
Units
Units for meters will be of three possibilities. The different meter types the RMS
system will handle are US Gallons, Liters, and Cubic Meters. The code for the software will be
developed so that the implementation of this feature will be simple for the user to change.
iv)
Location
The location of the main water meter will be after the main shutoff valve to the house
and before division of water lines occur to the house. The second water meter will be place
inline with the pipe feeding an outside water spout. This meter will be before the valve on the
outside of the structure.
v)
Mounting
Mounting of the DLJ water meters will be in either a horizontal or vertical position and
stabilized with mounting brackets at the water pipe connections. This will assure accuracy in
water measurements.
C. Hardware Interfacing
i)
Cable Length Limitations
The length of cable to each meter should be no longer than 250 feet. This is to reduce
the possibility of signal loss to the RMS Monitor.
If given an improper indication, the
mathematics engine will throw a flag to the system that something is wrong. This will be
displayed as text on the status bar. If given this indication after installation. The RMS
interface unit will have to be repositioned within the structure.
ii)
Mouse Card
The mouse used in the prototype was a GE mouse with a cost of $5 dollars. If a
supplier of the mouse circuit board cannot be found, we recommend taking the circuit board out
of purchased GE mice and install into the RMS Monitor. This is a low cost solution that will
allow three mouse circuit boards to be connected to the embedded computer at one time.
This concludes the Design Details section of the RMS Specifications document.
The
information contained within this document should provide a roadmap to the full scale production of the
RMS Septic Monitoring System. The following is a parts list of required installation items.
Parts List
Quantity
1
1
1
1
1
1
2
200’
Item
Case
Meter and Case Mounting Hardware
486Mhz Embedded Computer (SBC1490)
LCD/Keyboard Interface (MPC201)
LCD display (F-51161NCU-FW-AA)
Mouse Circuit Board
DLJ Water Meters (DLJSJ50C)
Meter Cable
Attachment 1
Attachment 2
Attachment 3
Attachment 4
Attachment 5
Manufacturers Data Sheets
Download