Professional Documents
Culture Documents
//gripper part
#define redpin 0
#define bluepin 1
#define greenpin 2
//line follower
int count = 0;
void setup()
{
pinMode(leftmotor1, OUTPUT);
pinMode(leftmotor2, OUTPUT);
pinMode(rightmotor1, OUTPUT);
pinMode(rightmotor2, OUTPUT);
pinMode(elbowmotor1, OUTPUT);
pinMode(elbowmotor2, OUTPUT);
pinMode(gripmotor1, OUTPUT);
pinMode(gripmotor2, OUTPUT);
pinMode(pin_ir1, INPUT);
pinMode(pin_ir2, INPUT);
pinMode(pin_ir3, INPUT);
pinMode(redpin, INPUT);
pinMode(bluepin, INPUT);
pinMode(greenpin, INPUT);
digitalWrite(leftmotor1, LOW);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,LOW);
digitalWrite(elbowmotor1, LOW);
digitalWrite(elbowmotor2,LOW);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,LOW);
}
void redfn(){
digitalWrite(elbowmotor1, HIGH);
digitalWrite(elbowmotor2,LOW);
delay(100);
digitalWrite(elbowmotor1, LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(gripmotor1, HIGH);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,HIGH);
delay(100);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
delay(1000);
while(1)
{
int ir1 = digitalRead(pin_ir1);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
digitalWrite(leftmotor1,LOW);
digitalWrite(leftmotor2,HIGH);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,HIGH);
if(ir3==1)
{
count=count+1;
delay(500);
if(count==1)
digitalWrite(leftmotor1, LOW);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,LOW);
delay(200);
digitalWrite(elbowmotor1, HIGH);
digitalWrite(elbowmotor2,LOW);
delay(100);
digitalWrite(elbowmotor1, LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,HIGH);
delay(40);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,HIGH);
delay(100);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
count=0;
break;
void bluefn(){
digitalWrite(elbowmotor1, HIGH);
digitalWrite(elbowmotor2,LOW);
delay(100);
digitalWrite(elbowmotor1, LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(gripmotor1, HIGH);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,HIGH);
delay(100);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
delay(1000);
while(1)
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
digitalWrite(leftmotor1,LOW);
digitalWrite(leftmotor2,HIGH);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,HIGH);
}
if(ir3==1)
count=count+1;
delay(500);
}else{count=count;}
if(count==2)
digitalWrite(leftmotor1, LOW);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,LOW);
delay(200);
digitalWrite(elbowmotor1, HIGH);
digitalWrite(elbowmotor2,LOW);
delay(100);
digitalWrite(elbowmotor1, LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,HIGH);
delay(40);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,HIGH);
delay(100);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
count=0;
break;
void greenfn(){
digitalWrite(elbowmotor1, HIGH);
digitalWrite(elbowmotor2,LOW);
delay(100);
digitalWrite(elbowmotor1, LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(gripmotor1, HIGH);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor1,HIGH);
delay(100);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor1,LOW);
delay(200);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
delay(1000);
while(1)
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
digitalWrite(leftmotor1,LOW);
digitalWrite(leftmotor2,HIGH);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,HIGH);
if(ir3==1)
count=count+1;
delay(500);
}else{count=count;}
if(count==3)
digitalWrite(leftmotor1, LOW);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,LOW);
delay(200);
digitalWrite(elbowmotor1, HIGH);
digitalWrite(elbowmotor2,LOW);
delay(100);
digitalWrite(elbowmotor1, LOW);
digitalWrite(elbowmotor2,LOW);
delay(200);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,HIGH);
delay(40);
digitalWrite(gripmotor1, LOW);
digitalWrite(gripmotor2,LOW);
delay(40);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor1,HIGH);
delay(100);
digitalWrite(elbowmotor1,LOW);
digitalWrite(elbowmotor1,LOW);
delay(200);
count=0;
break;
void loop()
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
}
digitalWrite(leftmotor1,LOW);
digitalWrite(leftmotor2,HIGH);
digitalWrite(rightmotor1, HIGH);
digitalWrite(rightmotor2,LOW);
digitalWrite(leftmotor1, HIGH);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,HIGH);
digitalWrite(leftmotor1, LOW);
digitalWrite(leftmotor2,LOW);
digitalWrite(rightmotor1, LOW);
digitalWrite(rightmotor2,LOW);
if(red==1)
redfn();
else if(blue==1)
bluefn();
else if(green==1)
{
greenfn();