Advertisement
Guest User

Untitled

a guest
Feb 20th, 2020
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.07 KB | None | 0 0
  1. #include <AFMotor.h>
  2. #include <SoftwareSerial.h>
  3.  
  4. SoftwareSerial BT(0, 1); // RX, TX
  5.  
  6. //initial motors pin
  7. AF_DCMotor motor1(1);
  8. AF_DCMotor motor2(2);
  9. AF_DCMotor motor3(3);
  10. AF_DCMotor motor4(4);
  11.  
  12. char command;
  13.  
  14. void setup()
  15. {
  16. Serial.begin(9600); //Set the baud rate to your Bluetooth module.
  17. }
  18.  
  19. void loop(){
  20. if(Serial.available() > 0){
  21. command = Serial.read();
  22. Stop(); //initialize with motors stoped
  23. //Change pin mode only if new command is different from previous.
  24. //Serial.println(command);
  25. switch(command){
  26. case 'F':
  27. forward();
  28. break;
  29. case 'B':
  30. back();
  31. break;
  32. case 'L':
  33. left();
  34. break;
  35. case 'R':
  36. right();
  37. break;
  38. case 'I':
  39. forwardRight();
  40. break;
  41. case 'J':
  42. backRight();
  43. break;
  44. case 'G':
  45. forwardLeft();
  46. break;
  47. case 'H':
  48. backLeft();
  49. break;
  50.  
  51. }
  52. }
  53. }
  54.  
  55. void forward()
  56. {
  57. motor1.setSpeed(255); //Define maximum velocity
  58. motor1.run(FORWARD); //rotate the motor clockwise
  59. motor2.setSpeed(255); //Define maximum velocity
  60. motor2.run(FORWARD); //rotate the motor clockwise
  61. motor3.setSpeed(255);//Define maximum velocity
  62. motor3.run(FORWARD); //rotate the motor clockwise
  63. motor4.setSpeed(255);//Define maximum velocity
  64. motor4.run(FORWARD); //rotate the motor clockwise
  65. }
  66.  
  67. void back()
  68. {
  69. motor1.setSpeed(255); //Define maximum velocity
  70. motor1.run(BACKWARD); //rotate the motor anti-clockwise
  71. motor2.setSpeed(255); //Define maximum velocity
  72. motor2.run(BACKWARD); //rotate the motor anti-clockwise
  73. motor3.setSpeed(255); //Define maximum velocity
  74. motor3.run(BACKWARD); //rotate the motor anti-clockwise
  75. motor4.setSpeed(255); //Define maximum velocity
  76. motor4.run(BACKWARD); //rotate the motor anti-clockwise
  77. }
  78.  
  79. void left()
  80. {
  81. motor1.setSpeed(255); //Define maximum velocity
  82. motor1.run(BACKWARD); //rotate the motor anti-clockwise
  83. motor2.setSpeed(255); //Define maximum velocity
  84. motor2.run(BACKWARD); //rotate the motor anti-clockwise
  85. motor3.setSpeed(255); //Define maximum velocity
  86. motor3.run(FORWARD); //rotate the motor clockwise
  87. motor4.setSpeed(255); //Define maximum velocity
  88. motor4.run(FORWARD); //rotate the motor clockwise
  89. }
  90.  
  91. void right()
  92. {
  93. motor1.setSpeed(255); //Define maximum velocity
  94. motor1.run(FORWARD); //rotate the motor clockwise
  95. motor2.setSpeed(255); //Define maximum velocity
  96. motor2.run(FORWARD); //rotate the motor clockwise
  97. motor3.setSpeed(255); //Define maximum velocity
  98. motor3.run(BACKWARD); //rotate the motor anti-clockwise
  99. motor4.setSpeed(255); //Define maximum velocity
  100. motor4.run(BACKWARD); //rotate the motor anti-clockwise
  101. }
  102.  
  103. void Stop()
  104. {
  105. motor1.setSpeed(0); //Define minimum velocity
  106. motor1.run(RELEASE); //stop the motor when release the button
  107. motor2.setSpeed(0); //Define minimum velocity
  108. motor2.run(RELEASE); //rotate the motor clockwise
  109. motor3.setSpeed(0); //Define minimum velocity
  110. motor3.run(RELEASE); //stop the motor when release the button
  111. motor4.setSpeed(0); //Define minimum velocity
  112. motor4.run(RELEASE); //stop the motor when release the button
  113. }
  114.  
  115. void forwardRight()
  116. {
  117. motor1.setSpeed(255);
  118. motor1.run(FORWARD);
  119. motor2.setSpeed(255);
  120. motor2.run(FORWARD);
  121. motor3.setSpeed(0);
  122. motor3.run(RELEASE);
  123. motor4.setSpeed(255);
  124. motor4.run(FORWARD);
  125. }
  126.  
  127. void backRight()
  128. {
  129. motor1.setSpeed(255);
  130. motor1.run(BACKWARD);
  131. motor2.setSpeed(255);
  132. motor2.run(BACKWARD);
  133. motor3.setSpeed(0);
  134. motor3.run(RELEASE);
  135. motor4.setSpeed(255);
  136. motor4.run(BACKWARD);
  137. }
  138. void forwardLeft()
  139. {
  140. motor1.setSpeed(255);
  141. motor1.run(FORWARD);
  142. motor2.setSpeed(0);
  143. motor2.run(RELEASE);
  144. motor3.setSpeed(255);
  145. motor3.run(FORWARD);
  146. motor4.setSpeed(255);
  147. motor4.run(FORWARD);
  148. }
  149. void backLeft()
  150. {
  151. motor1.setSpeed(255);
  152. motor1.run(BACKWARD);
  153. motor2.setSpeed(0);
  154. motor2.run(RELEASE);
  155. motor3.setSpeed(255);
  156. motor3.run(BACKWARD);
  157. motor4.setSpeed(255);
  158. motor4.run(BACKWARD);
  159. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement