100% found this document useful (1 vote)
1K views117 pages

DESIGN AND FABRICATION OF AUTOMATIC SOIL SIEVE SHAKER English Critic

1. A group of civil engineering students at Tarlac State University fabricated an automatic soil sieve shaker to improve the soil testing process. 2. Through experimentation, they found that the automatic sieve shaker was more efficient than manual sieving, retaining more soil mass in less time. 3. Different shaking modes - tilting, rotating, and a combination - were tested, with results showing a linear relationship between shaking time and retained soil mass.

Uploaded by

Glenn Frey Layug
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
1K views117 pages

DESIGN AND FABRICATION OF AUTOMATIC SOIL SIEVE SHAKER English Critic

1. A group of civil engineering students at Tarlac State University fabricated an automatic soil sieve shaker to improve the soil testing process. 2. Through experimentation, they found that the automatic sieve shaker was more efficient than manual sieving, retaining more soil mass in less time. 3. Different shaking modes - tilting, rotating, and a combination - were tested, with results showing a linear relationship between shaking time and retained soil mass.

Uploaded by

Glenn Frey Layug
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 117

Republic of the Philippines

Tarlac State University


COLLEGE OF ENGINEERING AND TECHNOLOGY
Department of Civil Engineering
Tarlac City, Tarlac

APPROVAL SHEET

This project study entitled, DESIGN AND FABRICATION OF AUTOMATIC SOIL


SIEVE SHAKER, prepared and submitted by JOSEPHINE S. CEBALLOS, SCOTT
JORDAN M. CHALWANGCO, CHRISTIAN G. DUENAS, JENWIN UNICH M.
FERNANDO, GAIL ANDREA E. PUGAT, MYRA BERNADETTE G. VALLENTE
in partial fulfillment of the requirement for the degree BACHELOR OF SCIENCE IN
CIVIL ENGINEERING in CE Research Project, has been examined and recommended
for acceptance for oral examination.

ENGR. YOSHIO L. OTSUKA


Project Study Adviser

PANEL OF EXAMINERS
Approved by the committee on oral examination with the grade of ____.

ENGR. RANDY G. POLICARPIO


Committee Chair

DR. MURPHY P. MOHAMMED ENGR. CONSOLACION S. LAGMAN

ENGR. MARIE WENDY J. FRANY ENGR. EDWIN L. DELA VEGA

ENGR. LEONIDES A. TATU ENGR. KAREN JOY L. CERVANTES

Accepted and approved for the partial fulfillment of the requirement for the
degree in Bachelor of Science in Civil Engineering.

ENGR. CAMILO R. RIVERA DR. MIRIAM S. GALVEZ


Chairperson, CE Department Dean, College of Engineering and Technology

i
Republic of the Philippines Tarlac State University College of
Engineering and Technology
DEPARTMENT OF CIVIL ENGINEERING
Tarlac City

DESIGN AND FABRICATION OF AUTOMATIC SOIL SIEVE SHAKER

A project study in CE 521/522 L


Presented to the Civil Engineering Faculty

In partial fulfillment of the Requirements for the


Degree of Bachelor of Science in Civil Engineering

Submitted by:
CEBALLOS, Josephine S.
CHALWANGCO, Scott Jordan M.
DUENAS, Christian G.
FERNANDO, Jenwin Unich M.
PUGAT, Gail Andrea E.
VALLENTE, Myra Bernadette G.

Submitted to:

Engr. Randy G. Policarpio


CE Research Instructor

ii
ACKNOWLEDGEMENT

The proponents owe their wholehearted gratitude and appreciation to several

individuals for this project study would not have been possible without the guidance and

the help who in one way or another contributed and extended their valuable assistance in

the preparation and completion of this study.

Engr. Randy G. Policarpio, their project study instructor, for giving them helpful

ideas on this project study, motivating encouragement, and for his continuous support he

had given to their group. Also, for helping them during the research and for giving them

the determination to finish this project study;

Engr. Yoshio L. Otsuka, their project study adviser, for the guidance and

knowledge and support to their group, for his patience, for his generosity for lending them

numerous soil laboratory equipment and letting them use the soil laboratory, and for his

broad knowledge on the concepts regarding things about Soil Experiments;

Engr. Marie Wendy J. Franny, for advising and demonstrating the application of

statistical treatment to their gathered data;

Engr. Aldrin Joar Taduran, for his knowledge on Arduino and other electrical

related things;

iii
Engr. Fernando Lacsina and Engr. Don Loiue A. Sanvictores, for helping

them in their design and mechanism about their apparatus;

Engr. Antonio Bautista, for lending them laboratory equipment and allowing

them to conduct laboratory experiments in the Department of Public Works and

Highways;

Engr. Consolacion S. Lagman, for commenting on an earlier version of the

manuscript;

Mr. & Mrs. Ferdinand Pugat, Mrs. Prima Ceballos, Mr. & Mrs. Edgardo

Duenas, and Mr. and Mrs. Gener S. Chalwangco, and their family for supervising and

hosting their group during day and night work doing their project study in their houses

and for preparing food to boost their energy;

To our parents, sisters, brothers, and friends, for their unending support,

extensive kindness and broad understanding regarding our needs in preparing our project

study.

iv
DEDICATION

We dedicate this research our most beloved people, our parents:

Mr. and Mrs. Prima S. Ceballos

Mr. and Mrs. Gener S. Chalwangco

Mr. and Mrs. Edgardo C. Duenas

Mr. and Mrs. Edwin D. Fernando

Mr. and Mrs. Ferdinand A. Pugat

Mr. and Mrs. Loreto R. Vallente

Lastly, to God, the almighty, for giving us overflowing blessings, strength, good health,

and determination to finish our study, and to explore beyond our limits.

“I can do all things through Christ who strengthens me”

Philippians 4:13

v
ABSTRACT

TITLE OF THE STUDY: FABRICATION OF AUTOMATIC SOIL SIEVE SHAKER

RESEARCHERS:
CEBALLOS, JOSEPHINE S.
CHALWANGCO, SCOTT JORDAN M.
DUENAS, CHRISTIAN G.
FERNANDO, JENWIN UNICH M.
PUGAT, GAIL ANDREA E.
VALLENTE, MYRA BERNADETTE G.

DEGREE: BACHELOR OF SCIENCE IN CIVIL ENGINEERING

SIGNIFICANCE OF THE STUDY:


By successfully fabricating the Automatic Soil Sieve Shaker, the school will have an
additional apparatus in its soil laboratory. Students practicing the sieve process and
studying sieve analysis and its significance on other experiments will be much easier as it
offers lesser work since the apparatus can do its purpose faster and unattended with just a
click of the buttons

Since the instrument will be donated to Tarlac State University after the research study,
engineering students will have an additional apparatus to use in laboratory tests and
experiments for their subjects like Soil Mechanics and Construction Materials.

vi
SIGNIFICANCE OF THE STUDY:

This Study aims to:

1.) To Develop and Fabricate an Automatic Soil Sieve Shaker Apparatus that specifically

aims to:

 Validate the functionality of the fabricated apparatus.

 Determine the Optimum Time required for shaking using different modes of

movement.

o Tilting

o Rotating

o Tilting and Rotating

RESEARCH DESIGN AND METHODS

This study involves descriptive method of research focuses on the features and

properties of fabricated automatic soil sieve shaker. An experimental method of research

was applied to determine the optimum time required for shaking using different modes of

movement like Tilting, Rotating and combination of Tilting and rotation. These

movements helped the researchers achieve the objectives of the study. The researchers

conducted trials of testing not only with the Fabricated Apparatus but also the Manually

Operated Sieve Shaker and another Automated Sieve Shaker for comparison of result.

vii
SUMMARY OF FINDINGS:

1. The Automatic Soil Sieve Shaker has successfully been fabricated.

2. Using the paired difference t-test and tested at 0.05 level of significance, the

researchers found out that the mass retained in the fabricated apparatus is greater than

the manually operated sieve shaker.

3. In the gradation testing that the researchers conducted using the fabricated automatic

soil sieve shaker by different modes of movement, results showed that there is a

significant linear relationship between the predictor variable(time) and the response

variable (mass retained). Pearson’s r and Linear Regression was used in validating the

results.

4. The total project cost was Php 33,298.00 which is subject to increase if further

improvements are to be made on the apparatus.

CONCLUSIONS:

1. There was a linear relationship between the mass retained (response variable) and time

(predictor variable).

2. The use of fabricated automatic soil sieve shaker resulted to a more convenient and

less-time consuming procedure of sieve analysis/gradation test in comparison with the

use of the manually operated sieve shaker.


viii

RECOMMENDATIONS:

Base on the finding of this study and conclusion drawn above, the following

recommendation made:

1. Innovate the existing apparatus and make it more convenient to carry or transport from

one place to another.

2. The researchers also recommend the use of vibrational sieving in laboratory sieve

shaker which creates a rapid circular movement and a vertical throwing motion. This

mechanism causes the particles to be more uniformly distributed across the entire

sieving surface. Moreover, this enables them to be compared to the sieve apertures in

all probable dimensions as being thrown into the air where they ideally change their

orientation.

3. To guarantee a high degree of reproducibility and reliability, sieve shakers and

accessories have to fulfill the requirements of national and international standards.


ix
CONTENTS

APPROVAL SHEET.......................................................................................................... i

TITLE PAGE..................................................................................................................... ii

ACKNOWLEDGEMENT........................................................................................... iii-iv

DEDICATION ................................................................................................................... v

ABSTRACT................................................................................................................... vi-ix

LIST OF FIGURES AND TABLES:

Fig. 1 Manual Operated Sieve Shaker ............................................................................... 6

Fig. 2 Manual Operated Sieve Shaker in DPWH .............................................................. 7

Fig. 3 Automatic Sieve Shaker in DPWH ......................................................................... 7

Fig. 6 Dimensions ............................................................................................................ 15

Fig. 7 Front View ............................................................................................................ 16

Fig. 8 Back View ............................................................................................................. 17

Fig. 12 Block Diagram .................................................................................................... 22

Fig. 13 Schematic Circuits Diagram ............................................................................... 23

Fig. 15 3D Illustration..................................................................................................... 25
Table 3. Table for the average mass retained results obtained from the Fabricated

Automatic Soil Sieve Shaker, the mode of movement is the

combination of rotation and

tilt........................................................................................................................ 32

Table 3.1 Table for the average mass retained results obtained from the Fabricated

Automatic Soil Sieve Shaker, the mode of movement

is rotation only.................................................................................................. 33

Table 3.2 Table for the average mass retained results obtained from the

Fabricated Automatic Soil Sieve Shaker, the mode of

movement is tilt only......................................................................................... 33

Table 4. Table for the average mass retained results obtained from the

Manually Operated Sieve Shaker, the mode of

movement is tilt only......................................................................................... 34

CHAPTER 1: INTRODUCTION............................................................................ ....... 1

Statement of the Problem.................................................................................................. 3

Significance of the Study.................................................................................................. 4

Scope and Delimitation..................................................................................................... 4

Definition of Terms........................................................................................................... 5
CHAPTER 2: REVIEW OF RELATED LITERATURE AND STUDIES.................. 6

CHAPTER 3: METHODS OF THE STUDY AND SOURCES OF DATA................ 15

Research Design and Methods ......................................................................................... 15

Modification of Soil Sieve Shaker ................................................................................... 15

Parts and Dimensions of the Apparatus............................................................................ 16

Test Procedure.................................................................................................................. 27

CHAPTER 4: PRESENTATION, ANALYSIS AND INTERPRETATION OF DATA

............................................................................................................................................ 33

CHAPTER 5: SUMMARY OF FINDINGS, CONCLUSIONS AND

RECOMMENDATION .................................................................................................. 50

Findings ........................................................................................................................... 50

Conclusion ....................................................................................................................... 51

Recommendation.............................................................................................................. 51

BIBLIOGRAPHY.............................................................................................................. 53

APPENDICES ................................................................................................................. 54
Chapter 1

THE PROBLEM AND ITS BACKGROUND

Introduction

The concept of sieve shaking began from ancient Egyptians as they sieve grains as

part of their living. It was then considered as the backbone of particle size technology.

Throughout its history, sieving has been deployed in many fields (mostly used for grading

grain). As sieving was introduced to industry, volumes of diverse specifications emerged.

Specifications naming frame construction and mesh sizes began to proliferate.

These pre-requisite set parameters for sieve types. Sieving’s continuing popularity

is due to the technique’s fundamentally simple principle, methodology, historical

reference and cost effectiveness. Later instructions for manually sieved grain became more

detailed and the following processes are now being prescribed by ASTM.

Sieve Analysis or Gradation Test is a procedure used to access the particle size

distribution of granular materials (mostly Sand or Gravels) and the fineness modulus of

aggregates. Concrete mix designs can be influenced by the size of aggregates to be used.

Particle size distribution, also known as gradation, is used to classify soils for engineering

and agricultural purposes, since particle size influences how fast or slow water or other

fluid moves through a soil.

A sieve analysis (or gradation test) is a practice or procedure used (commonly used

in civil engineering) to assess the particle size distribution of a granular material by

allowing the material to pass through a series of sieves of progressively smaller mesh size

1
and weighing the amount of material that is retained by each sieve as a fraction of the

whole mass.

The size distribution is often of critical importance to the way the material

performs in use. A sieve analysis can be performed on any type of non-organic or organic

granular materials including sands, crushed rock, clays, granite, coal, soil, a wide range of

manufactured powders, grain and seeds, down to a minimum size depending on the exact

method. Being such a simple technique of particle sizing, it is probably the most common.

A gradation test is usually performed on a sample of aggregate in a laboratory. A

typical sieve analysis involves a nested column of sieves with wire mesh cloth (screen). A

representative weighed sample is poured into the top sieve which has the largest screen

openings. Each lower sieve in the column has smaller openings than the one above. At the

base is a round pan, called the receiver.

Sieve Shaker is an instrument/equipment used to provide motion to a sample in a

test sieve. The column of sieves is typically placed in a sieve shaker. The shaker shakes

the column, usually for some fixed amount of time. After the shaking is complete, the

material on each sieve is weighed. The mass of the sample of each sieve is then divided by

the total mass to give a percentage retained on each sieve. The size of the average particle

on each sieve is then analyzed to get a cut-off point or specific size range, which is then

captured on a screen.

2
STATEMENT OF THE PROBLEM

In the subjects like Soil Mechanics and Construction Materials of the fourth year

students here in Tarlac State University, students are required to perform various

laboratory tests and experiments. Most of those requires sieve analysis in order to perform

those experiments. However, it takes a lot of time and effort in performing sieve analysis

without an apparatus.

The school currently has 2 apparatuses, one is manually operated and the other is

an automated sieve shaker, yet these apparatuses have lost most of its parts. Therefore, by

fabricating an Automated Soil Sieve Shaker, the school will have an additional apparatus

in its soil laboratory.

This Study aims to:

1. To Develop and Fabricate an Automatic Soil Sieve Shaker Apparatus that specifically

aims to:

 Validate the functionality of the fabricated apparatus.

 Determine the Optimum Time required for shaking using different modes of

movement.

o Tilting

o Rotating

o Tilting and Rotating

3
SIGNIFICANCE OF THE STUDY

By successfully fabricating the Automatic Soil Sieve Shaker, the school will have

an additional apparatus in its soil laboratory. Students practicing the sieve process and

studying sieve analysis and its significance on other experiments will be much easier as it

offers lesser work. Moreover, the apparatus can do its purpose faster and unattended with

just a click of the buttons. The following specifications and features are implemented

under the supervision of Engr. Yoshio Otsuka, Engr. Aldrin Taduran, Engr. Don

Sanvictores, Engr. Fernando Lacsina and Engr. Gener Chalwangco.

Since the instrument will be donated to Tarlac State University after the research

study, engineering students will have an additional apparatus to use in laboratory tests and

experiments for their subjects like Soil Mechanics and Construction Materials.

SCOPE AND DELIMITATION

The study focused on designing and developing a sieve shaker that improves the

effectiveness of the sieve process. The sieve shaker offers a variety of features like

Selector Switch for the control of Speed and Digital Timer to set how long the sieving

process is. Since it is automated, it is expected that the results are consistent. It can lift up

to 10 sieves depending on what mode of speed will be used. Most of the features of the

apparatus are implemented under the guidance of the Mechanical and Electronic parts of

the instrument.

4
The apparatus has two platforms; the bottom part is to provide a tilting movement

while the upper part is to provide a rotation movement to properly sieve the soil. If

maintenance is required, most of its parts can easily be unplugged.

DEFINITION OF TERMS

Sieve Analysis - is the procedure used to access the particle size distribution of granular

materials (mostly Sand or Gravels) and the fineness modulus of aggregates.

Soil Mechanics - is the study about the properties and behaviour of soil.

Construction Materials - is the study of materials and apparatus used in construction.

American Society for Testing and Materials (ASTM) - is an international standards

organization that develops and publishes voluntary consensus technical standards for a

wide range of materials, products, systems, and services.

Fineness Modulus Aggregates - which is generally measured in percentage helps in

finding maximum amount of aggregates lying in one particular size of sieve of given total

aggregate.

Silt - is the granular material of a size between sand and clay. Silt may occur as a soil

(often mixed with sand or clay) or as sediment mixed in suspension with water.

Sand - is the granular material composed of finely divided rock and mineral particles. It is

defined by size, being finer than gravel and coarser than silt.

Gravel - is the loose aggregation of rock fragments.

Mesh - is a material made of network wire or thread.

5
Chapter 2

REVIEW OF RELATED LITERATURE AND STUDIES

This chapter enumerates the different related studies and literature that can be used

as inspiration and reference for this study.

Existing Manually Operated Sieve Shaker in Tarlac State University

The Tarlac State University has an available Manual Operated Sieve Shaker for

students to use. It can fit a maximum of 7 sieves and it is operated by manually spinning

the handle.

Fig. 1 Manual Operated Sieve


Shaker in TSU

6
Existing Manually Operated Sieve Shaker in the DPWH

The Department of Public Works and Highways has a Manual Operated Sieve

Shaker mainly used for testing and comparison. It is identical to the Manual Operated

Sieve Shaker that the Soil Laboratory of Tarlac State University owns. It can also fit a

maximum of 7 sieves and it is operated by manually spinning the handle.

Existing Automatic Sieve Shaker in the DPWH

The Department of Public Works and Highways also has an Automated Sieve

Shaker. It can fit a maximum of 8 sieves and it is operated by setting up the duration of the

sieve process and pressing the start button.

Fig. 2 Manual Operated Sieve Shaker Fig. 3 Automatic Sieve Shaker in


in DPWH DPWH

7
Laboratory Sieve Shaker

The Laboratory Sieve Shaker will quickly and efficiently size laboratory products,

thus allowing the determination of various important treatment factors. Results of sizing

tests and analyses of sized products will determine such important factors. (L D Michaud)

Automatic Sieve Shaker for determining Soil Aggregate Stability and Dimension

using a Vertical Oscillation System.

The Author has developed an original model of automatic sieve-shaker using a

vertical oscillation system. It aim to use the device in determining the soil aggregate

stability and dimensional distribution. According to Dell’Aquilla R., the proposed sieve-

shaker with the introduction of some innovations realizes the submersion and levelling of

the soil samples using a lifter to support the containers with the water. The purpose of this

note is to describe the construction and performance of the prototype currently used in the

Laboratory for the Soil Structure Study of the ISAFOM – CNR.

Motor-Operated Sand Sifter

The study developed a motor operated-sand sifter. It described the main features of

the equipment in the aspect of preparation, design, materials and cost, procedure of

assembly and operation and parts and functions of the equipment. An experimental

research method was used, a employing the actual assembly and direct observation of the

performance of the equipment. The study was conducted in Bohol Island State University,

where selected mechanical engineering students did the actual testing with the supervision

of the researchers. The results were based on actual observation and data gathered during

the experiment. The kind of sand sifted was 87.30% passing by volume through the sifter.

8
The fine aggregates comprise 87.30% of the total mixture while the bigger sizes comprise

12.70% of the total mixture. The bigger sizes of sand that remained in the sifter are

removed automatically passing through the sifter opening. It was concluded that motor-

operated sand sifter was very efficient in sand sifting as compared to manually operated

sand sifter. (Juanito M. Origines Jr., Anacleta K. Perez, Dario Gawala)

The particle size analysis of a soil sample involves determining the percentage by

mass of particles within the different size ranges. The particle size distribution of a coarse

soil can be determined by the method of sieving. The soil sample is being passed through

a series of standard test sieves having successively smaller mesh sizes. The mass of soil

retained in each sieve is determined and the cumulative percentage by mass passing each

sieve is calculated. (R. F. Craig, Craig’s Soil Mechanics 7th Edition, p.6)

The distribution of particle sizes or average grain diameter of coarse-grained soils-


gravels and sands- is obtained by screening a known weight of the soil through a stack of
sieves of progressively finer mesh size.

Each sieve is identified by either a number that corresponds to the number of


square holes per linear inch of mesh or the size of the opening. Large sieve (mesh)
openings (25.4 mm to 6.35 mm) are designated by the sieve opening size, while smaller
sieve sizes are designated by numbers. The particle diameter in the screening process,
often called sieve analysis, is the maximum dimension of a particle that will pass through
the square hole of a particular mesh. A known weight of dry soil is placed on the largest
sieve (the top sieve) and the nest of sieves is then placed on a vibrator, called a sieve
shaker, and shaken. The nest of sieves is dismantled, one sieve at a time. The soil retained
on each sieve is weighed, and the percentage of soil retained on each sieve is calculated.
The results are plotted on a graph of percent of particles finer than a given sieve size (not
the percent retained) as the ordinate versus the logarithm of the particle sizes. The
resulting plot is called a particle size distribution curve or, simply, the gradation curve.

9
Let Wi be the weight of soil retained on the ith sieve from the top of the nest of sieves and
W be the total soil weight. (Muni Budhu, Soil Mechanics and Foundations 3rd Edition,
2011, p.5)

Mi
% retained on ith sieve= ×100
M

The percent weight retained is


i
% finer thanith sieve=100−∑ (% retained on ith sieve)
i=1

THE SOFTWARE/PROGRAM

Arduino

Arduino has been an emerging open-source electronics platform based on easy-to-

use hardware, and software, designed to be used by beginners in programming and

electronics. Arduino boards are able to read inputs - light on a sensor, a finger on a button,

or a Twitter message - and turn it into an output - activating a motor, turning on an LED,

publishing something online.

The researcher’s apparatus need this kind of technology or an application that will

read inputs by incorporating timer that can work through the use of Arduino

Microcontroller. This will be accomplished by dictating the board what to do through

sending a set of instructions to the microcontroller. This would work using its programming

language with the proper setup and wirings.

Over the years, Arduino has been the brain of thousands of projects- from

10
everyday objects to complex scientific instruments. A worldwide community of makers -

students, hobbyists, artists, programmers, and professionals - has gathered around this

open-source platform. Their contributions have added up to an incredible amount of

accessible knowledge that can be of great help to novices and experts alike.

Arduino was born at the Ivrea Interaction Design Institute as an easy

tool for fast prototyping, even for students without a deep background in

electronics and programming. As soon as it reached a wider community, the

Arduino board started changing to adapt to new needs and challenges,

differentiating its offer from simple 8-bit boards to products

for IoT applications, wearable, 3D printing, and embedded environments. All

Arduino boards are completely open-source, empowering users to build them

independently and eventually adapt them to their particular needs. (Arduino

Website, Introduction, 2019)

Here are the components of the researchers Arduino product:

11
Fig. 4 Ardruino UNO Microcontroller

Arduino Uno Microcontroller - is a microcontroller board based on the ATmega328P

(datasheet ). It has 14 digital input/output pins (of which 6 can be used as PWM outputs),

6 analog inputs, a 16 MHz quartz crystal, a USB connection, a power jack, an ICSP

header and a reset button. It contains everything needed to support the microcontroller;

simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or

battery to get started.

Technical Specifications:
 Microcontroller: ATmega328
 Operating Voltage: 5V
 Input Voltage (recommended limits): 7-12V,6-20V
 Digital I/O Pins: 14 (of which 6 provide PWM output)
 Analog Input Pins: 6
 DC Current per I/O Pin: 40 mA
 DC Current for 3.3V Pin: 50 mA
 Flash Memory: 32 KB of which 0.5 KB used by bootloader
 SRAM: 2 KB (ATmega328)
 EEPROM: 1 KB
(ATmega328),
Clock Speed
16mhz

12
Fig. 5 Ardruino MEGA Microcontroller)

Arduino Mega Microcontroller – the 2nd brain of our set-up. Arduino Mega is a

microcontroller board based on the ATmega2560 (datasheet). It has 54 digital input/output

pins (of which 15 can be used as PWM outputs), 16 analog inputs, 4 UARTs (hardware

serial ports), a 16 MHz quartz oscillator, a USB connection, a power jack, an ICSP header

and a reset button. It contains everything needed to support the microcontroller; simply

connect it to a computer with a USB cable or power it with an AC-to-DC adapter or

battery to get started. The Mega board is compatible with the most shields designed for the

Uno and the former boards.

Technical Specifications:

 Microcontroller: ATmega2560
 Operating Voltage: 5V
 Input Voltage (recommended & limits): 7-12V,6-20V
 Digital I/O Pins: 54 (of which 15 provide PWM output)
 Analog Input Pins: 16
 DC Current per I/O Pin: 40 mA
 DC Current for 3.3V Pin: 50 mA
 Flash Memory: 256 KB of which 8 KB used by bootloader
 SRAM: 8 KB (ATmega2560)
 EEPROM: 4 KB (ATmega2560), Clock Speed 16mhz

Research Paradigm

13
INPUT PROCESS OUTPUT

1. Characteristics 1. Design and fabricate an A more convenient


and properties of the improved automatic soil sieve sieve shaker
existing sieve shaker shaker apparatus apparatus
apparatus
2. Test fabricate automatic
soil sieve shaker apparatus by
its:
2. Design
conceptualization of a. functionality based on
the fabricated the devices installed
automatic soil sieve
shaker a.1. a timer to
start or stop the process at a
set time.

a.2. a different speed


for shaking

a.3. a different mode


of shaking

b. performance compared
with the manual apparatus

14
Chapter 3

METHODS OF STUDY AND SOURCES OF DATA

This chapter presents the outline of the necessary procedures that were followed in

the study. It also describes the research design, methods, and instrument used to carry out

data. Moreover, the statistical treatment is also present to obtain the objective of this

study.

RESEARCH DESIGN AND METHODS

This study involves descriptive method of research which focuses on both features

and properties of fabricated automatic soil sieve shaker. An experimental method of

research has applied to determine the functionality of the fabricated apparatus using

different modes of movement like Tilting, Rotating and combination of Tilting and

rotation, these movement helped the researchers to achieve the objectives of the study.

The researchers conducted trials of testing not only with the Fabricated Apparatus but also

the Manually Operated Sieve Shaker and another Automated Sieve Shaker for comparison

of result.

MODIFICATION OF SOIL SIEVE SHAKER

The modification of the instrument aims to be less time-consuming and convenient

in the process of sieve shaking. The features and functions of the modified instrument are

based on the specifications indicated in the ASTM D442 which is the Standard Test

Method for Particle-Size Analysis of Soils placed in a sieve shaker. The time being set, the

speed of shaking, and the tilting mode are programmed by using a microcontroller.

15
Parts and Dimensions of the Apparatus

The figure below illustrates the parts and dimensions of the Fabricated Automatic

Soil Sieve Shaker.

27.5 in

46 in

4.8 in

7.5 in
18.5 in

Fig. 6 Dimensions

The Fabricated Automatic Soil Sieve Shaker with the total height of 46” which
consist of threaded rod with a diameter of 3/8” and 70 cm in height that connecting the
cover plate of 28x28 cm and acrylic plate of 30x40 cm as shown in fig.

16
Fig. 7 Front View

17
Fig. 8 Back View

18
Parts of the Fabricated Automatic Soil Sieve Shaker

1. Threaded Rod - To support the sieve stack

2. Wing Nut - It serves as the lock to hold the sieve

3. Rotating plate – It serves as the base of the sieve. This plate rotates 360o .

4. Shaft - It guides the first plate to move in circular motion

5. Tilting Plate – This base plate tilts to help the first base plate to sieve the soil.

6. Spring - To support the tilting of the second plate

7. Base Plate - The base of the machine itself. It provides support for the rotating and

tilting plate

8. Motor A - This produces the tilting.

9. Motor B - This produces the circular movement

10. Sprocket - It supports the belt to produce circular motion

11. Cover Plate - To hold and cover the sieve stack

19
Fig. 9 Threaded Rod

Threaded Rod Details:

Diameter of Rod: 3/8 in

Height of 1st Set - 70 cm

Height of 2nd Set - 60 cm

Height of 3rd Set – 30 cm

The 1st Set of rod can fit 10-8 sieves, 2nd Set of rod can fit 7-5 sieves only, and 3rd Set of

rod can fit 4-3 sieves only.

20
The figure below shows the cover on the front of a device that contains the keypad,
display, and all the buttons and switches of the apparatus.

Fig. 10 Front View

Fig. 11 Back View

21
Electronic Parts of the Fabricated Automatic Soil Sieve Shaker

A. On / Off Button - switch that connects the power supply and the instrument.

B. Reset Button - clears the memory and reboots the machine forcibly.

C. Okay key - is used to finalize the time being input.

D. Low Speed Button – It is used to make a circular movement with 313 rpm.

E. Mid Speed Button - It is used to make a circular movement with 357 rpm.

F. High Speed Button - It is used to make a circular movement with 400 rpm.

G. Start key - It is used to activate the program

H. Numeric Keys – they are used to enter the time needed for the instrument to function.

I. LCD Display - It shows the time being input.

J. Tilt Mode Button - It is used to activate the tilting movement in the instrument.

K. Rotation Mode Button - It is used to activate rotation movement in the instrument.

22
Fig. 12 Block Diagram

23
Fig. 13 Schematic Circuits Diagram of the Fabricated Automatic Soil Sieve Shaker

24
Fig. 14 Exploded View of the Fabricated Automatic Soil Sieve Shaker

25
Fig. 15 3D Illustration of FABRICATION OF AUTOMATIC SOIL SIEVE SHAKER

26
Instruction Fabrication of Automatic Soil Sieve Shaker

Preparing the Apparatus

In order to achieve the best results, the user must secure that the apparatus is properly set

up before starting the test procedure. The parts needed for the instrument to function

effectively must be supervised and must also be properly prepared. The wirings and all

other connections must be handled carefully. Before operating the apparatus, the user must

make sure that all the switches are turned off.

OPERATION

Power Up

After connecting the instrument to its power source, turn it on using the On / Off switch

located in front of the device. The LCD display will light up as an indication that it is

turned on. If unusual characters appear, press the reset button.

Adjusting Instruction

Select the sieves with mesh sizes that will supply the information needed for the test and

place them beginning with a pan on the bottom then the finest sieve followed by

increasingly coarser sieves with the coarsest sieve on top. Place a sample into the top sieve

and place the cover of the sieve on it. Put the cover plate at the top of the cover of the

sieve to compress the sieve and hold them in place. Install the rod on four sides to secure

the sieve stack, clamp it with wing nuts make sure that everything is in place properly.

27
Test Procedures

1. Gather the Materials that will be used such as a weighing scale, large pan, brush, trowel,

and a pitcher. As for the sieve, use sieve number 4, 10, 20, 40, 60, 100, 200 and a pan as

stated in ASTM D422.

2. Prepare the Sample that will be sieved. A Mix of 200 grams of Sand, 250 grams of Clay

and 50 grams of Gravel.

3. Place the sieve stack with increasing mesh size on the collecting pan.

4. Use mid speed, select okay and input 5 minutes on the timer then select start. The

sieving process will stop automatically after the set process time has elapsed. Wait for 3-5

minutes then set it again for another 5 minutes to complete the 10 minutes needed. Do this

to prevent the motor from overheating.

5. Remove the sieves on the shaker and weigh each sieve on the Weighing Scale then

Record the results.

Resetting the Apparatus

In case something went wrong, press the reset button to clear the saved data in the

program. The procedure will be operated from the start once reset is conducted.

PRECAUTIONS

1. Before conducting the test procedure, make sure that the parts needed for the

instrument to function effectively are supervised to avoid misplacement of the

components.

2. The user must check if the wirings are all connected and are functioning efficiently.

28
3. The wirings must be properly handled to avoid glitches.

4. Before conducting another test, if the instrument is unused, the user must unplug the

device to prevent the motor from overheating.

5. After using the device, the user must turn off all the switches to prevent any

malfunction.

6. Disconnect power before performing any service or adjustments on the shaker.

7. Clean the shaker periodically.

8. Periodically check all hex nuts and washers for tightness.

9. Do not expose the apparatus to fire, welding sparks or extreme temperatures.

10. Be aware of the danger of electrical shocks from direct and indirect contact due to

unforeseen electrical faults.

11. When operating check there no conditions of danger. Immediately stop the machine

when it is functioning irregularly.

12. For the operator’s safety do not touch any part of the apparatus when testing.

TROUBLESHOOTING

Software

1. When the program crashes or the LCD display shows unusual characters, the user must

reset the apparatus by pressing reset button. If this does not resolve the problem, circuit

connections must be checked. See diagram on page 10.

2. If modifications in the Arduino program are desired, the program stored in the

microcontroller can be reprogrammed using a computer and an open-source software.

29
Calculations

In conducting sieve analysis or gradation test, the mass retained of the soil sample in every

number of sieves must be known for each trial. The obtained values will be used to

validate the functionality of the fabricated apparatus using different modes of movement:

rotation and tilt, tilt only and rotation only.

Average Mass Retained of the Soil Sample

After gathering the results, compute the average mass retained of the soil sample in every

number of sieves in every trial.

∑ xi
average mass retained= i =1
n
n
Where: ∑ x i=∑ of terms
i=1

n=number of terms

SIEVE NO. #4 #10 #20 #40 #60 #100 #200 PA


N
TIME MASS RETAINED TOTA
(minutes) L
1
2
3
4
5
6
7
8
9
10
Table 1
30
SIEVE NO. pan pan pan
TIME (minutes) MASS RETAINED Average mass
retained
Trial 1 Trial 2 Trial 3

1
2
3
4
5
6
7
8
9
10

Table 2

Data Analysis and Data Processing

1) To validate the functionality of the fabricated automatic soil sieve shaker

apparatus, the data for the mass retained in the pan using the apparatus for the tilt

only mode was compared to the mass retained using the manually operated sieve

shaker. The data were analyzed using the paired difference t-test and tested at 0.05

level of significance based on the following hypothesis:

Ho: µa= µm (The mass retained in the fabricated apparatus at different time is

the same as the mass retained in the manually operated sieve shaker.

Ha: µa > µm (The mass retained in the fabricated apparatus is greater than the

manually operated sieve shaker.)

2) The optimum time required for shaking at different modes was determined

31
by establishing the relationship between the mass retained and the time for shaking.

The correlation among the two variables was determined using the Pearson’s r. The

regression analysis was used to determine the functional relationship between the

two variables. The time used in shaking was the predictor variable and the mass

retained in pan as the response variable. The fitted line was tested at 0.05 level of

significance based on the following hypothesis:

Ho: β=0 (There is no linear relationship between time and mass retained.)

Ho: β≠0 (There is linear relationship between time and mass retained.)

The fitted line was used to determine the optimum for sieving the mass

retained in the manually operated sieve shaker. This mass retained was used to

predict the time at different modes using the linear relationship obtained.

The data were processed using the Analysis Tool Pak of Microsoft Excel

2016. The summary output of Excel was presented to provide the statistical tests of

all the data that were processed.

32
Chapter 4

PRESENTATION, ANALYSIS AND INTERPRETATION OF DATA

This chapter presents, analyzes and interprets the gathered data as well as the

results obtained from the experiments. The data shown was obtained by conducting

multiple trials in order to determine the functionality of the modified apparatus.

SIEVE ANALYSIS (Gradation Test)

SIEVE
#4 #10 #20 #40 #60 #100 #200 PAN
NO.
TIME MASS RETAINED TOTAL
1 50.73 30.33 264.80 54.40 50.30 35.80 12.93 0.60 499.90
2 50.17 15.97 248.20 72.20 54.33 41.23 16.83 0.97 499.90
3 50.03 11.80 208.20 85.03 77.10 47.00 19.27 1.47 499.90
4 50.00 11.43 163.93 105.97 88.97 52.70 24.23 2.60 499.83
5 50.00 11.20 148.17 113.07 94.10 53.70 26.53 3.07 499.83
6 50.00 11.13 139.70 118.27 95.37 53.93 28.13 3.30 499.83
7 50.00 11.10 131.03 119.60 97.80 55.43 31.17 3.67 499.80
8 50.00 11.10 126.77 119.73 99.57 55.57 33.23 3.77 499.73
9 50.00 11.07 125.10 119.90 100.30 55.67 33.60 4.10 499.73
10 50.00 11.00 123.63 119.93 100.93 56.13 33.90 4.20 499.73

The Researchers conducted sieve analysis or gradation test in Tarlac State University

(College of Engineering and Technology) using the Fabricated Automatic Soil Sieve Shaker and

the Manually Operated Sieve Shaker. The average mass retained results obtained from the

fabricated and manually operated apparatus were listed below.

Table 3. Fabricated Automatic Soil Sieve Shaker (Rotation and Tilt)


XSIEV #4 #10 #20 #40 #60 #100 #200 PAN

33
E NO.
TOTA
TIME MASS RETAINED L
1 59.33 191.70 222.10 15.53 7.67 2.13 1.17 0.27 499.90
2 54.87 150.23 257.40 23.53 8.70 3.03 1.83 0.27 499.87
3 53.73 116.50 281.93 31.70 9.77 3.40 2.40 0.37 499.80
4 51.70 86.10 305.90 38.47 10.67 3.93 2.60 0.40 499.77
5 51.07 63.53 323.00 42.30 12.27 4.20 2.87 0.50 499.73
6 50.07 52.03 331.00 44.47 13.83 4.47 3.30 0.57 499.73
7 50.00 35.93 342.23 48.67 14.20 4.57 3.50 0.63 499.73
8 50.00 26.47 344.20 54.57 15.27 4.73 3.73 0.73 499.70
9 50.00 16.40 350.17 56.97 16.43 4.93 4.00 0.80 499.70
10 50.00 13.27 350.73 58.13 17.10 5.23 4.33 0.87 499.67

Table 3.1 Fabricated Automatic Soil Sieve Shaker (Rotation Only).


SIEV
#4 #10 #20 #40 #60 #100 #200 PAN
E NO.
TOTA
TIME MASS RETAINED L
1 52.10 91.70 259.40 39.87 29.23 20.47 6.83 0.30 499.90
2 50.77 79.33 254.20 49.27 36.87 21.23 7.53 0.70 499.90
3 50.17 71.17 244.87 55.50 43.03 23.17 10.87 1.10 499.87
4 50.03 59.60 227.23 64.23 57.10 25.53 13.90 2.17 499.80
5 50.00 49.97 210.77 71.00 67.10 27.40 20.83 2.73 499.80
6 50.00 38.87 203.47 79.60 70.90 30.57 23.33 3.03 499.77
7 50.00 24.77 194.20 95.30 74.07 33.00 25.10 3.33 499.77
8 50.00 13.07 188.77 105.77 76.60 35.33 26.53 3.63 499.70
9 50.00 11.50 175.93 111.53 78.27 40.93 27.73 3.80 499.70
10 50.00 11.13 167.00 116.43 79.67 42.67 28.87 3.93 499.70

Table 3.2 Fabricated Automatic Soil Sieve Shaker (Tilt Only).

XSIEV
#4 #10 #20 #40 #60 #100 #200 PAN
E NO.

34
TIME MASS RETAINED TOTAL

1 53.60 35.43 334.83 26.83 27.53 16.17 5.13 0.30 499.83


2 51.70 23.80 339.07 30.63 31.77 16.67 5.80 0.37 499.80
3 50.23 16.43 332.00 38.40 37.20 18.10 6.90 0.53 499.80
4 50.00 13.63 316.03 48.97 41.97 19.43 8.73 0.97 499.73
5 50.00 12.57 304.07 52.13 46.43 21.77 11.10 1.63 499.70
6 50.00 12.10 287.27 61.97 49.63 23.57 13.10 2.07 499.70
7 50.00 11.97 271.67 70.13 53.10 25.80 14.60 2.40 499.67
8 50.00 11.73 257.43 78.23 54.83 28.20 16.43 2.77 499.63
9 50.00 11.60 237.83 87.97 57.63 32.20 19.23 3.07 499.53
10 50.00 11.27 217.13 100.27 61.20 34.73 21.47 3.40 499.47

Table 4. Manually Operated Sieve Shaker.

SIEVE
#4 #10 #20 #40 #60 #100 #200 PAN
NO.
TIME MASS RETAINED TOTAL

1 52.63 34.50 270.10 52.93 44.07 34.50 10.87 0.30 499.90


2 51.63 22.17 250.43 65.93 51.73 41.07 16.30 0.60 499.87
3 50.63 17.17 212.73 80.70 76.33 43.77 17.40 1.07 499.80
4 50.10 12.87 173.27 112.00 84.77 46.10 19.00 1.67 499.77
5 50.00 12.10 161.40 113.97 89.10 47.37 23.50 2.23 499.67
6 50.00 11.70 147.27 117.83 95.80 48.47 25.87 2.73 499.67
7 50.00 11.33 141.97 118.63 97.80 49.47 27.37 3.07 499.63
8 50.00 11.23 137.30 119.87 98.40 50.20 29.33 3.27 499.60
9 50.00 11.13 134.57 119.90 99.20 50.87 30.53 3.33 499.53
10 50.00 11.07 132.00 120.23 99.87 51.37 31.30 3.67 499.50

Table 5. Automatic Soil Sieve Shaker in DPWH. (additional data)

 Statistical analysis on validating the functionality of the Fabricated Automatic

Soil Sieve Shaker, the data for the mass retained in the pan using the

35
apparatus for the tilt only mode was compared to the mass retained using the

manually operated sieve shaker. The data were analyzed using the paired

difference t-test and tested at 0.05 level of significance.

MASS RETAINED
TIME APPARATUS MANUAL DIFFERENCE
1 0.30 0.30 0.00
2 0.70 0.37 0.33
3 1.10 0.53 0.57
4 2.17 0.97 1.20
5 2.73 1.63 1.10
6 3.03 2.07 0.97
7 3.33 2.40 0.93
8 3.63 2.77 0.87
N 9Mean Std. deviation
3.80 Std. deviation
3.07 df 0.73 t
Difference (Fabricated (Manually
10 3.93
Apparatus) 3.40
Operated 0.53
apparatus)
10 0.72 1.342 1.161 9 6.190

Formulation of Hypotheses:

Ho: µa= µm (The mass retained in the fabricated apparatus at

different time is the same as the mass retained in the manually operated

sieve shaker.

Ha: µa > µm (The mass retained in the fabricated apparatus is

greater than the manually operated sieve shaker.)

36
Level of Significance

At 95% confidence interval

α=0.05

Statistical Results

t = 6.190

t0.05(two tail) = 2.262

Conclusion:

Since t > t0.05, null hypothesis is rejected. Therefore, the mass

retained in the fabricated apparatus is greater than the manually

operated sieve shaker.

37
Statistical Analysis

 The optimum time required for shaking at different modes was determining

the relationship between the mass retained and time for shaking. The

correlation among the two variables was determined using the Pearson’s r.

The regression analysis was used to determine the functional relationship

between the two variables. The time used in shaking was the predictor

variable and the mass retained in pan as the response variable.

FABRICATED AUTOMATIC SOIL SIEVE SHAKER

Mode of movement: Rotation and Tilt

AVERAGE MASS
TIME (x) RETAINED
1 0.60
2 0.97
3 1.47
4 2.60
5 3.07
6 3.30
7 3.67
8 3.77
9 4.10
10 4.20

Table 4. The Average Mass Retained in the pan for rotation and tilt based on the time of

sieving.

38
Formulation of Hypotheses:

The linear relationship among the variable are established on the ff.:

Ho: β=0: There is no significant linear relationship between time and

mass retained.

Ha: β≠0: There is a significant linear relationship between time and mass

retained.

Level of Significance

At 95% confidence interval

α=0.05

Statistical Results

Regression Statistics
Multiple R 0.96
R Square 0.93
Adjusted R Square 0.92
Standard Error 0.38
Observations 10

ANOVA
Significance
df SS MS F
  F
Regression 1 14.54 14.54 102.98 7.60557E-06
Residual 8 1.13 0.14
Total 9 15.67      

Lowe Uppe
Uppe
Coefficient Standar P- Lower r r
t Stat r
s d Error value 95% 95.0 95.0
95%
% %
Intercept 0.4644 0.26 1.81 0.11 -0.13 1.06 -0.13 1.06
7.61E
time (x) 0.04 10.15 0.32 0.52 0.32 0.52
0.4198 -06

39
PREDICTED MASS RETAINED

Predicted mass Residual


Time
retained(y) s
1 0.88 -0.28
2 1.30 -0.34
3 1.72 -0.26
4 2.14 0.46
5 2.56 0.50
6 2.98 0.32
7 3.40 0.26
8 3.82 -0.06
9 4.24 -0.14
10 4.66 -0.46

Line Fit Graph (fig.1)

The line of best fit is y= 0.4644 + 0.4198x

 With the use of “95% Critical Value” table for “r” with df=n-2=10-2=8

 The critical values are -0.632 and +0.632.

 Since the computed r=0.96 > 0.632, “r” is significant.

40
Decision: Reject the null hypothesis Ho.

Conclusion

There is enough evidence to conclude there is a linear relationship between time

(x) and mass retained(y) in the sieve because the correlation coefficient (r)=0.96 is

significantly different from zero.

Because “r” is significant and the scatterplot(line fit graph) shows a linear

trend line , the regression line can be used to predict the mass retained .

41
Fabricated Automatic Soil Sieve Shaker

Mode of movement: Rotation only

Average MASS
TIME (x) RETAINED

1 0.27
2 0.27
3 0.37
4 0.40
5 0.50
6 0.57
7 0.63
8 0.73
9 0.80
10 0.87

Table 2. The Average Mass Retained in the pan for rotation only based on the time of

sieving.

Formulation of Hypotheses:

The linear relationship among the variable are established on the ff.:

Ho: β=0: There is no significant linear relationship between time and mass

retained.

Ha: β≠0: There is a significant linear relationship between time and mass

retained.

42
Level of Significance

At 95% confidence interval

α=0.05

Statistical Results

Regression Statistics
Multiple R 0.99
R Square 0.99
Adjusted R Square 0.99
Standard Error 0.02
Observations 10

ANOVA
Significance
  df SS MS F F
Regression 1 0.42 0.42 726.71 3.86E-09
Residual 8 0.00 0.00
Total 9 0.42

Lowe Uppe
Uppe
Coefficient Standar Lower r r
t Stat P-value r
s d Error 95% 95.0 95.0
95%
% %
Intercept 0.1489 0.02 9.10 1.71E-05 0.11 0.19 0.11 0.19
TIME 0.0711 0.00 26.96 3.86E-09 0.07 0.08 0.07 0.08

RESIDUAL OUTPUT

Predicted mass Residual


Time
retained(y) s
1 0.22 0.05
2 0.29 -0.02
3 0.36 0.00
4 0.43 -0.03
5 0.50 0.00
6 0.58 -0.01
7 0.65 -0.01

43
8 0.72 0.02
9 0.79 0.01
10 0.86 0.01

Line Fit Graph (fig.2)

The line of best fit is y=0.1489 + 0.0711x

 With the use of “95% Critical Value” table for “r” with df=n-2=10-2=8

 The critical values are -0.632 and +0.632.

 Since the computed r=0.99 > 0.632, “r” is significant.

Decision: Reject the null hypothesis Ho.

44
Conclusion

There is a significant linear relationship between time(x) and mass retained

because the correlation coefficient (r)=0.99 is significantly different from zero.

Fabricated Automatic Soil Sieve Shaker

Mode of movement: Tilt only

X Average MASS
TIME (x) RETAINED

1 0.30
2 0.70
3 1.10
4 2.17
5 2.73
6 3.03
7 3.33
8 3.63
9 3.80
10 3.93

Table 2. The Average Mass Retained in the pan for tilt only based on the time of sieving.

45
Formulation of Hypotheses:

The linear relationship among the variable are established on the ff.:

Ho: β=0: There is no significant linear relationship between time and mass

retained.

Ha: β≠0: There is a significant linear relationship between time and mass

retained.

Level of Significance

At 95% confidence interval

α=0.05

Statistical Results

Regression Statistics
Multiple R 0.97
R Square 0.94
Adjusted R Square 0.93
Standard Error 0.35
Observations 10

ANOVA
Significance
Df SS MS F
  F
Regression 1 15.22 15.22 123.25 3.87E-06
Residual 8 0.99 0.12
Total 9 16.21

Coefficient Standar t Stat P-value Lower Uppe Lowe Uppe

46
r r
r
s d Error 95% 95.0 95.0
95%
% %
0.65578
Intercept
0.1111 0.24 0.46 1 -0.44 0.66 -0.44 0.66
TIME 0.4295 0.04 11.10 3.87E-06 0.34 0.52 0.34 0.52

PREDICTED MASS
RETAINED

Predicted mass Residual


Time
retained(y) s
1 0.54 -0.24
2 0.97 -0.27
3 1.40 -0.30
4 1.83 0.34
5 2.26 0.47
6 2.69 0.35
7 3.12 0.22
8 3.55 0.09
9 3.98 -0.18
10 4.41 -0.47

Line Fit
TIME vs. MASS RETAINED Graph
(tilt only) (fig.2)
12.00
The line of best fit is
10.00
y=0.1111 + 0.4295x
MASS RETAINED

8.00
Mass Retained
6.00 Linear(Predicted Mass  With the
Retained)
4.00 use of
2.00

0.00 47
0 f(x)
2 =0 4 6 8 10 12
R² = 0
TIME (minutes)
“95% Critical Value” table for “r” with df=n-2=10-2=8

 The critical values are -0.632 and +0.632.

 Since the computed r=0.97 > 0.632, “r” is significant.

Decision: Reject the null hypothesis Ho.

Conclusion

There is a significant linear relationship between time(x) and mass retained

because the correlation coefficient (r)=0.97 is significantly different from zero.

 In determining the optimum time for shaking in the fabricated automatic soil

sieve shaker.

Fabricated Automatic Soil Sieve Shaker Vs Manually Operated Sieve Shaker

Mode of movement: Tilt only

48
Average MASS
RETAINED Average MASS
TIME (x) (modified apparatus) RETAINED
(manual)

1 0.30 0.30
2 0.70 0.37
3 1.10 0.53
4 2.17 0.97
5 2.73 1.63
6 3.03 2.07
7 3.33 2.40
8 3.63 2.77
9 3.80 3.07
10 3.93 3.40

Table 2. The Average Mass Retained in the pan for tilt only based on the time of sieving.

The researchers can use the equation line of best fit to predict the optimum time of

shaking in fabricated apparatus.

The researchers used the previous equation line of best fit in tilt only,
y=0.1111 + 0.4295x

Let Manually Operated (mass retained in pan for 10 minutes) is equal to y..
Given: y=3.4 grams
x = optimum time

3.40=0.0923 + 2.1864(x)
X= 7.66 minutes
Average MASS Average MASS
RETAINED RETAINED
TIME (x) (fabricated apparatus) (manually operated
apparatus)

1 0.30 0.30
2 0.70 0.37
3 1.10 0.53
4 2.17 0.97
5 2.73 1.63
6 3.03 2.07
7 3.33
49
2.40
8 3.63 2.77
9 3.80 3.07
10 3.93 3.40
Conclusion

Since the computed time of fabricated apparatus is less than the 10

mins time of manually operated, therefore the optimum time of shaking in the

fabricated apparatus is 7.66 minutes.

Chapter 5

SUMMARY OF FINDINGS, CONCLUSION AND RECOMMENDATIONS

This chapter summarizes the result of the study, the conclusions obtained from the

results, and the recommendations to improve and show how effective the apparatus in

50
fulfilling its objectives. It also presents the statistical result for the validation of the

results.

SUMMARY OF FINDINGS:

5. The Automatic Soil Sieve Shaker has successfully been fabricated.

6. Using the paired difference t-test and tested at 0.05 level of significance, the

researchers found out that the mass retained in the fabricated apparatus is greater than

the manually operated sieve shaker.

7. In the gradation testing that the researchers conducted using the fabricated automatic

soil sieve shaker by different modes of movement, results showed that there is a

significant linear relationship between the predictor variable(time) and the response

variable (mass retained). Pearson’s r and Linear Regression was used in validating the

results.

8. The total project cost was Php 33,298.00 which is subject to increase if further

improvements are to be made on the apparatus.

CONCLUSIONS:

3. There was a linear relationship between the mass retained (response variable) and time

(predictor variable).

4. The use of fabricated automatic soil sieve shaker resulted to a more convenient and

51
less-time consuming procedure of sieve analysis/gradation test in comparison with the

use of the manually operated sieve shaker.

Recommendation

Based on the finding of this study and conclusion drawn above, the following

recommendation made:

1. Innovate the existing apparatus and make it more convenient to carry or transport from

one place to another. Easy operation, low noise, light weight, no need to fix, height

adjustable and the screening process can be observed.

2. The researchers also recommend the use of vibrational sieving in laboratory sieve

shaker which creates a rapid circular movement and a vertical throwing motion. This

mechanism causes the particles to be more uniformly distributed across the entire sieving

surface. Moreover, this enables them to be compared to the sieve apertures in all probable

dimensions as being thrown into the air where they ideally change their orientation.

3. To guarantee a high degree of reproducibility and reliability, sieve shakers and

accessories have to fulfill the requirements of national and international standards. This

means that test sieves, sieve shakers and all other measurement instruments (e.g. scales)

which are used for the characterization of particle distributions have to be calibrated and

subjected to test agent monitoring as part of the quality management system. Apart from

that, it is absolutely necessary to carry out the sample preparation with great care. It is

only that time it is possible to achieve sieving results which allow a reliable

characterization of a product.

52
This research recommends for those who will develop this kind of study.

BIBLIOGRAPHY

A. References:
R. F. Craig, Craig’s Soil Mechanics 7th Edition, p.6

Muni Budhu, Soil Mechanics and Foundations 3rd Edition, 2011, p.5

B. Websites:

53
911Metallurgist

(https://www.911metallurgist.com/blog/author/david/page/99)

Motor-Operated Sand Sifter Juanito M. Origines Jr., Anacleta K. Perez, Dario Gawala

(https://www.researchgate.net/publication/272715498_Motor_-_Operated_Sand_Sifter)

Automatic Sieve Shaker for determining Soil Aggregate Stability and Dimension using a

Vertical Oscillation System. Dell’ Aquila, R., 2007

(https://www.agronomy.it/index.php/agro/article/view/ija.2007.401)

Arduino

(https://www.arduino.cc)

54
APPENDICES

55
APPENDIX A:
PHOTOS

CONSULTATION

56
PLANT VISIT AT DPWH

57
TESTING AND GATHERING OF DATA
TRIAL USING MANUAL OPERATED SIEVE SHAKER

58
TRIAL USING AUTOMATIC SIEVE SHAKER (DPWH)

59
TRIAL USING FABRICATED AUTOMATIC SOIL SIEVE SHAKER

60
CANVASSING AND BUYING OF MATERIALS

61
CONSTRUCTION OF THE INSTRUMENT

62
63
APPENDIX B:
PROJECT
LAY-OUT

FABRICATED AUTOMATIC SOIL SIEVE SHAKER

64
46 in

4.8 in

7.5 in

6 in

15 in

20 in

EXPLODED VIEW OF THE APPARATUS

65
WING NUTS

COVER PLATE

THREADED ROD

SIEVES
RUBBER

SIEVE PLATE

BEARINGS
SHAFTS
SPROCKET & CHAIN

TILTING PLATE
MOTOR B

PILLOW BLOCK
SPRING
MOTOR A
BASE PLATE

ANGLE BAR
GI SHEET

CONTROLLER PANEL

LOWER PLATE

66
APPENDIX C:
DETAILED
PROJECT COST

67
QUANTIT UNIT
ITEM DESCRIPTION TOTAL
Y PRICE
BEARING (0.75
1
DIA.) 11 120 1320
2 ANGLE BAR 1 360 360
THREADED BAR
3
(3/8) 3 140 420
PILLOW BLOCK
4
(1IN DIA.) 3 220 660
5 STEEL PLATE 1 2000 2000
6 ACRYLIC PLATE 1 2700 2700
7 EPOXY(ACRYLIC) 2 84 168
8 EPOXY(STEEL) 1 70 70
9 WING NUT 4 6 24
MAXON DC
10
MOTOR 24V 1 850 850
11 SCREW (3/8) 5 4 20
12 SCREW (5/16) 5 3 15
13 SCREW (1/4) 24 3 72
MOSFET DRIVER
14
MODULE 1 300 300
15 DIODE 3A 2 10 20
DUAL H BRIDGE
16
L298N 1 245 245
17 ARDUINO MEGA 1 750 750
18 ARDUINO UNO 1 450 450
19 LCD ADAPTER 1 119 119
20 LCD MODULE 1 230 230
ALPHA KEYPAD
21
4X4 2 99 198
POWER SUPPLY
22
24V 5A 1 663 663
POWER SUPPLY
23
24V 10A 1 650 650
24 GI SHEET 1 650 650
25 COMPUTER CORD 1 190 190
ADJUSTABLE
26
WRENCH 1 88 88
SPRAY PAINT
27
(BLACK) 2 100 200
SPRAY PAINT
28
(SILVER) 1 90 90
SPRAY PAINT
29
(ACRYLIC) 1 176 176
30 RUBBER 1 250 250
31 SPRING 2 63 126

68
32 SPRING TENSION 1 45 45
SPROCKET (32
33
DIA.) 1 130 130
34 SPROCKET 1 55 55
35 CHAIN 1 220 220
36 WELDING 1 70 70
37 SCREW NUT (3/8) 5 4 20
38 SCREW NUT (5/16) 6 3 18
39 SCREW NUT (1/4) 5 2 10
40 SAND PAPER 1 15 15
41 LUBRICANT OIL 1 45 45
42 USB ADAPTOR 1 70 70
43 JUMPER WIRE 1 138 138
44 WIRE 1 36 36
45 MS 401X20 3 60 180
46 ROCK SW. PRIG. 1 30 30
47 P. BUTTON 1 35 35

TRANSPORTATIO
N 3107

LABOR 15000

TOTAL EXPENSES 33298

69
APPENDIX D:
MATERIALS

70
Angle Bar Pillow Block

Acrylic Glass Threaded Rod

GI Sheet Shafts

Threaded Hex Sprocket

Spring Rubber

Steel Plate Spray Paint

Bearing Epoxy

Wing Nut Motor Chain

Hex Nut Sieves

71
Power Supply Mosfet Drive Module

Maxon A-Max
LCD Module DC Motor
(Tilt)

4x4 Keypad NEMA 19


Stepper Motor
(Circular)

Buttons LED Light

Arduino Mega Jumper Wire

Arduino Uno DQ542ma


Stepper Motor Driver

Computer Cable
Buck Converter

Dual H Bridge Switch Mode


Power Supply

72
APPENDIX E:
FABRICATED
AUTOMATIC SOIL
SIEVE SHAKER
PROGRAM

73
#include <LiquidCrystal.h>
#include <Keypad.h>
/**********************************************************/
LiquidCrystal lcd(40, 41, 47, 46, 45, 44); // Creates an LC object. Parameters: (rs, enable, d4, d5, d6, d7)

const byte ROWS = 4; // Four rows


const byte COLS = 4; // Three columns

long int set1;


long int set2;
long int set3;
long int set4;
long int j;

String hours;
String minutes;
String seconds;

//**************************************************************
//Buttons
int lowrpm = 4;
int midrpm = 5;
int highrpm = 6;

int seesaw = 2;
int stepper = 3;

int led1 = 8;
int led2 = 9;
int led3 = 10;

int seesawControl = 7;

char keys[ROWS][COLS] = {

{'1', '2', '3', 'A'},

{'4', '5', '6', 'B'},

{'7', '8', '9', 'C'},

{'*', '0', '#', 'D'}

};

byte rowPins[ROWS] = { 22, 23, 24, 25 };// Connect keypad ROW0, ROW1, ROW2 and ROW3 to these
Arduino pins
byte colPins[COLS] = { 26, 27, 28, 29 };// Connect keypad COL0, COL1 and COL2 to t

Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

74
int t1, t2, t3, t4, t5, t6;
int r1, r2, r3;

boolean feed = true; // condition for alarm

char key;
String r[8];

void setFeedingTime()
{
feed = true;
int i = 0;

lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Set feeding Time");
lcd.clear();
lcd.print("HH:MM:SS");
lcd.setCursor(0, 1);

while (1) {
key = kpd.getKey();

char j;

if (key != NO_KEY) {

lcd.setCursor(j, 1);

lcd.print(key);

r[i] = key - 48;


i++;
j++;

if (j == 3 || j == 6)
{
lcd.print(":"); j++;
}
delay(200);
}

if (key == 'D')
{
key = 0;
break;
}
}

75
lcd.clear();
}

void setup()
{
lcd.begin(16, 2);

pinMode(lowrpm, INPUT);
pinMode(midrpm, INPUT);
pinMode(highrpm, INPUT);

pinMode(seesaw, INPUT);
pinMode(stepper, INPUT);

pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(seesawControl, OUTPUT);

lcd.setCursor(0, 0);
lcd.print("INITIALIZING");
delay(300);
lcd.setCursor(12, 0);
lcd.print(".");
delay(300);
lcd.setCursor(13, 0);
lcd.print(".");
delay(300);
lcd.setCursor(14, 0);
lcd.print(".");
delay(300);
lcd.setCursor(15, 0);
lcd.print(".");
delay(300);
lcd.clear();

lcd.setCursor(2, 0);
lcd.print("SIEVE SHAKER");
delay(2000);
Serial.begin(9600);
lcd.clear();

void loop()
{

digitalRead(stepper);
digitalRead(seesaw);

76
if (digitalRead(seesaw) == HIGH && digitalRead (stepper) == HIGH)
{
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("SYSTEM_ERROR");

digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);

delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
lcd.clear();
delay(500);
}

if (digitalRead(stepper) == HIGH)

{
int readPins = digitalRead(lowrpm);
int readPin1 = digitalRead(midrpm);
int readPin2 = digitalRead(highrpm);

if (readPins == 0 && readPin1 == 0 && readPin2 == 0)


{
lcd.clear();
}

while (readPins == 0 && readPin1 == 0 && readPin2 == 0) {

digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
lcd.setCursor(4, 0);
lcd.print("SELECT");
lcd.setCursor(3, 1);
lcd.print("MOTOR SPEED** ");
readPins = digitalRead(lowrpm);
readPin1 = digitalRead(midrpm);
readPin2 = digitalRead(highrpm);
delay(250);
if (readPins > 0 || readPin1 > 0 || readPin2 > 0)
{
lcd.clear();
}
}

77
while ((readPins > 0 && readPin1 > 0 && readPin2 > 0) || (readPins > 0 && readPin1 > 0) || (readPins
> 0 && readPin2 > 0) || (readPin2 > 0 && readPin1 > 0)) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("SYSTEM_ERROR");

digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);

delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
lcd.clear();
delay(500);

readPins = digitalRead(lowrpm);
readPin1 = digitalRead(midrpm);
readPin2 = digitalRead(highrpm);
if (readPins > 0 || readPin1 > 0 || readPin2 > 0)
{
lcd.clear();
}
}

//*****************************************************

if (readPins > 0) {

lcd.setCursor(3, 0);
digitalWrite(led1, HIGH);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"

78
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
Serial.write('L');

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

79
long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
Serial.write('L');
delay(1000);

if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

80
}
}
}

//*****************************************************

if (readPin1 > 0) {
digitalWrite(led2, HIGH);
lcd.setCursor(3, 0);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);

81
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
Serial.write('M');

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
Serial.write('M');
Serial.write('M');
delay(1000);

82
if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

}
}
}
}

//********************************************************
if (readPin2 > 0) {

digitalWrite(led3, HIGH);
lcd.setCursor(3, 0);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{

83
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
Serial.write('H');

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);

84
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
Serial.write('H');
delay(1000);

if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);

85
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

}
}
}
}

if (digitalRead(seesaw) == HIGH)
{
int readPins = digitalRead(lowrpm);
int readPin1 = digitalRead(midrpm);
int readPin2 = digitalRead(highrpm);

if (readPins == 0 && readPin1 == 0 && readPin2 == 0)


{
lcd.clear();
}

while (readPins == 0 && readPin1 == 0 && readPin2 == 0) {

digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
lcd.setCursor(4, 0);
lcd.print("SELECT**");
lcd.setCursor(3, 1);
lcd.print("MOTOR SPEED ");
readPins = digitalRead(lowrpm);
readPin1 = digitalRead(midrpm);
readPin2 = digitalRead(highrpm);
delay(250);

if (readPins > 0 || readPin1 > 0 || readPin2 > 0)


{
lcd.clear();
}
}

while ((readPins > 0 && readPin1 > 0 && readPin2 > 0) || (readPins > 0 && readPin1 > 0) || (readPins
> 0 && readPin2 > 0) || (readPin2 > 0 && readPin1 > 0)) {

86
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("SYSTEM_ERROR");

digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);

delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
lcd.clear();
delay(500);

readPins = digitalRead(lowrpm);
readPin1 = digitalRead(midrpm);
readPin2 = digitalRead(highrpm);
if (readPins > 0 || readPin1 > 0 || readPin2 > 0)
{
lcd.clear();
}
}

//*****************************************************

if (readPins > 0) {

lcd.setCursor(3, 0);
digitalWrite(led1, HIGH);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"

87
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
digitalWrite(seesawControl, 100);

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);

88
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
delay(1000);

if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

}
}
}
}

89
//*****************************************************

if (readPin1 > 0) {
digitalWrite(led2, HIGH);
lcd.setCursor(3, 0);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);

90
lcd.print(".");
delay(1000);

lcd.clear();
digitalWrite(seesawControl, 180);

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
delay(1000);

if (j == 0)

Serial.write('S');

91
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

}
}
}
}

//********************************************************
if (readPin2 > 0) {

digitalWrite(led3, HIGH);
lcd.setCursor(3, 0);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

92
hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
digitalWrite(seesawControl, 255);

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);

93
lcd.print(":");

long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
delay(1000);

if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

94
}
}
}
}

if (digitalRead(seesaw) == LOW && digitalRead (stepper) == LOW)


{

int readPins = digitalRead(lowrpm);


int readPin1 = digitalRead(midrpm);
int readPin2 = digitalRead(highrpm);

if (readPins == 0 && readPin1 == 0 && readPin2 == 0)


{
lcd.clear();
}

while (readPins == 0 && readPin1 == 0 && readPin2 == 0) {

digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
lcd.setCursor(4, 0);
lcd.print("SELECT");
lcd.setCursor(3, 1);
lcd.print("MOTOR SPEED ");
readPins = digitalRead(lowrpm);
readPin1 = digitalRead(midrpm);
readPin2 = digitalRead(highrpm);
delay(250);

if (readPins > 0 || readPin1 > 0 || readPin2 > 0)


{
lcd.clear();
}
}

while ((readPins > 0 && readPin1 > 0 && readPin2 > 0) || (readPins > 0 && readPin1 > 0) || (readPins
> 0 && readPin2 > 0) || (readPin2 > 0 && readPin1 > 0)) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("SYSTEM_ERROR");

digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);

95
digitalWrite(led3, HIGH);

delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
lcd.clear();
delay(500);

readPins = digitalRead(lowrpm);
readPin1 = digitalRead(midrpm);
readPin2 = digitalRead(highrpm);
if (readPins > 0 || readPin1 > 0 || readPin2 > 0)
{
lcd.clear();
}
}

//*****************************************************

if (readPins > 0) {

lcd.setCursor(3, 0);
digitalWrite(led1, HIGH);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();

96
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
Serial.write('L');
digitalWrite(seesawControl, 255);

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

97
long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
Serial.write('L');
delay(1000);

if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

}
}
}
}

//*****************************************************

if (readPin1 > 0) {
digitalWrite(led2, HIGH);

98
lcd.setCursor(3, 0);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
Serial.write('M');

99
digitalWrite(seesawControl, 180);

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
Serial.write('M');
Serial.write('M');
delay(1000);

if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();

100
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");
delay(2000);
lcd.clear();

}
}
}
}

//********************************************************
if (readPin2 > 0) {

digitalWrite(led3, HIGH);
lcd.setCursor(3, 0);
lcd.print("SETUP TIMER");
lcd.setCursor(4, 1);
lcd.print("Press OK ");
key = kpd.getKey();

if (key == 'A') {

lcd.clear();
setFeedingTime();
for (int i = 0; i < 6; i++) // this for loop is used to get the value of the feeding time and print it serially
{
Serial.print(r[i]);
Serial.println();
}

hours = String (r[0]) + String (r[1]) ; //combining two separate int values of r[0] and r[1] into one
string and save it to "hours"

101
minutes = String (r[2]) + String (r[3]) ; //combining two separate int values of r[2] and r[3] into one
string and save it to "minutes"
seconds = String (r[4]) + String (r[5]) ; //combining two separate int values of r[4] and r[5] into one
string and save it to "seconds"

set1 = (hours.toInt() * 3600); //converting hours into seconds


set2 = (minutes.toInt() * 60); //converting minutes into seconds
set3 = seconds.toInt();
set4 = (hours.toInt() * 3600) + (minutes.toInt() * 60) + seconds.toInt(); //adding set1, set2 and set3
together in set4
Serial.print("set4");
Serial.print(set4);
Serial.println();

lcd.setCursor(0, 0);
lcd.print("Process Starting");
delay(1000);
lcd.setCursor(0, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(1, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(2, 1);
lcd.print(".");
delay(1000);
lcd.setCursor(3, 1);
lcd.print(".");
delay(1000);

lcd.clear();
Serial.write('H');
digitalWrite(seesawControl, 100);

for (long int j = set4; j >= 0; j--) // this for loopis used to decrease the total time in seconds
{
Serial.println(j);

lcd.setCursor(0, 0);
lcd.print("HH:MM:SS");

long int HH = j / 3600; // converting the remaining time into remaining hours
lcd.setCursor(0, 1);
Serial.println(HH);
if (HH < 10) {
lcd.print('0');
}
lcd.print(HH);
lcd.print(":");

102
long int MM = (j - (HH * 3600)) / 60 ; //converting the remaining time into remaining minutes
lcd.setCursor(3, 1);
Serial.println(MM);
if (MM < 10) {
lcd.print('0');
}
lcd.print(MM);
lcd.print(":");

long int SS = j - ((HH * 3600) + (MM * 60)); //converting the remaining time into remaining
seconds
lcd.setCursor(6, 1);
Serial.println(SS);
if (SS < 10) {
lcd.print('0');
}
lcd.print(SS);
Serial.write('H');
delay(1000);

if (j == 0)

Serial.write('S');
digitalWrite(seesawControl, LOW);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("PLEASE WAIT");
delay(500);
lcd.setCursor(11, 0);
lcd.print(".");
delay(500);
lcd.setCursor(12, 0);
lcd.print(".");
delay(500);
lcd.setCursor(13, 0);
lcd.print(".");
delay(500);
lcd.setCursor(14, 0);
lcd.print(".");
delay(500);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Process");
lcd.setCursor(2, 1);
lcd.print("Completed");

103
delay(2000);
lcd.clear();

}
}
}
}
}

104

You might also like