Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Servo.h>
- #include <SoftwareSerial.h>
- SoftwareSerial mySerial(10, 11); // RX, TX
- #define delayforEachWord 6000
- String voice;
- #define servo1_pin 2
- #define servo2_pin 3
- #define servo3_pin 4
- #define servo4_pin 5
- #define servo5_pin 6
- Servo Servo1;
- Servo Servo2;
- Servo Servo3;
- Servo Servo4;
- Servo Servo5;
- /*
- Open~Closed~Med
- Servo1 = 130 ~ 20 55
- Servo2 = 32 ~ 143 87
- Servo3 = 50 ~ 150 100
- Servo4 = 55 ~ 156 105
- Servo5 = 53 ~ 155 104
- */
- void setup() {
- Serial.begin(9600);
- mySerial.begin(9600);
- Servo1.attach(servo1_pin);
- Servo2.attach(servo2_pin);
- Servo3.attach(servo3_pin);
- Servo4.attach(servo4_pin);
- Servo5.attach(servo5_pin);
- startPosition();
- }
- void loop() {
- //*hello#
- while (mySerial.available()) { //Check if there is an available byte to read
- delay(8); //Delay added to make thing stable
- char c = mySerial.read();//c = '#'
- if (c == '#') {
- Serial.println(voice.substring(1, voice.length()));
- break; //Exit the loop when the # is detected after the word
- }
- voice += c; //Shorthand for voice = voice + c // voice = "*hello"
- // 012345
- }
- if (voice.length() > 0) {
- if (voice == "*not sure") {
- notsure();
- delay(delayforEachWord);
- startPosition();
- }
- else if (voice == "*hello") {
- hello();
- delay(delayforEachWord);//5000 mS = 5 Sec
- startPosition();
- }
- else if (voice == "*you") {
- you();
- delay(delayforEachWord);
- startPosition();
- }
- else if (voice == "*good job") {
- goodjob();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*i love you") || (voice == "*I love you") || (voice == "*love you") || (voice == "*Love you")) {
- iloveyou();
- delay(delayforEachWord);
- startPosition();
- }
- else if (voice == "*close") {
- closee();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*number four") || (voice == "*number 4") || (voice == "*number for")) {
- numberfour();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*number three") || (voice == "*number 3")) {
- numberthree();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*number two") || (voice == "*number 2")) {
- numbertwo();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*alphabet b") || (voice == "*alphabet be")) {
- alphabetb();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*number one") || (voice == "*number 1")) {
- numberone();
- delay(delayforEachWord);
- startPosition();
- }
- else if (voice == "*alphabet x") {
- alphabetx();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*alphabet y") || (voice == "*alphabet wife") || (voice == "*alphabet why")) {
- alphabety();
- delay(delayforEachWord);
- startPosition();
- }
- else if ((voice == "*number fife") || (voice == "*number 5")) {
- numberfife();
- delay(delayforEachWord);
- startPosition();
- }
- else if (voice == "*alphabet l") {
- alphabetl();
- delay(delayforEachWord);
- startPosition();
- }
- voice = "";
- }
- }//end of Loop
- /*
- Open~Closed~Med
- Servo1 = 130 ~ 20 55
- Servo2 = 32 ~ 143 87
- Servo3 = 50 ~ 150 100
- Servo4 = 55 ~ 156 105
- Servo5 = 53 ~ 155 104
- */
- void alphabetl() {
- Servo1.write(110);//o
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(155);//o
- delay(7);
- //Serial.print("alphabetl");
- }
- void numberfife() {
- Servo1.write(130);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(50);
- delay(7);
- Servo4.write(55);
- delay(7);
- Servo5.write(53);
- delay(7);
- //Serial.print("numberfife");
- }
- void alphabety() {
- Servo1.write(100);//o
- delay(7);
- Servo2.write(143);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(53);//o
- delay(7);
- //Serial.print("alphabety");
- }
- void alphabetx() {
- Servo1.write(10);
- delay(7);
- Servo2.write(75);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(155);
- delay(7);
- //Serial.print("One (1)");// to display on Raspberry Pi
- }
- void alphabetb() {
- Servo1.write(10);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(50);
- delay(7);
- Servo4.write(55);
- delay(7);
- Servo5.write(53);
- delay(7);
- //Serial.print("two (2)");// to display on Raspberry Pi
- }
- void numberfour() {
- Servo1.write(20);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(50);
- delay(7);
- Servo4.write(55);
- delay(7);
- Servo5.write(53);
- delay(7);
- //Serial.print("two (2)");// to display on Raspberry Pi
- }
- void numberthree() {
- Servo1.write(20);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(50);
- delay(7);
- Servo4.write(55);
- delay(7);
- Servo5.write(155);
- delay(7);
- //Serial.print("two (2)");// to display on Raspberry Pi
- }
- void numbertwo() {
- Servo1.write(20);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(50);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(155);
- delay(7);
- //Serial.print("two (2)");// to display on Raspberry Pi
- }
- void numberone() {
- Servo1.write(20);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(155);
- delay(7);
- //Serial.print("One (1)");// to display on Raspberry Pi
- }
- void startPosition() {
- Servo1.write(55);
- delay(7);
- Servo2.write(87);
- delay(7);
- Servo3.write(100);
- delay(7);
- Servo4.write(105);
- delay(7);
- Servo5.write(104);
- delay(7);
- //Serial.print("Waiting...");
- }
- //#1 Hello
- void hello() {
- Servo1.write(130);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(50);
- delay(7);
- Servo4.write(55);
- delay(7);
- Servo5.write(53);
- delay(7);
- //Serial.print("Hello");
- }
- //#2 You
- void you() {
- Servo1.write(20);
- delay(7);
- Servo2.write(32);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(155);
- delay(7);
- //Serial.print("YOU");
- }
- //#3 Good Job
- void goodjob() {
- Servo1.write(130);
- delay(7);
- Servo2.write(143);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(155);
- delay(7);
- //Serial.print("Good Job");
- }
- void closee() {
- Servo1.write(20);
- delay(7);
- Servo2.write(143);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(155);
- delay(7);
- //Serial.print("Good Job");
- }
- //#4 I Love You
- void iloveyou() {
- Servo1.write(130);//o
- delay(7);
- Servo2.write(32);//o
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(53);//o
- delay(7);
- //Serial.print("I Love You");
- }
- //#5 Not Sure
- void notsure() {
- Servo1.write(130);//o
- delay(7);
- Servo2.write(143);
- delay(7);
- Servo3.write(150);
- delay(7);
- Servo4.write(156);
- delay(7);
- Servo5.write(53);//o
- delay(7);
- //Serial.print("Not Sure");
- }
Advertisement
Add Comment
Please, Sign In to add comment