int flexiForcePin_1 = A0; //analog pin 0 int pin_p_1 = 6 ; // int flexiForcePin_2 = A1; //analog pin 0 int pin_p_2 = 5 ; // int flexiForcePin_3 = A2; //analog pin 0 int pin_p_3 = 3 ; // int valArray[9]; int valInitArray[9]; bool boolArray[9]; int sum = 0; void setup() { // put your setup code here, to run once: Serial.begin(9600); pinMode(pin_p_1, OUTPUT); pinMode(pin_p_2, OUTPUT); pinMode(pin_p_3, OUTPUT); digitalWrite(pin_p_1,LOW); digitalWrite(pin_p_2,LOW); digitalWrite(pin_p_3,LOW); digitalWrite(pin_p_3,HIGH); valInitArray[6] = analogRead(flexiForcePin_1); valInitArray[0] = analogRead(flexiForcePin_2); valInitArray[3] = analogRead(flexiForcePin_3); digitalWrite(pin_p_3,LOW); digitalWrite(pin_p_2,HIGH); valInitArray[7] = analogRead(flexiForcePin_1); valInitArray[1] = analogRead(flexiForcePin_2); valInitArray[4] = analogRead(flexiForcePin_3); digitalWrite(pin_p_2,LOW); digitalWrite(pin_p_1,HIGH); valInitArray[8] = analogRead(flexiForcePin_1); valInitArray[2] = analogRead(flexiForcePin_2); valInitArray[5] = analogRead(flexiForcePin_3); digitalWrite(pin_p_1,LOW); } void loop() { digitalWrite(pin_p_1,LOW); digitalWrite(pin_p_2,LOW); digitalWrite(pin_p_3,LOW); // put your main code here, to run repeatedly: digitalWrite(pin_p_3,HIGH); valArray[6] = analogRead(flexiForcePin_1); valArray[0] = analogRead(flexiForcePin_2); valArray[3] = analogRead(flexiForcePin_3); digitalWrite(pin_p_3,LOW); digitalWrite(pin_p_2,HIGH); valArray[7] = analogRead(flexiForcePin_1); valArray[1] = analogRead(flexiForcePin_2); valArray[4] = analogRead(flexiForcePin_3); digitalWrite(pin_p_2,LOW); digitalWrite(pin_p_1,HIGH); valArray[8] = analogRead(flexiForcePin_1); valArray[2] = analogRead(flexiForcePin_2); valArray[5] = analogRead(flexiForcePin_3); digitalWrite(pin_p_1,LOW); //ARIK'S LOOP // for(int i = 0; i < 8; i++){ // Serial.print(valArray[i]); // Serial.print(","); // } // Serial.println(valArray[8]); sum = 0; for(int k = 0; k < 9; k++){ if(valArray[k] > valInitArray[k] + 90) {//30 success//50 boolArray[k] = 1; sum++; }else { boolArray[k] = 0; } } for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { Serial.print(boolArray[3*i + j]); Serial.print("\t"); } Serial.println(); } if(sum == 3){ if(boolArray[0] + boolArray[1] + boolArray[2] == 3){ Serial.println("Wall Top"); }else if(boolArray[3] + boolArray[4] + boolArray[5] == 3){ Serial.println("Wall Middle Hori"); }else if(boolArray[6] + boolArray[7] + boolArray[8] == 3){ Serial.println("Wall Bottom"); } if(boolArray[0] + boolArray[3] + boolArray[6] == 3){ Serial.println("Wall Left"); }else if(boolArray[1] + boolArray[4] + boolArray[7] == 3){ Serial.println("Wall Middle Vert "); }else if(boolArray[2] + boolArray[5] + boolArray[8] == 3){ Serial.println("Wall Right"); } }else if(sum == 4) { if(boolArray[0] + boolArray[1] + boolArray[3] + boolArray[4] == 4){ Serial.println("Bottom Right Edge"); }else if(boolArray[1] + boolArray[2] + boolArray[4] + boolArray[5] == 4){ Serial.println("Bottom Left edge"); }else if(boolArray[6] + boolArray[7] + boolArray[3] + boolArray[4] == 4){ Serial.println("Top Right Edge"); }else if(boolArray[8] + boolArray[7] + boolArray[5] + boolArray[4] == 4){ Serial.println("Top Left Edge"); } }else if(sum == 5) { if(boolArray[0] + boolArray[1] + boolArray[3] + boolArray[4] == 0){ Serial.println("Bottom Right Corner"); }else if(boolArray[1] + boolArray[2] + boolArray[4] + boolArray[5] == 0){ Serial.println("Bottom Left Corner"); }else if(boolArray[6] + boolArray[7] + boolArray[3] + boolArray[4] == 0){ Serial.println("Top Right Corner"); }else if(boolArray[8] + boolArray[7] + boolArray[5] + boolArray[4] == 0){ Serial.println("Top Left Corner"); } }else if(sum == 6){ if(boolArray[0] + boolArray[1] + boolArray[2] == 0){ Serial.println("Top Edge"); }else if(boolArray[3] + boolArray[4] + boolArray[5] == 0){ Serial.println("Middle Hori Edge"); }else if(boolArray[6] + boolArray[7] + boolArray[8] == 0){ Serial.println("Bottom Edge"); } if(boolArray[0] + boolArray[3] + boolArray[6] == 0){ Serial.println("Left Edge"); }else if(boolArray[1] + boolArray[4] + boolArray[7] == 0){ Serial.println("Middle Vert Edge "); }else if(boolArray[2] + boolArray[5] + boolArray[8] == 0){ Serial.println("Right Edge"); } } Serial.println("\n"); // delay(100); }