Color Sorting Machine
Color Sorting Machine
h>
#define S0 2
#define S1 3
#define S2 4
#define S3 5
#define sensorOut 6
Servo topServo;
Servo bottomServo;
int frequency = 0;
int color=0;
void setup() {
pinMode(S0, OUTPUT);
pinMode(S1, OUTPUT);
pinMode(S2, OUTPUT);
pinMode(S3, OUTPUT);
pinMode(sensorOut, INPUT);
// Setting frequency-scaling to 20%
digitalWrite(S0, HIGH);
digitalWrite(S1, LOW);
topServo.attach(7);
bottomServo.attach(8);
Serial.begin(9600);
}
void loop() {
topServo.write(115);
delay(500);
color = readColor();
delay(10);
switch (color) {
case 1:
bottomServo.write(85);
break;
case 2:
bottomServo.write(105);
break;
case 3:
bottomServo.write(125);
break;
case 4:
bottomServo.write(150);
break;
case 0:
break;
}
delay(300);
if(R>92 & R<110 & G>105 & G<135 & B>105 &B<122){
color = 2; // Green
}
if(R>73 & R<93 & G>95 & G<117 & B>100 &B<118){
color = 3; // Yellow
}
if(R>87 & R<115 & G>105 & G<130 & B>80 &B<105){
color = 4; // Blue
}
return color;
}