| | #include <Servo.h>
|
| |
|
| | const int trigPin= 10;
|
| | const int echoPin = 11;
|
| |
|
| | long duration;
|
| | int distance;
|
| | Servo myServo;
|
| |
|
| | void setup() {
|
| |
|
| | pinMode(trigPin, OUTPUT);
|
| | pinMode(echoPin, INPUT);
|
| | Serial.begin(9600);
|
| | myServo.attach(12);
|
| | }
|
| |
|
| | void loop() {
|
| |
|
| | for(int i=15; i<=165;i++){
|
| | myServo.write(i);
|
| | delay(30);
|
| | distance = calculateDistance();
|
| |
|
| | Serial.print(i);
|
| | Serial.print(", ");
|
| | Serial.print(distance);
|
| | Serial.print(".");
|
| | }
|
| |
|
| | for(int i=165;i>15;i--){
|
| | myServo.write(i);
|
| | delay(30);
|
| | distance = calculateDistance();
|
| | Serial.print(i);
|
| | Serial.print(",");
|
| | Serial.print(distance);
|
| | Serial.print(".");
|
| | }
|
| | }
|
| |
|
| | int calculateDistance(){
|
| | digitalWrite(trigPin, LOW);
|
| | delayMicroseconds(2);
|
| | delayMicroseconds(10);
|
| | digitalWrite(trigPin, LOW);
|
| | duration = pulseIn(echoPin, HIGH);
|
| | distance = duration*0.034/2;
|
| | return distance;
|
| | }
|
| |
|