Maths/Mathematics/Calculation

2 complete tide cycle/2 sine curve (one day)

>25 hours

>1,500 mins

>90,000 secs

Tinker Inc.

Pump Rate

> 200 or 250 or 288 or 300 liters/hour

> 0.05556 or 0.06944 or 0.08 or 0.08333 liters/sec (4.s.f)

> 55.556 or 69.444 or 80 or 83.333 ml/sec

>1/18 or 5/72 or 2/25 or 1/12 liters/sec

Volume of water to be transferred

>(water level)*(length of tank)*(breadth of tank)

>20cm*30cm*19cm [This calculation is the outside of the tank,not accurate]

>20cm x 29cm x 18cm

>0.2m x 0.29m x 0.18m

>0.01044 m^3

>10.44 litres

Time taken for 10.44 litres

>10.44l / (1/18)liters/s = 187.92 sec

>10.44l / (5/72)liters/s = 150.336 sec

>10.44l / (2/25)liters/s = 130.5 sec

>10.44l / (1/12)liters/s = 125.28 sec

Time Taken for the highest amplitude to the lowest amplitude

>90,000 secs/4                 >900 secs/4 (scaled down)

>22,500 secs                        >225 secs (scaled down)

Therefore, for the highest amplitude to the lowest amplitude of the sine curve, we will pump a total of 187.92 secs discounting the pause time.

And the achieved time must be 225 secs.

Therefore the pause time

>225 secs-187.92 secs

>225 secs-188 secs(3 s.f)

>37 secs

Due, to the fact that 37 is relatively divisible by 8. We will pause the pump 8 times; each time 4.625 secs = 4625 milli-secs

Experiment_01 (Status: Active) INVALID

on ( 10 )secs

off (4.625 )secs

on ( 15 )secs

off (4.625 )secs

on ( 20 )secs

off (4.625 )secs

on ( 25 )secs

off (4.625 )secs

on ( 73 )secs

off (4.625 )secs

on ( 20 )secs

off (4.625 )secs

on ( 15 )secs

off (4.625 )secs

on ( 10 )secs

off (4.625 )secs

>next pump

Experiment_01 (Codes)

#define RELAY1  7

#define RELAY2  8

#define Grove_Water_Sensor1 12

#define Grove_Water_Sensor2 13

void setup()

{

pinMode(RELAY1, OUTPUT);

pinMode(RELAY2, OUTPUT);

pinMode(Grove_Water_Sensor1, INPUT);

pinMode(Grove_Water_Sensor2, INPUT);

}

void loop()

{

digitalWrite(RELAY1,HIGH);

delay(10000);

digitalWrite(RELAY1,LOW);

delay(4625);

digitalWrite(RELAY1,HIGH);

delay(15000);

digitalWrite(RELAY1,LOW);

delay(4625);

digitalWrite(RELAY1,HIGH);

delay(20000);

digitalWrite(RELAY1,LOW);

delay(4625);

digitalWrite(RELAY1,HIGH);

delay(25000);

digitalWrite(RELAY1,LOW);

delay(4625);

digitalWrite(RELAY1,HIGH);

delay(73000);

digitalWrite(RELAY1,LOW);

delay(4625);

digitalWrite(RELAY1,HIGH);

delay(20000);

digitalWrite(RELAY1,LOW);

delay(4625);

digitalWrite(RELAY1,HIGH);

delay(15000);

digitalWrite(RELAY1,LOW);

delay(4625);

digitalWrite(RELAY1,HIGH);

delay(10000);

digitalWrite(RELAY1,LOW);

delay(4625);

}else{

digitalWrite(RELAY1,LOW);

}

digitalWrite(RELAY2,HIGH);

delay(10000);

digitalWrite(RELAY2,LOW);

delay(4625);

digitalWrite(RELAY2,HIGH);

delay(15000);

digitalWrite(RELAY2,LOW);

delay(4625);

digitalWrite(RELAY2,HIGH);

delay(20000);

digitalWrite(RELAY2,LOW);

delay(4625);

digitalWrite(RELAY2,HIGH);

delay(25000);

digitalWrite(RELAY2,LOW);

delay(4625);

digitalWrite(RELAY2,HIGH);

delay(73000);

digitalWrite(RELAY2,LOW);

delay(4625);

digitalWrite(RELAY2,HIGH);

delay(20000);

digitalWrite(RELAY2,LOW);

delay(4625);

digitalWrite(RELAY2,HIGH);

delay(15000);

digitalWrite(RELAY2,LOW);

delay(4625);

digitalWrite(RELAY2,HIGH);

delay(10000);

digitalWrite(RELAY2,LOW);

delay(4625);

}else{

digitalWrite(RELAY2,LOW);

}

}

Pump for 187.92

Stop for 37.08

Experiment_02 (Status: Active) INVALID

off (3.708 )secs

on ( 10 )secs

off (3.708 )secs

on ( 15 )secs

off (3.708 )secs

on ( 20 )secs

off (3.708 )secs

on ( 25 )secs

off (3.708 )secs

on ( 36.5 )secs

off ( 3.708)secs

on ( 36.5 )secs

off (3.708 )secs

on ( 20 )secs

off (3.708 )secs

on ( 15 )secs

off (3.708 )secs

on ( 10 )secs

off (3.708 )secs

>next pump

off (3.708 )secs

on ( 10 )secs

off (3.708 )secs

on ( 15 )secs

off (3.708 )secs

on ( 20 )secs

off (3.708 )secs

on ( 36.5 )secs

off ( 3.708)secs

on ( 36.5 )secs

off (3.708 )secs

on ( 25 )secs

off (3.708 )secs  ------> 25 secs below linear part to get a symmetrical            curve

on ( 20 )secs

off (3.708 )secs

on ( 15 )secs

off (3.708 )secs

on ( 10 )secs

off (3.708 )secs

Graph (according to 2ml/s pump rate)

Graph (according to 55.556ml/s pump rate)

Experiment_03 {Status: Active}

900 secs

¼ x 900= 225 secs

in 225 secs {187.92 pumping, 37.08 rest}

Experiment_03 Codes

#define RELAY1 8

#define RELAY2 7

void setup()

{

pinMode(RELAY1, OUTPUT);

pinMode(RELAY2, OUTPUT);

}

void loop()

{

digitalWrite(RELAY1,HIGH);

delay(10000);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(12500);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(15000);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(17500);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(20000);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);                //START OF LINEAR

delay(18960);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(18960);

digitalWrite(RELAY1,LOW);

delay(3090);                                //END OF LINEAR

digitalWrite(RELAY1,HIGH);

delay(20000);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(17500);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(15000);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(12500);

digitalWrite(RELAY1,LOW);

delay(3090);

digitalWrite(RELAY1,HIGH);

delay(10000);

digitalWrite(RELAY1,LOW);

delay(3090);

//END OF RELAY1

//START OF RELAY2

digitalWrite(RELAY2,HIGH);

delay(10000);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(12500);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(15000);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(17500);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(20000);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);                //START OF LINEAR

delay(18960);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(18960);

digitalWrite(RELAY2,LOW);

delay(3090);                                //END OF LINEAR

digitalWrite(RELAY2,HIGH);

delay(20000);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(17500);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(15000);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(12500);

digitalWrite(RELAY2,LOW);

delay(3090);

digitalWrite(RELAY2,HIGH);

delay(10000);

digitalWrite(RELAY2,LOW);

delay(3090);

} //END OF CODE