
For all of the problems that are related to the pollution of the oceanic water that represents a very big issue of concern nowadays it was important to find solutions for it. From this point we started our search and reached to our solution which is a filter that consists of four stages. Water is aspirated into the first stage by two pumps so water reaches to a layer of gravel this layer filtrates the water from large pollutants. After that water continue its way to a layer of sand; this layer prevents the pollutants which have a small size that the gravel due to its high permeability cannot stop it from passing. After this stage water enters into a container this container when filled with a specific amount of water, a tank contains calcium hydroxide opens its valve to enter some of it to the water to increase its acidity. After closing the valve of calcium hydroxide the valve of aluminum sulfate opens until it passes a specific amount then it closes. After that two arms will revolve to stair the chemicals with the water when these two arms stop revolving there will be a time gab before the next step which is a fixed layer that has moving pleads can move horizontally and vertically as after the pollutants settle in the bottom it will change its direction from vertical to horizontal it prevents the pollutants from raising when an arm has rubber attached to it from the bottom revolves to collect these pollutants in a specific place in the container where we can remove it easily. Finally water goes to the last stage which has two steps the first step is passing water through an activated carbon to remove any bad smell or color and the second is to pass it through sand to remove any piece of carbon that may pass with water. Water gets out from the filter and returns back to the ocean but it returns clean and safe as a home for all the aquatic biota.
the code we used to control whole project:
#define servoC 9
#define servoA 8
#define servoR 3
#define valveA 7
#define stear 10
#define pump 4
#define valveB 5
#define Float 6
void setup() {
pinMode(valveA,INPUT);
pinMode(valveB,INPUT);
pinMode(stear,OUTPUT);
pinMode(servoC, OUTPUT);
pinMode(servoA, OUTPUT);
pinMode(pump,OUTPUT);
pinMode(Float,OUTPUT);
Serial.begin(9600);
}
void loop() {
digitalRead(Float);
if(Float==0){
analogWrite(servoA,LOW);
analogWrite(servoC,LOW);
analogWrite(stear,LOW);
analogWrite(valveA,HIGH);
analogWrite(valveB,LOW);
analogWrite(pump,HIGH);
}
if(Float==1){
analogWrite(valveA,HIGH);
analogWrite(valveB,HIGH);
delay(2000);
digitalWrite(servoC, HIGH);
delayMicroseconds(1450); // Duration of the pusle in microseconds
digitalWrite(servoC, LOW);
delayMicroseconds(18550); // 20ms - duration of the pusle
// Pulses duration: 600 - 0deg; 1450 - 90deg; 2300 - 180deg
digitalWrite(stear,HIGH);
delay(180000);
digitalWrite(servoA, HIGH);
delayMicroseconds(1000); // Duration of the pusle in microseconds
digitalWrite(servoA, LOW);
delayMicroseconds(4500); // 20ms - duration of the pusle
// Pulses duration: 600 - 0deg; 1450 - 90deg; 2300 - 180deg
delay(300000);
digitalWrite(servoR, HIGH);
delayMicroseconds(18000); // Duration of the pusle in microseconds
digitalWrite(servoR, LOW);
digitalWrite(stear,LOW);
analogWrite(valveA,LOW);
analogWrite(valveB,HIGH);
delay(60000);
}
}