Friday, January 5, 2024

Zai medregch zov bolson

const int TRIG_PIN = 6; // Arduino pin connected to Ultrasonic Sensor's TRIG pin

const int ECHO_PIN = 7; // Arduino pin connected to Ultrasonic Sensor's ECHO pin

const int LED_PIN  = 13; // Arduino pin connected to LED's pin

const int DISTANCE_THRESHOLD = 20; // centimeters


// variables will change:

float duration_us, distance_cm;

#include <Servo.h>


int pos = 0;


Servo servo_9;

void setup() {

  Serial.begin (9600);       // initialize serial port

  pinMode(TRIG_PIN, OUTPUT); // set arduino pin to output mode

  pinMode(ECHO_PIN, INPUT);  // set arduino pin to input mode

  pinMode(LED_PIN, OUTPUT);  // set arduino pin to output mode

   servo_9.attach(9, 500, 2500);

}


void loop() {

  // generate 10-microsecond pulse to TRIG pin

  digitalWrite(TRIG_PIN, HIGH);

  delayMicroseconds(10);

  digitalWrite(TRIG_PIN, LOW);


  // measure duration of pulse from ECHO pin

  duration_us = pulseIn(ECHO_PIN, HIGH);

  // calculate the distance

  distance_cm = 0.017 * duration_us;


  if(distance_cm < DISTANCE_THRESHOLD)

   { for (pos = 0; pos <= 110; pos += 1) {

    // tell servo to go to position in variable 'pos'

    servo_9.write(pos);

    // wait 15 ms for servo to reach the position

    delay(15); // Wait for 15 millisecond(s)

  }

delay(2000);


  for (pos = 110; pos >= 0; pos -= 1) {

    // tell servo to go to position in variable 'pos'

    servo_9.write(pos);

    // wait 15 ms for servo to reach the position

    delay(15); // Wait for 15 millisecond(s)

  }

   

   }

  


  else

    { for (pos = 0; pos <= 0; pos += 1) {

    // tell servo to go to position in variable 'pos'

    servo_9.write(pos);

    // wait 15 ms for servo to reach the position

    delay(15); // Wait for 15 millisecond(s)

  }

    }


  // print the value to Serial Monitor

  Serial.print("distance: ");

  Serial.print(distance_cm);

  Serial.println(" cm");


  delay(500);

}


No comments:

Post a Comment