You are on page 1of 4

//testing smart cloth

//pin D8-D11 utk motor stepper


//pin A1 rain sensor
//pin A0 LDR
int sensorLDR = A0; // select the input pin for LDR
int sensorRS = A1;
//const int pinLDR = A0;
//const int pinRS = A1;
int sensorValue = 0;
int x=0;
int C0=8;
int C1=9;
int C2=10;
int C3=11;
int step = 100;
int delaytime=2;
int in1 = 13; // relay

void backward()
{
step4();
delay(delaytime);

step3();
delay(delaytime);

step2();
delay(delaytime);

step1();
delay(delaytime);
}

void forward()
{

step4();
delay(delaytime);

step3();
delay(delaytime);

step2();
delay(delaytime);

step1();
delay(delaytime);
}

void step1()
{
digitalWrite(C0,LOW);
digitalWrite(C1,LOW);
digitalWrite(C2,HIGH);
digitalWrite(C0,HIGH);
}
void step2()
{
digitalWrite(C0,HIGH);
digitalWrite(C1,LOW);
digitalWrite(C2,LOW);
digitalWrite(C0,HIGH);
}

void step3()
{
digitalWrite(C0,HIGH);
digitalWrite(C1,HIGH);
digitalWrite(C2,LOW);
digitalWrite(C0,LOW);
}

void step4()
{
digitalWrite(C0,LOW);
digitalWrite(C1,HIGH);
digitalWrite(C2,HIGH);
digitalWrite(C0,LOW);
}
void setup() {
// put your setup code here, to run once:
Serial.begin(9600); //sets serial port for communication

pinMode(sensorRS, INPUT);

pinMode(C0,OUTPUT);
pinMode(C1,OUTPUT);
pinMode(C2,OUTPUT);
pinMode(C3,OUTPUT);

pinMode(in1, OUTPUT);
digitalWrite(in1, HIGH);

//float total;
//int dataLDR=0;
//int dataRS=0;

void loop() {

// put your main code here, to run repeatedly:


//sensorValue = analogRead(sensorPin); // read the value from the sensor
if(analogRead(sensorLDR)<300) Serial.println("Sunny");
else if(analogRead(sensorLDR)>500) Serial.println("Cloudy");
else Serial.println(sensorLDR); //prints the values coming from the sensor on the
screen

if(analogRead(sensorRS)<500) Serial.println("Rain");
else if(analogRead(sensorRS)>500) Serial.println("No Rain");
//else Serial.println("No Rain");

if(analogRead(sensorLDR)<300&&analogRead(sensorRS)<500)
{
if(x==1)Serial.println("Backward");
{
Serial.println("Backward"); //motor clockwise
for (int i=0; i<1250; i++)
{
backward();
digitalWrite(in1, LOW);
delay(300);

}
x=0;
}
}

else if (analogRead(sensorLDR)>500&&analogRead(sensorRS)>500)
{
if(x==0) Serial.println("Forward");
{
Serial.println("Forward");//motor anticlockwise

for (int i=0; i<1200; i++)


{
forward();
digitalWrite(in1, HIGH);
delay(300);
}
x=1;
}
}
else if (analogRead(sensorLDR)<300&&analogRead(sensorRS)>500)
{
if(x==0)Serial.println("Forward");
{
Serial.println("Forward");//motor anticlockwise

for (int i=0; i<1200; i++)


{
forward();
digitalWrite(in1, HIGH);
delay(300);
//digitalWrite(in1, HIGH);
//delay(3000);
}
x=1;
}
}
else if (analogRead(sensorLDR)>500&&analogRead(sensorRS)<500)
{
if(x==1)Serial.println("Backward");
{
Serial.println("Backward"); //motor clockwise
for (int i=0; i<1250; i++)
{
backward();
digitalWrite(in1, LOW);
delay(300);
}
x=0;
}
}

}*/
delay(200);
}

You might also like