קוד עכביש בלוטוס
#define CUSTOM_SETTINGS
#define INCLUDE_GAMEPAD_MODULE
#include <Dabble.h>
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();
// #include <IRremote.h>
// #define IR_RECEIVE_PIN 3
int last_x1, last_x2, last_x3, last_x4, last_x5, last_x6, last_x7, last_x8;
// YELLOW BLACK::
#define SERVO_1 12
#define SERVO_2 13
#define SERVO_3 0
#define SERVO_4 1
#define SERVO_5 2
#define SERVO_6 3
#define SERVO_7 14
#define SERVO_8 15
// RED 3
int ServoArray[19][3] = { { 0, 0, 0 },
{ 90, 2, 1 },
{ 60, 5, 2 },
{ 90, 5, 3 },
{ 120, 2, 4 }, //3 4
{ 60, 5, 5 },
{ 60, 5, 6 },
{ 90, 5, 7 },
{ 120, 5, 8 },
{ 90, 5, 9 } };
// BLUE REMOTE
#define UP_ARROW_BLUE 22
#define DOWN_ARROW_BLUE 26
#define RIGHT_ARROW_BLUE 80
#define LEFT_ARROW_BLUE 81
// REMOTE TV BUTTONS
#define UP_ARROW 96
#define DOWN_ARROW 97
#define LEFT_ARROW 101
#define RIGHT_ARROW 98
#define RIGHT_ARROW_1 1728
#define UP_RIGHT 31
#define UP_LEFT 75
#define DOWN_RIGHT 45
#define DOWN_LEFT 88
#define MIDDLE_ARROW 104
#define UP_VOLUME 7
#define DOWN_VOLUME 11
#define CHANNEL_UP 18
#define CHANNEL_DOWN 16
#define RED_BUTTON 108
#define GREEN_BUTTON 20
#define YELLOW_BUTTON 21
#define BLUE_BUTTON 22
#define CONTENT_BUTTON 121
#define MUTE_BUTTON 15
#define BUTTON_0 17
#define BUTTON_1 4
#define BUTTON_2 5
#define BUTTON_3 6
#define BUTTON_4 8
#define BUTTON_5 9
#define BUTTON_6 10
#define BUTTON_7 12
#define BUTTON_8 13
#define BUTTON_9 14
long previousMillis = 0;
long Interval = 300; // millis()
long ReceivedValue;
int x;
int localSpeed = 3;
int StandMode = 1;
// RF433
// #include <Udi_RF433Remote.h>
// #include <RCSwitch.h>
// RCSwitch mySwitch = RCSwitch()
#define buzzer 11
void setup() {
// pinMode(3, OUTPUT);
// pinMode(4, OUTPUT);
// digitalWrite(3, LOW);
// digitalWrite(4, HIGH);
// delay(500);
Serial.begin(115200);
Dabble.begin(9600);
// mySwitch.enableReceive(0);
//delay(100);
pinMode(buzzer, OUTPUT);
// IrReceiver.begin(IR_RECEIVE_PIN);
// randomSeed(analogRead(0));
pwm.begin();
pwm.setOscillatorFrequency(27000000);
pwm.setPWMFreq(50); // Analog servos run at ~50 Hz updates
// moveForward();
delay(200);
goMiddle();
delay(500);
// changeStandAngle();
// delay(1000);
// changeStandAngle();
// delay(1000);
// goMiddle();
// delay(500);
// delay(999999);
// sameBehavior(3);
}
void loop() {
x = 40;
// handleRF433();
handlaBluetooth();
// handle_IR();
// handleButtons();
}
void handlaBluetooth() {
Dabble.processInput();
if (GamePad.isUpPressed()) {
Serial.println("UP");
moveForward();
} else if (GamePad.isDownPressed()) {
Serial.println("DOWN");
moveBackward();
} else if (GamePad.isLeftPressed()) {
Serial.println("Left");
moveLeft();
} else if (GamePad.isRightPressed()) {
Serial.println("Right");
moveRight();
}
else {
goMiddle();
}
if (GamePad.isSquarePressed()) Serial.println("Square");
if (GamePad.isCirclePressed()) Serial.println("Circle");
if (GamePad.isCrossPressed()) Serial.println("Cross");
if (GamePad.isTrianglePressed()) Serial.println("Triangle");
}
void handle_IR() {
// if (millis() - previousMillis > Interval) {
// // Stop();
// Serial.println("=============== NOT RF");
// }
// if (IrReceiver.decode()) {
// Serial.println("Receiver IR Code");
// IrReceiver.resume();
// Serial.println(IrReceiver.decodedIRData.command);
// previousMillis = millis();
// if (IrReceiver.decodedIRData.command == UP_ARROW || IrReceiver.decodedIRData.command == UP_ARROW_BLUE) {
// moveForward();
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == DOWN_ARROW || IrReceiver.decodedIRData.command == DOWN_ARROW_BLUE) {
// moveBackward();
// // delay(500);
// }
// if (IrReceiver.decodedIRData.command == LEFT_ARROW || IrReceiver.decodedIRData.command == LEFT_ARROW_BLUE) {
// // delay(500);
// moveLeft();
// } else if (IrReceiver.decodedIRData.command == RIGHT_ARROW || IrReceiver.decodedIRData.command == RIGHT_ARROW_BLUE) {
// moveRight();
// // delay(500);
// }
// else if (IrReceiver.decodedIRData.command == UP_VOLUME) {
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == DOWN_VOLUME) {
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == UP_RIGHT) {
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == UP_LEFT) {
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == DOWN_RIGHT) {
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == DOWN_LEFT) {
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == CONTENT_BUTTON) {
// // delay(500);
// } else if (IrReceiver.decodedIRData.command == MIDDLE_ARROW) {
// changeStandAngle();
// }
// else if (IrReceiver.decodedIRData.command == BUTTON_1) {
// sayHi_handNum(2);
// goMiddle();
// // BEEP(3);
// } else if (IrReceiver.decodedIRData.command == BUTTON_2) {
// goLegs2_4_6_8(-80, 80, 0);
// goLegs2_4_6_8(80, -80, 0);
// goMiddle();
// } else if (IrReceiver.decodedIRData.command == BUTTON_3) {
// sayHi_handNum(1);
// goMiddle();
// } else if (IrReceiver.decodedIRData.command == BUTTON_4) {
// goLegs2_4_6_8(0, -60, 1);
// goLegs1_3_5_7(0, -70, 0);
// goLegs1_3_5_7(-70, 70, 0);
// goLegs1_3_5_7(70, -70, 0);
// goLegs1_3_5_7(-70, 0, 0);
// goMiddle();
// } else if (IrReceiver.decodedIRData.command == BUTTON_5) {
// doggy();
// }
// // Stop();
// }
}
void randomBehavior(int num) {
for (int myNum = 0; myNum < num; myNum++) {
int randNumber = random(1, 9);
int randRepeat = random(1, 4);
switch (randNumber) {
case 1:
for (int i = 0; i < randRepeat; i++)
moveForward();
break;
case 2:
for (int i = 0; i < randRepeat; i++)
moveBackward();
break;
case 3:
for (int i = 0; i < randRepeat; i++)
moveLeft();
break;
case 4:
for (int i = 0; i < randRepeat; i++)
moveRight();
break;
case 5:
changeStandAngle();
break;
case 6:
sayHi_handNum(2);
break;
case 7:
sayHi_handNum(1);
break;
case 8:
doggy();
break;
}
}
goMiddle();
}
void sameBehavior(int num) {
for (int myNum = 0; myNum < num; myNum++) {
doggy();
moveForward();
moveForward();
sayHi_handNum(2);
moveBackward();
moveBackward();
sayHi_handNum(2);
sayHi_handNum(1);
moveRight();
moveRight();
doggy();
changeStandAngle();
changeStandAngle();
moveLeft();
moveLeft();
moveLeft();
changeStandAngle();
changeStandAngle();
moveRight();
changeStandAngle();
sayHi_handNum(2);
sayHi_handNum(1);
doggy();
}
goMiddle();
}
void sayHi_handNum(int hand) { // Hi right hand
if (hand == 1) {
settarget(9, 150);
moveTo_clockWise(0, 90, -70, 0, 0, 0, 50, 0, 15);
delay(300);
for (int i = 0; i < 4; i++) {
moveTo_clockWise(40, 90, -70, 0, 0, 0, 50, 0, 25);
moveTo_clockWise(-40, 90, -70, 0, 0, 0, 50, 0, 25);
}
}
if (hand == 2) {
settarget(9, 30);
moveTo_clockWise(-50, 0, 0, 0, 80, 0, 0, 0, 15);
for (int i = 0; i < 4; i++) {
moveTo_clockWise(-50, 0, 0, 0, 80, 0, 40, 90, 25);
moveTo_clockWise(-50, 0, 0, 0, 80, 0, -40, 90, 25);
}
}
settarget(9, 90);
}
void changeStandAngle() {
BEEP(1);
switch (StandMode) {
case 1:
goLegs2_4_6_8(0, -40, 0);
break;
case 2:
goLegs2_4_6_8(-40, -80, 0);
break;
case 3:
goLegs2_4_6_8(-80, 30, 0);
break;
case 4:
goLegs2_4_6_8(30, 60, 0);
break;
case 5:
goLegs2_4_6_8(60, 80, 0);
break;
}
if (StandMode < 5) StandMode++;
else StandMode = 1;
}
void doggy() {
int myDelay = 12;
moveTo_clockWise(-35, 40, 0, -30, 0, -30, 40, 40, myDelay);
int move = 65;
for (int n = 0; n < 3; n++) {
settarget(9, 140);
for (int i = -move; i < move; i += 2) {
moveTo_clockWise(-35, 40, i, -30, i, -30, 40, 40, 0);
}
settarget(9, 40);
for (int i = move; i > -move; i -= 2) {
moveTo_clockWise(-35, 40, i, -30, i, -30, 40, 40, 0);
}
}
settarget(9, 90);
}
void moveForward() {
BEEP(1);
int myDelay = 12;
// udi test 241003 :
int x20 = 40;
int x40 = 40;
int x50 = 60;
// WAS THIS:
// int x20 = 20;
// int x40 = 40;
// int x50 = 50;
moveTo(0, 0, 0, 0, -40, 0, 30, 0, myDelay); // step 0
moveTo(0, 0, 0, 0, -x40, 0, 30, -x40, myDelay); //LEG D up
moveTo(0, 0, 0, 0, -x40, 0, -x20, -x40, myDelay); // step 1 // D move
moveTo(0, 0, 0, 0, -x40, 0, -x20, 0, myDelay); // step 2 // D Down
moveTo(-x40, 0, -x20, 0, 0, 0, 0, 0, myDelay); // step 3 // move D,A
moveTo(-x40, 0, -x20, -x50, 0, 0, 0, 0, myDelay); // step 4 // B up
moveTo(-x40, 0, x40, -x50, 0, 0, 0, 0, myDelay); // step 4 // B move
moveTo(-x40, 0, x40, 0, 0, 0, 0, 0, myDelay); // step 5 // B DOWN
moveTo(-x40, x40, x40, 0, 0, 0, 0, 0, myDelay); // step 6 // A UP
moveTo(x20, x40, x40, 0, 0, 0, 0, 0, myDelay); // step 6 // A MOVE
moveTo(x20, 0, x40, 0, 0, 0, 0, 0, myDelay); // step 7 // A DOWN
moveTo(0, 0, 0, 0, x20, 0, x40, 0, myDelay); // step 8 // ALL Legs Move
moveTo(0, 0, 0, 0, 0, x40, x40, 0, myDelay); // step 9 // C UP
moveTo(0, 0, 0, 0, -x40, x40, x40, 0, myDelay); // step 9 // C MOVE
moveTo(0, 0, 0, 0, -x40, 0, x40, 0, myDelay); // step 10 // C DOWN
}
void moveBackward() {
BEEP(1);
int myDelay = 12;
BEEP(1);
moveTo(0, 0, 0, 0, -40, 0, 40, 0, myDelay); // step 10 // C DOWN
moveTo(0, 0, 0, 0, -40, 40, 40, 0, myDelay); // step 9 // C MOVE
moveTo(0, 0, 0, 0, 0, 40, 40, 0, myDelay); // step 9 // C UP
moveTo(0, 0, 0, 0, 20, 0, 40, 0, myDelay); // step 8 // ALL Legs Move
moveTo(20, 0, 40, 0, 0, 0, 0, 0, myDelay); // step 7 // A DOWN
moveTo(20, 40, 40, 0, 0, 0, 0, 0, myDelay); // step 6 // A MOVE
moveTo(-40, 40, 40, 0, 0, 0, 0, 0, myDelay); // step 6 // A UP
moveTo(-40, 0, 40, 0, 0, 0, 0, 0, myDelay); // step 5 // B DOWN
moveTo(-40, 0, 40, -50, 0, 0, 0, 0, myDelay); // step 4 // B move
moveTo(-40, 0, -20, -50, 0, 0, 0, 0, myDelay); // step 4 // B up
moveTo(-40, 0, -20, 0, 0, 0, 0, 0, myDelay); // step 3 // move D,A
moveTo(0, 0, 0, 0, -40, 0, -20, 0, myDelay); // step 2 // D Down
moveTo(0, 0, 0, 0, -40, 0, -20, -40, myDelay); // step 1 // D move
moveTo(0, 0, 0, 0, -40, 0, 30, -40, myDelay); //LEG D up
moveTo(0, 0, 0, 0, -40, 0, 30, 0, myDelay); // step 0
}
void moveBackwardTest() {
int myDelay = 10;
moveTo(0, 0, 0, 0, -40, 0, 30, 0, myDelay); // step 0
moveTo(0, 0, 0, 0, -40, 40, 30, 0, myDelay); //step 1 // LEG C up
moveTo(0, 0, 0, 0, 10, 40, 30, 0, myDelay); // step 1 // C move
moveTo(0, 0, 0, 0, 10, 0, 30, 0, myDelay); // step 2 // C Down
moveTo(0, 0, 0, 0, 0, 0, 30, 0, myDelay); // step 3 // move D,A
moveTo(-40, 0, -20, -50, 0, 0, 0, 0, myDelay); // step 4 // B up
moveTo(-40, 0, 40, -50, 0, 0, 0, 0, myDelay); // step 4 // B move
moveTo(-40, 0, 40, 0, 0, 0, 0, 0, myDelay); // step 5 // B DOWN
moveTo(-40, 40, 40, 0, 0, 0, 0, 0, myDelay); // step 6 // A UP
moveTo(20, 40, 40, 0, 0, 0, 0, 0, myDelay); // step 6 // A MOVE
moveTo(20, 0, 40, 0, 0, 0, 0, 0, myDelay); // step 7 // A DOWN
moveTo(0, 0, 0, 0, 20, 0, 40, 0, myDelay); // step 8 // ALL Legs Move
moveTo(0, 0, 0, 0, 0, 40, 40, 0, myDelay); // step 9 // C UP
moveTo(0, 0, 0, 0, -40, 40, 40, 0, myDelay); // step 9 // C MOVE
moveTo(0, 0, 0, 0, -40, 0, 40, 0, myDelay); // step 10 // C DOWN
}
void moveToTest1(int x1, int x2, int x3, int x4, int x5, int x6, int x7, int x8, int myDelay) {
if (x1 != last_x1) {
settarget(SERVO_1, ServoArray[1][0] + x1);
delay(myDelay);
}
if (x3 != last_x3) {
settarget(SERVO_3, ServoArray[3][0] + x3);
delay(myDelay);
}
if (x5 != last_x5) {
settarget(SERVO_5, ServoArray[5][0] + x5);
delay(myDelay);
}
if (x7 != last_x7) {
settarget(SERVO_7, ServoArray[7][0] + x7);
delay(myDelay);
}
if (x2 != last_x2) {
settarget(SERVO_2, ServoArray[2][0] + x2);
delay(myDelay);
}
if (x4 != last_x4) {
settarget(SERVO_4, ServoArray[4][0] + x4);
delay(myDelay);
}
if (x6 != last_x6) {
settarget(SERVO_6, ServoArray[6][0] + x6);
delay(myDelay);
}
if (x8 != last_x8) {
settarget(SERVO_8, ServoArray[8][0] + x8);
delay(myDelay);
}
last_x1 = x1;
last_x2 = x2;
last_x3 = x3;
last_x4 = x4;
last_x5 = x5;
last_x6 = x6;
last_x7 = x7;
last_x8 = x8;
}
void moveTo(int x1, int x2, int x3, int x4, int x5, int x6, int x7, int x8, int myDelay) {
settarget(SERVO_1, ServoArray[1][0] + x1);
delay(myDelay);
settarget(SERVO_3, ServoArray[3][0] + x3);
delay(myDelay);
settarget(SERVO_5, ServoArray[5][0] + x5);
delay(myDelay);
settarget(SERVO_7, ServoArray[7][0] + x7);
delay(myDelay);
settarget(SERVO_2, ServoArray[2][0] + x2);
delay(myDelay);
settarget(SERVO_4, ServoArray[4][0] + x4);
delay(myDelay);
settarget(SERVO_6, ServoArray[6][0] + x6);
delay(myDelay);
settarget(SERVO_8, ServoArray[8][0] + x8);
delay(myDelay);
}
void moveTo_clockWise(int x1, int x2, int x3, int x4, int x5, int x6, int x7, int x8, int myDelay) {
//moveTo(-40 , 40 , -40 , -40 , -40, 40, -40, -40, 15); // ALL RIGTH (CW) and UP
// - + - - - + - -
settarget(SERVO_1, ServoArray[1][0] - x1);
delay(myDelay);
settarget(SERVO_2, ServoArray[2][0] + x2);
delay(myDelay);
settarget(SERVO_3, ServoArray[3][0] - x3);
delay(myDelay);
settarget(SERVO_4, ServoArray[4][0] - x4);
delay(myDelay);
settarget(SERVO_5, ServoArray[5][0] - x5);
delay(myDelay);
settarget(SERVO_6, ServoArray[6][0] + x6);
delay(myDelay);
settarget(SERVO_7, ServoArray[7][0] - x7);
delay(myDelay);
settarget(SERVO_8, ServoArray[8][0] - x8);
delay(myDelay);
}
void moveLeft() {
BEEP(1);
int myDelay = 10;
int move = 70;
int up = 40;
moveTo(0, up, 0, 0, 0, up, 0, 0, myDelay); // A+C UP
moveTo(move, up, 0, 0, move, up, 0, 0, myDelay); // A+C MOVE
moveTo(move, 0, 0, 0, move, 0, 0, 0, myDelay); // A+C DOWN
moveTo(move, 0, 0, -up, move, 0, 0, -up, myDelay); // B+D UP
moveTo(move, 0, move, -up, move, 0, move, -up, myDelay); // B+D MOVE
moveTo(move, 0, move, 0, move, 0, move, 0, myDelay); // B+D DOWN
moveTo(0, 0, 0, 0, 0, 0, 0, 0, myDelay); // ALL LEGS BACK
// UDI source :
// moveTo(0, 40, 0, 0, 0, 40, 0, 0, myDelay); // A+C UP
// moveTo(40, 40, 0, 0, 40, 40, 0, 0, myDelay); // A+C MOVE
// moveTo(40, 0, 0, 0, 40, 0, 0, 0, myDelay); // A+C DOWN
// moveTo(40, 0, 0, -60, 40, 0, 0, -40, myDelay); // B+D UP
// moveTo(40, 0, 40, -60, 40, 0, 40, -40, myDelay); // B+D MOVE
// moveTo(40, 0, 40, 0, 40, 0, 40, 0, myDelay); // B+D DOWN
// moveTo(0, 0, 0, 0, 0, 0, 0, 0, myDelay); // ALL LEGS BACK
}
void moveRight() {
BEEP(1);
int move = 70;
int up = 40;
int myDelay = 10;
moveTo(0, up, 0, 0, 0, up, 0, 0, myDelay); // A+C UP
moveTo(-move, up, 0, 0, -move, up, 0, 0, myDelay); // A+C MOVE ClockWise
moveTo(-move, 0, 0, 0, -move, 0, 0, 0, myDelay); // A+C DOWN
moveTo(-move, 0, 0, -up, -move, 0, 0, -up, myDelay); // B+D UP
moveTo(-move, 0, -move, -up, -move, 0, -move, -up, myDelay); // B+D MOVE ClockWise
moveTo(-move, 0, -move, 0, -move, 0, -move, 0, myDelay); // B+D DOWN
moveTo(0, 0, 0, 0, 0, 0, 0, 0, myDelay); // ALL LEGS BACK
}
void BEEP(int Repeat) {
for (int i = 0; i < Repeat; i++) {
digitalWrite(buzzer, HIGH);
delay(30);
digitalWrite(buzzer, LOW);
delay(30);
}
}
void settarget(int servo, int target) {
target = map(target, 0, 180, 800, 2200); // relativity - changes from angle to servo instructions
pwm.writeMicroseconds(servo, target);
}
// void handleRF433() {
// if (millis() - previousMillis > Interval) {
// Serial.println("=============== NOT RF");
// }
// ReceivedValue = 0;
// if (mySwitch.available()) {
// if (mySwitch.getReceivedValue()) {
// ReceivedValue = mySwitch.getReceivedValue();
// }
// mySwitch.resetAvailable();
// previousMillis = millis();
// // Serial.print(millis());
// // Serial.print(" ");
// Serial.println(ReceivedValue);
// }
// delay(5);
// }
void goLegs2_4_6_8(int From, int To, int myDelay) {
if (From < To)
for (int x = From; x <= To; x += 2) {
settarget(SERVO_2, ServoArray[2][0] - x);
delay(myDelay);
settarget(SERVO_4, ServoArray[4][0] + x);
delay(myDelay);
settarget(SERVO_6, ServoArray[6][0] - x);
delay(myDelay);
settarget(SERVO_8, ServoArray[8][0] + x);
delay(myDelay);
}
else
for (int x = From; x >= To; x -= 1) {
settarget(SERVO_2, ServoArray[2][0] - x);
delay(myDelay);
settarget(SERVO_4, ServoArray[4][0] + x);
delay(myDelay);
settarget(SERVO_6, ServoArray[6][0] - x);
delay(myDelay);
settarget(SERVO_8, ServoArray[8][0] + x);
delay(myDelay);
}
}
void goLegs1_3_5_7(int From, int To, int myDelay) {
if (From < To)
for (int x = From; x <= To; x += 1) {
settarget(SERVO_1, ServoArray[1][0] + x);
delay(myDelay);
settarget(SERVO_3, ServoArray[3][0] + x);
delay(myDelay);
settarget(SERVO_5, ServoArray[5][0] + x);
delay(myDelay);
settarget(SERVO_7, ServoArray[7][0] + x);
delay(myDelay);
}
else
for (int x = From; x >= To; x -= 1) {
settarget(SERVO_1, ServoArray[1][0] + x);
delay(myDelay);
settarget(SERVO_3, ServoArray[3][0] + x);
delay(myDelay);
settarget(SERVO_5, ServoArray[5][0] + x);
delay(myDelay);
settarget(SERVO_7, ServoArray[7][0] + x);
delay(myDelay);
}
}
void goMiddle() {
// for (int x = 1; x <= 8; x++) {
// settarget(x, ServoArray[x][0]);
// delay(15);
// }
goMiddleAndDegree(0);
}
void goMiddleAndDegree(int DIG) {
settarget(SERVO_1, ServoArray[1][0] + DIG);
settarget(SERVO_2, ServoArray[2][0] - DIG);
settarget(SERVO_3, ServoArray[3][0] + DIG);
settarget(SERVO_4, ServoArray[4][0] + DIG);
settarget(SERVO_5, ServoArray[5][0] + DIG);
settarget(SERVO_6, ServoArray[6][0] - DIG);
settarget(SERVO_7, ServoArray[7][0] + DIG);
settarget(SERVO_8, ServoArray[8][0] + DIG);
}
void handleButtons() {
// switch (ReceivedValue) {
// case REMOTE_SHOP_01_01:
// case REMOTE_SHOP_02_01:
// case REMOTE_SHOP_03_01:
// case REMOTE_HOME_3_01:
// Serial.println(">>>>>>>>>>>>>>>>>>>> CASE 01");
// moveForward();
// break;
// case REMOTE_SHOP_01_02:
// case REMOTE_SHOP_02_02:
// case REMOTE_SHOP_03_02:
// case REMOTE_HOME_3_02:
// Serial.println(">>>>>>>>>>>>>>>>>>>> CASE 02");
// moveBackward();
// //goLegs1_3_5_7( 0, 50, localSpeed);
// // BEEP(3);
// break;
// case REMOTE_SHOP_01_03:
// case REMOTE_SHOP_02_03:
// case REMOTE_SHOP_03_03:
// case REMOTE_HOME_3_03:
// moveLeft();
// Serial.println(">>>>>>>>>>>>>>>>>>>> CASE 03");
// break;
// case REMOTE_SHOP_01_04:
// case REMOTE_SHOP_02_04:
// case REMOTE_SHOP_03_04:
// case REMOTE_HOME_3_04:
// Serial.println(">>>>>>>>>>>>>>>>>>>> CASE 04");
// moveRight();
// break;
// case REMOTE_SHOP_01_05:
// case REMOTE_SHOP_02_05:
// case REMOTE_SHOP_03_05:
// case REMOTE_HOME_3_05:
// // goMiddle();
// changeStandAngle();
// Serial.println(">>>>>>>>>>>>>>>>>>>> CASE 05");
// break;
// case REMOTE_SHOP_01_06:
// // case REMOTE_SHOP_02_06:
// // case REMOTE_SHOP_03_06:
// case REMOTE_HOME_3_06:
// Serial.println(">>>>>>>>>>>>>>>>>>>> CASE 06");
// goLegs2_4_6_8(-80, 80, 0);
// goLegs2_4_6_8(80, -80, 0);
// goMiddle();
// BEEP(3);
// break;
// case REMOTE_SHOP_01_07:
// // case REMOTE_SHOP_02_07:
// // case REMOTE_SHOP_03_07:
// case REMOTE_HOME_3_07:
// BEEP(1);
// sayHi_handNum(2);
// goMiddle();
// break;
// case REMOTE_SHOP_01_08:
// // case REMOTE_SHOP_02_08:
// // case REMOTE_SHOP_03_08:
// case REMOTE_HOME_3_08:
// // BEEP(1);
// goLegs2_4_6_8(0, -60, 1);
// goLegs1_3_5_7(0, -70, 0);
// goLegs1_3_5_7(-70, 70, 0);
// goLegs1_3_5_7(70, -70, 0);
// goLegs1_3_5_7(-70, 0, 0);
// goMiddle();
// // BEEP(3);
// break;
// case REMOTE_SHOP_01_09:
// // case REMOTE_SHOP_02_09:
// // case REMOTE_SHOP_03_09:
// case REMOTE_HOME_3_09:
// BEEP(1);
// sayHi_handNum(1);
// goMiddle();
// break;
// case REMOTE_HOME_3_10:
// break;
// case REMOTE_SHOP_01_11:
// // case REMOTE_SHOP_02_09:
// // case REMOTE_SHOP_03_09:
// case REMOTE_HOME_3_11:
// Serial.println(">>>>>>>>>>>>>>>>>>>> CASE 077");
// BEEP(1);
// doggy();
// BEEP(1);
// goMiddle();
// break;
// case REMOTE_HOME_3_12:
// break;
// case REMOTE_HOME_3_14:
// sameBehavior(1);
// break;
// case REMOTE_HOME_3_17:
// randomBehavior(4);
// break;
// }
}
// handleRF433();
// if (ReceivedValue == BTN_9) makeBackward();
// else if (ReceivedValue == BTN_10) makeForward();
// else if (ReceivedValue == BTN_11) makeLeft();
// else if (ReceivedValue == BTN_12) makeRight();
// else if (ReceivedValue == BTN_7) makeDancing1();
// ORANGE NAME : A
// int ServoArray[19][3] = { { 0, 0, 0 },
// { 90, 2, 1 },
// { 90, 5, 2 },
// { 90, 5, 3 },
// { 90, 2, 4 }, //3 4
// { 90, 5, 5 },
// { 90, 5, 6 },
// { 90, 5, 7 },
// { 90, 5, 8 } };
// ORANGE
// int ServoArray[19][3] = { { 0, 0, 0 },
// { 90, 2, 1 },
// { 80, 5, 2 },
// { 90, 5, 3 },
// { 70, 2, 4 }, //3 4
// { 90, 5, 5 },
// { 90, 5, 6 },
// { 90, 5, 7 },
// { 90, 5, 8 } };
// BLUE-RED ::
// #define SERVO_1 8
// #define SERVO_2 9
// #define SERVO_3 4
// #define SERVO_4 5
// #define SERVO_5 6
// #define SERVO_6 7
// #define SERVO_7 10
// #define SERVO_8 11
// RED
// int ServoArray[19][3] = { { 0, 0, 0 },
// { 90, 2, 1 },
// { 80, 5, 2 },
// { 90, 5, 3 },
// { 70, 2, 4 }, //3 4
// { 90, 5, 5 },
// { 90, 5, 6 },
// { 90, 5, 7 },
// { 90, 5, 8 },
// { 90, 5, 9 } };