safwan092

Untitled

Oct 11th, 2022
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. int motor1pin1 = 2;
  2. int motor1pin2 = 3;
  3.  
  4. int motor2pin1 = 4;
  5. int motor2pin2 = 5;
  6.  
  7. const int trigPin = 9;
  8. const int echoPin = 10;
  9.  
  10. bool flag = 0;
  11. float duration, distance;
  12.  
  13. void setup() {
  14. // put your setup code here, to run once:
  15. pinMode(motor1pin1, OUTPUT);
  16. pinMode(motor1pin2, OUTPUT);
  17. pinMode(motor2pin1, OUTPUT);
  18. pinMode(motor2pin2, OUTPUT);
  19. pinMode(trigPin, OUTPUT);
  20. pinMode(echoPin, INPUT);
  21. Serial.begin(9600);
  22. }
  23.  
  24. void loop() {
  25. ultrasonic();
  26. if (distance < 35 && flag == 0) {
  27. flag = 1;
  28. openMotors();
  29. delay(1000);
  30. stopMotors();
  31. delay(500);
  32. }
  33. else if (distance > 35) {
  34. flag = 0;
  35. closeMotors();
  36. delay(1000);
  37. stopMotors();
  38. delay(500);
  39. }
  40. }
  41.  
  42. void openMotors() {
  43. digitalWrite(motor1pin1, HIGH);
  44. digitalWrite(motor1pin2, LOW);
  45. digitalWrite(motor2pin1, LOW);
  46. digitalWrite(motor2pin2, HIGH);
  47. }
  48.  
  49. void closeMotors() {
  50. digitalWrite(motor1pin1, LOW);
  51. digitalWrite(motor1pin2, HIGH);
  52. digitalWrite(motor2pin1, HIGH);
  53. digitalWrite(motor2pin2, LOW);
  54. }
  55.  
  56. void stopMotors() {
  57. digitalWrite(motor1pin1, LOW);
  58. digitalWrite(motor1pin2, LOW);
  59. digitalWrite(motor2pin1, LOW);
  60. digitalWrite(motor2pin2, LOW);
  61. }
  62.  
  63. void ultrasonic() {
  64. digitalWrite(trigPin, LOW);
  65. delayMicroseconds(2);
  66. digitalWrite(trigPin, HIGH);
  67. delayMicroseconds(10);
  68. digitalWrite(trigPin, LOW);
  69. duration = pulseIn(echoPin, HIGH);
  70. distance = (duration * .0343) / 2;
  71. Serial.print("Distance: ");
  72. Serial.println(distance);
  73. delay(100);
  74. }
  75.  
Advertisement
Add Comment
Please, Sign In to add comment