safwan092

Untitled

May 31st, 2023
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.44 KB | None | 0 0
  1. #include <Servo.h>
  2. #include <SoftwareSerial.h>
  3.  
  4. SoftwareSerial mySerial(10, 11); // RX, TX
  5.  
  6. #define delayforEachWord 6000
  7. String voice;
  8.  
  9. #define servo1_pin 2
  10. #define servo2_pin 3
  11. #define servo3_pin 4
  12. #define servo4_pin 5
  13. #define servo5_pin 6
  14.  
  15. Servo Servo1;
  16. Servo Servo2;
  17. Servo Servo3;
  18. Servo Servo4;
  19. Servo Servo5;
  20.  
  21. /*
  22. Open~Closed~Med
  23. Servo1 = 130 ~ 20 55
  24. Servo2 = 32 ~ 143 87
  25. Servo3 = 50 ~ 150 100
  26. Servo4 = 55 ~ 156 105
  27. Servo5 = 53 ~ 155 104
  28.  
  29. */
  30.  
  31. void setup() {
  32. Serial.begin(9600);
  33. mySerial.begin(9600);
  34. Servo1.attach(servo1_pin);
  35. Servo2.attach(servo2_pin);
  36. Servo3.attach(servo3_pin);
  37. Servo4.attach(servo4_pin);
  38. Servo5.attach(servo5_pin);
  39. startPosition();
  40. }
  41.  
  42. void loop() {
  43. //*hello#
  44. while (mySerial.available()) { //Check if there is an available byte to read
  45. delay(8); //Delay added to make thing stable
  46. char c = mySerial.read();//c = '#'
  47. if (c == '#') {
  48. Serial.println(voice.substring(1, voice.length()));
  49. break; //Exit the loop when the # is detected after the word
  50. }
  51. voice += c; //Shorthand for voice = voice + c // voice = "*hello"
  52. // 012345
  53. }
  54. if (voice.length() > 0) {
  55. if (voice == "*not sure") {
  56. notsure();
  57.  
  58. delay(delayforEachWord);
  59. startPosition();
  60. }
  61. else if (voice == "*hello") {
  62. hello();
  63. delay(delayforEachWord);//5000 mS = 5 Sec
  64. startPosition();
  65. }
  66. else if (voice == "*you") {
  67. you();
  68. delay(delayforEachWord);
  69. startPosition();
  70. }
  71. else if (voice == "*good job") {
  72. goodjob();
  73. delay(delayforEachWord);
  74. startPosition();
  75. }
  76. else if ((voice == "*i love you") || (voice == "*I love you") || (voice == "*love you") || (voice == "*Love you")) {
  77. iloveyou();
  78. delay(delayforEachWord);
  79. startPosition();
  80. }
  81. else if (voice == "*close") {
  82. closee();
  83. delay(delayforEachWord);
  84. startPosition();
  85. }
  86.  
  87. else if ((voice == "*number four") || (voice == "*number 4") || (voice == "*number for")) {
  88. numberfour();
  89. delay(delayforEachWord);
  90. startPosition();
  91. }
  92.  
  93. else if ((voice == "*number three") || (voice == "*number 3")) {
  94. numberthree();
  95. delay(delayforEachWord);
  96. startPosition();
  97. }
  98.  
  99. else if ((voice == "*number two") || (voice == "*number 2")) {
  100. numbertwo();
  101. delay(delayforEachWord);
  102. startPosition();
  103. }
  104. else if ((voice == "*alphabet b") || (voice == "*alphabet be")) {
  105. alphabetb();
  106. delay(delayforEachWord);
  107. startPosition();
  108. }
  109. else if ((voice == "*number one") || (voice == "*number 1")) {
  110. numberone();
  111. delay(delayforEachWord);
  112. startPosition();
  113. }
  114. else if (voice == "*alphabet x") {
  115. alphabetx();
  116. delay(delayforEachWord);
  117. startPosition();
  118. }
  119. else if ((voice == "*alphabet y") || (voice == "*alphabet wife") || (voice == "*alphabet why")) {
  120. alphabety();
  121. delay(delayforEachWord);
  122. startPosition();
  123. }
  124. else if ((voice == "*number fife") || (voice == "*number 5")) {
  125. numberfife();
  126. delay(delayforEachWord);
  127. startPosition();
  128. }
  129. else if (voice == "*alphabet l") {
  130. alphabetl();
  131. delay(delayforEachWord);
  132. startPosition();
  133. }
  134.  
  135. voice = "";
  136. }
  137.  
  138. }//end of Loop
  139.  
  140. /*
  141. Open~Closed~Med
  142. Servo1 = 130 ~ 20 55
  143. Servo2 = 32 ~ 143 87
  144. Servo3 = 50 ~ 150 100
  145. Servo4 = 55 ~ 156 105
  146. Servo5 = 53 ~ 155 104
  147. */
  148.  
  149. void alphabetl() {
  150. Servo1.write(110);//o
  151. delay(7);
  152. Servo2.write(32);
  153. delay(7);
  154. Servo3.write(150);
  155. delay(7);
  156. Servo4.write(156);
  157. delay(7);
  158. Servo5.write(155);//o
  159. delay(7);
  160. //Serial.print("alphabetl");
  161. }
  162. void numberfife() {
  163. Servo1.write(130);
  164. delay(7);
  165. Servo2.write(32);
  166. delay(7);
  167. Servo3.write(50);
  168. delay(7);
  169. Servo4.write(55);
  170. delay(7);
  171. Servo5.write(53);
  172. delay(7);
  173. //Serial.print("numberfife");
  174. }
  175. void alphabety() {
  176. Servo1.write(100);//o
  177. delay(7);
  178. Servo2.write(143);
  179. delay(7);
  180. Servo3.write(150);
  181. delay(7);
  182. Servo4.write(156);
  183. delay(7);
  184. Servo5.write(53);//o
  185. delay(7);
  186. //Serial.print("alphabety");
  187. }
  188. void alphabetx() {
  189. Servo1.write(10);
  190. delay(7);
  191. Servo2.write(75);
  192. delay(7);
  193. Servo3.write(150);
  194. delay(7);
  195. Servo4.write(156);
  196. delay(7);
  197. Servo5.write(155);
  198. delay(7);
  199. //Serial.print("One (1)");// to display on Raspberry Pi
  200.  
  201. }
  202.  
  203. void alphabetb() {
  204. Servo1.write(10);
  205. delay(7);
  206. Servo2.write(32);
  207. delay(7);
  208. Servo3.write(50);
  209. delay(7);
  210. Servo4.write(55);
  211. delay(7);
  212. Servo5.write(53);
  213. delay(7);
  214. //Serial.print("two (2)");// to display on Raspberry Pi
  215.  
  216. }
  217. void numberfour() {
  218. Servo1.write(20);
  219. delay(7);
  220. Servo2.write(32);
  221. delay(7);
  222. Servo3.write(50);
  223. delay(7);
  224. Servo4.write(55);
  225. delay(7);
  226. Servo5.write(53);
  227. delay(7);
  228. //Serial.print("two (2)");// to display on Raspberry Pi
  229.  
  230. }
  231.  
  232. void numberthree() {
  233. Servo1.write(20);
  234. delay(7);
  235. Servo2.write(32);
  236. delay(7);
  237. Servo3.write(50);
  238. delay(7);
  239. Servo4.write(55);
  240. delay(7);
  241. Servo5.write(155);
  242. delay(7);
  243. //Serial.print("two (2)");// to display on Raspberry Pi
  244.  
  245. }
  246.  
  247. void numbertwo() {
  248. Servo1.write(20);
  249. delay(7);
  250. Servo2.write(32);
  251. delay(7);
  252. Servo3.write(50);
  253. delay(7);
  254. Servo4.write(156);
  255. delay(7);
  256. Servo5.write(155);
  257. delay(7);
  258. //Serial.print("two (2)");// to display on Raspberry Pi
  259.  
  260. }
  261.  
  262. void numberone() {
  263. Servo1.write(20);
  264. delay(7);
  265. Servo2.write(32);
  266. delay(7);
  267. Servo3.write(150);
  268. delay(7);
  269. Servo4.write(156);
  270. delay(7);
  271. Servo5.write(155);
  272. delay(7);
  273. //Serial.print("One (1)");// to display on Raspberry Pi
  274.  
  275. }
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282. void startPosition() {
  283. Servo1.write(55);
  284. delay(7);
  285. Servo2.write(87);
  286. delay(7);
  287. Servo3.write(100);
  288. delay(7);
  289. Servo4.write(105);
  290. delay(7);
  291. Servo5.write(104);
  292. delay(7);
  293. //Serial.print("Waiting...");
  294. }
  295.  
  296. //#1 Hello
  297. void hello() {
  298. Servo1.write(130);
  299. delay(7);
  300. Servo2.write(32);
  301. delay(7);
  302. Servo3.write(50);
  303. delay(7);
  304. Servo4.write(55);
  305. delay(7);
  306. Servo5.write(53);
  307. delay(7);
  308. //Serial.print("Hello");
  309. }
  310.  
  311. //#2 You
  312. void you() {
  313. Servo1.write(20);
  314. delay(7);
  315. Servo2.write(32);
  316. delay(7);
  317. Servo3.write(150);
  318. delay(7);
  319. Servo4.write(156);
  320. delay(7);
  321. Servo5.write(155);
  322. delay(7);
  323. //Serial.print("YOU");
  324. }
  325.  
  326. //#3 Good Job
  327. void goodjob() {
  328. Servo1.write(130);
  329. delay(7);
  330. Servo2.write(143);
  331. delay(7);
  332. Servo3.write(150);
  333. delay(7);
  334. Servo4.write(156);
  335. delay(7);
  336. Servo5.write(155);
  337. delay(7);
  338. //Serial.print("Good Job");
  339. }
  340. void closee() {
  341. Servo1.write(20);
  342. delay(7);
  343. Servo2.write(143);
  344. delay(7);
  345. Servo3.write(150);
  346. delay(7);
  347. Servo4.write(156);
  348. delay(7);
  349. Servo5.write(155);
  350. delay(7);
  351. //Serial.print("Good Job");
  352. }
  353.  
  354. //#4 I Love You
  355. void iloveyou() {
  356. Servo1.write(130);//o
  357. delay(7);
  358. Servo2.write(32);//o
  359. delay(7);
  360. Servo3.write(150);
  361. delay(7);
  362. Servo4.write(156);
  363. delay(7);
  364. Servo5.write(53);//o
  365. delay(7);
  366. //Serial.print("I Love You");
  367. }
  368.  
  369. //#5 Not Sure
  370. void notsure() {
  371. Servo1.write(130);//o
  372. delay(7);
  373. Servo2.write(143);
  374. delay(7);
  375. Servo3.write(150);
  376. delay(7);
  377. Servo4.write(156);
  378. delay(7);
  379. Servo5.write(53);//o
  380. delay(7);
  381. //Serial.print("Not Sure");
  382. }
Advertisement
Add Comment
Please, Sign In to add comment